+for kind, key, value in getopt():
+ case kind
+ of cmdArgument:
+ searchQuery = key
+ of cmdShortOption, cmdLongOption:
+ case key
+ of "m", "music": musicOnly = true
+ of "l", "lucky": feelingLucky = true
+ of cmdEnd:
+ discard
+
+if "watch?" in searchQuery or "videos/watch" in searchQuery :
+ discard execProcess(&"{player} {searchQuery}")
+ quit(0)
+elif searchQuery.startswith("magnet:"):
+ discard execProcess(&"peerflix \"{searchQuery}\" --{player}")
+ quit(0)
+
+let searchResults = extractTitlesAndUrls(getYoutubePage(searchQuery))
+
+let number =
+ if feelingLucky: 0
+ else:
+ presentVideoOptions(searchResults)
+ stdout.styledWrite(fgYellow, "Choose video number: ")
+ parseInt(readLine(stdin))