]> njoseph.me Git - nimcoon.git/commitdiff
More elegant handling of playing URLs directly
authorJoseph Nuthalapati <njoseph@riseup.net>
Sun, 12 Jan 2020 06:53:33 +0000 (12:23 +0530)
committerJoseph Nuthalapati <njoseph@riseup.net>
Sun, 12 Jan 2020 06:53:33 +0000 (12:23 +0530)
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
lib.nim
tests.nim

diff --git a/lib.nim b/lib.nim
index 25669a3666b3c21539a9f10d6d363951c971f276..fc00385307c1f5ac1e177a2a8a6f41a8e3410446 100644 (file)
--- a/lib.nim
+++ b/lib.nim
@@ -56,7 +56,8 @@ func sanitizeURL*(url: string): string =
   urlLongen(stripZshEscaping(url))
 
 proc directPlay*(searchQuery: string, player: string) =
-  if "watch?" in searchQuery or "videos/watch" in searchQuery or "soundcloud.com" in searchQuery:
-    play(player, args=[sanitizeURL(searchQuery)])
-  elif searchQuery.startswith("magnet:"):
-    play("peerflix", args=[searchQuery, &"--{player}"])
+  let url = sanitizeURL(searchQuery)
+  if searchQuery.startswith("magnet:"):
+    play("peerflix", args=[url, &"--{player}"])
+  else:
+    play(player, args=[url])
index f24eb1854a2125498e59d2539da810d32bb056b5..a218596fd0543225f806a5afebb599b4449a7879 100644 (file)
--- a/tests.nim
+++ b/tests.nim
@@ -5,7 +5,6 @@ import lib
 suite "Playing direct links":
 
   test "sanitize URL":
-    # give up and stop if this fails
     let expected = "https://www.youtube.com/watch?v=QOEMv0S8AcA"
     check(sanitizeURL("https://youtu.be/QOEMv0S8AcA") == expected)
     check(sanitizeURL("https://www.youtube.com/watch\\?v\\=QOEMv0S8AcA") == expected)