X-Git-Url: http://njoseph.me/gitweb/nimcoon.git/blobdiff_plain/72720bec46a37176476c4bb6bc0cb83c0488cbed..9e6b85681599066dee4fca75097286e5c823875b:/lib.nim diff --git a/lib.nim b/lib.nim index 893422e..fe9d5c0 100644 --- a/lib.nim +++ b/lib.nim @@ -17,6 +17,8 @@ type SearchResult* = tuple[title: string, url: string] CommandLineOptions* = tuple[searchQuery: string, musicOnly: bool, feelingLucky: bool, fullScreen: bool] +let processOptions = {poStdErrToStdOut, poUsePath} + proc selectMediaPlayer*(): string = let availablePlayers = filterIt(supportedPlayers, execProcess("which " & it).len != 0) if len(availablePlayers) == 0: @@ -42,9 +44,10 @@ proc presentVideoOptions*(searchResults: seq[SearchResult]) = for index, (title, url) in searchResults: styledEcho $index, ". ", styleBright, fgMagenta, title, "\n", resetStyle, fgCyan, url, "\n" -proc play*(player: string, args: openArray[string]) = +proc play*(player: string, args: openArray[string], title: string) = # poEchoCmd can be added to options for debugging - discard execProcess(player, args=args, options={poStdErrToStdOut, poUsePath}) + styledEcho "\n", fgGreen, "Playing ", styleBright, fgMagenta, title + discard execProcess(player, args=args, options=processOptions) func urlLongen(url: string): string = url.replace("youtu.be/", "www.youtube.com/watch?v=") @@ -58,6 +61,6 @@ func sanitizeURL*(url: string): string = proc directPlay*(searchQuery: string, player: string) = let url = sanitizeURL(searchQuery) if searchQuery.startswith("magnet:"): - play("peerflix", args=[url, &"--{player}"]) + discard execProcess("peerflix", args=[url, &"--{player}"], options=processOptions) else: - play(player, args=[url]) + discard execProcess("peerflix", args=[url], options=processOptions)