]> njoseph.me Git - nimcoon.git/blobdiff - README.md
Make all sequences immutable
[nimcoon.git] / README.md
index d5d51b6fb87dc53afd41207db10edbfe7a0d0e76..296850299b870029c5a9a36de4e935dfe3517e0d 100644 (file)
--- a/README.md
+++ b/README.md
@@ -11,12 +11,14 @@ only the standard library.
 ## Features
 
 - [x] Search for videos using keywords
-- [x] Stream videos
-- [x] Stream music
+- [x] Stream videos and music from YouTube
 - [x] Play direct links from YouTube and PeerTube
-- [x] Stream video from magnet links
+- [x] Stream video and music from magnet links and hyperlinks to torrent files
 - [x] Download music
-- [ ] Download video
+- [x] Download video
+- [x] Play playlists (MPV only)
+- [ ] Download playlists
+- [ ] Autoplay next video/audio
 - [ ] Configuration options
 
 ## Installation
@@ -24,37 +26,74 @@ only the standard library.
 Nim Coon depends on the following:
 - youtube-dl
 - mpv (recommended) or vlc
-- peerflix (for magnet links)
+- peerflix and webtorrent (for magnet links)
 
-Download the latest build from GitlabCI (amd64 GNU/Linux only).
+Install MPV or VLC using your distribution's package manager.
+
+Install YouTube-dl
+``` sh
+pip3 install --user youtube-dl
+```
 
+Install PeerFlix and WebTorrent
 ```sh
-wget https://gitlab.com/njoseph/nimcoon/-/jobs/artifacts/master/download?job=compile -O artifacts.zip
-unzip artifacts.zip
+npm install --global peerflix webtorrent
 ```
 
+### Installing using Nimble
 
-For other platforms, create a release artifact using the following command:
+NimCoon can be installed from Nimble repositories:
+
+``` sh
+nimble install nimcoon
+```
+
+You can also install from source by running the following command:
 
 ```sh
-nim c -d:ssl -d:release nimcoon.nim
+nimble install
 ```
 
-Copy the binary to a directory on your PATH such as `/usr/local/bin`
+### Installing binary
+
+Download the latest build from GitlabCI (amd64 GNU/Linux only).
+
+```sh
+wget https://gitlab.com/njoseph/nimcoon/-/jobs/artifacts/master/download?job=compile -O artifacts.zip
+unzip artifacts.zip
+```
+
+Copy the binary to somewhere on your path like /usr/local/bin
 
 ## Usage
 
 ```sh
-nimcoon emacs
+nimcoon "emacs"
 
 # If your search query has multiple words, use quotes
-nimcoon 'nim lang'
+nimcoon "nim lang"
 
-# Advanced: Play audio of the first search result
+# Play audio of the first search result
 nimcoon -m -l "counting stars"
+
+# Download audio of the first search result
+nimcoon -mld "counting stars"
+
+# Play direct video link
+nimcoon https://www.youtube.com/watch?v=QOEMv0S8AcA
+
+# Add -d to download or -m to select only audio or both
+nimcoon -md https://www.youtube.com/watch?v=hT_nvWreIhg
 ```
 
-### Commandline arguments
+After the search results are displayed, you can enter a number to play one
+result, "all" to play all the results or "q" to quit the program. 
+
+If a number is entered, after the selected search result is played, the results
+are redisplayed, so that you can play the other results without having to search
+again.
+
+### Command line arguments
 
 | **Arguments**     | **Explanation**                            |
 |-------------------|--------------------------------------------|
@@ -63,10 +102,32 @@ nimcoon -m -l "counting stars"
 | -f, --full-screen | Play video in full screen                  |
 | -d, --download    | Download video or music                    |
 
+Feel free to use these options in any combination. NimCoon will show a helpful
+error message if you pick incompatible options.
+
 ## Development
 
 One-liner for compiling and running
 
 ```sh
-nim c -d:ssl -r nimcoon.nim 'nim lang'
+nim c -d:ssl -r src/nimcoon.nim 'nim lang'
+```
+
+## Privacy
+
+To avoid storing your nimcoon searches in `zsh` history, run this command
+
+```sh
+setopt histignorespace
+```
+
+Then, add a space before typing nimcoon in the shell, like " nimcoon"
+
+```sh
+ nimcoon "this is private"
+```
+
+The same can be achieved in `bash` by setting an environment variable
+```sh
+export HISTCONTROL=ignoreboth
 ```