]> njoseph.me Git - nimcoon.git/blobdiff - src/lib.nim
Remove debugging option committed by mistake
[nimcoon.git] / src / lib.nim
index ffa4a4a3847a8e55cd3145acf2bc9c3f3233b085..dd8dcf49f63ddb776d463310a8e94b6568505485 100644 (file)
@@ -22,7 +22,7 @@ type
   CommandLineOptions* = tuple[searchQuery: string, options: Options]
 
 # poEchoCmd can be added to options for debugging
-let processOptions = {poStdErrToStdOut, poUsePath, poEchoCmd}
+let processOptions = {poStdErrToStdOut, poUsePath}
 
 proc selectMediaPlayer*(): string =
   let availablePlayers = filterIt(supportedPlayers, execProcess("which " & it).len != 0)
@@ -85,12 +85,20 @@ func stripZshEscaping(url: string): string =
 func sanitizeURL*(url: string): string =
   urlLongen(stripZshEscaping(url))
 
-proc directPlay*(url: string, player: string) =
+proc directPlay*(url: string, player: string, musicOnly: bool) =
   if url.startswith("magnet:"):
-    discard execProcess("peerflix", args=[url, &"--{player}"], options=processOptions)
+    if musicOnly:
+      discard execShellCmd(&"peerflix '{url}' -a --{player} -- --no-video")
+    else:
+      discard execProcess("peerflix", args=[url, &"--{player}"], options=processOptions)
   else:
-    discard execProcess(player, args=[url], options=processOptions)
-
-proc directDownload*(url: string) =
-  let args = buildVideoDownloadArgs(url)
+    if musicOnly:
+      discard execShellCmd(&"{player} --no-video {url}")
+    else:
+      discard execProcess(player, args=[url], options=processOptions)
+
+proc directDownload*(url: string, musicOnly: bool) =
+  let args =
+    if musicOnly: buildMusicDownloadArgs(url)
+    else: buildVideoDownloadArgs(url)
   discard execShellCmd(&"youtube-dl {args.join(\" \")}")