| bash-completion.sh | ||
| flake.lock | ||
| flake.nix | ||
| git-sync | ||
| README.md | ||
| vnote | ||
VNOTES
A wrapper script around vim, pandoc, git, fzf and ripgrep to handle my notes intuitively without much mess. All those tools need to be installed on the system to use this tool as it is intended.
This project is inspired by a video made by CalinLeafshade.
Setup
Beside the tools above, you need to install the git-sync script of simonthum. A working version is included in this repository and can be added to the PATH. git-sync is licensed as CC0-1.0.
Afterwords initialize a git repository in that you want to store the notes, add a working remote and tell git-sync to add new files when syncing. This can be achieved with the following commands:
git config --bool branch.main.sync true
git config branch.main.syncNewFiles true
In the current version, this scripts defaults to ~/Notes as the directory
for your notes, but this can be easily changed.
Documentation
The following commands are available:
vnote edit [-t] [title]Edit the note title using vim (already in insert-mode so that you can simply start typing. If the -t flag is given, the editor will insert a time stamp.vnote syncSync the notes folder using git. This uses the git-sync script of simonthumvnote show [title]Show the plain text of the note, specified with title. If no title is given, this defaults to the file modified most recently.vnote convert [-ua] [title]convert the given note to PDF using pandoc. If no title is given, this defaults to the file modified most recently. The "a" flag converts all notes, -u attempts to do this incrementally.vnote listList all notes.vnote search [term]Searches all notes for the given term using ripgrep and displays the result using fzf.vnote isearch [term]Searches all notes interactively for the given term using ripgrep and displays the result using fzf and bat.
You can also pipe some input into vnote
(e.g. echo "Hello World" | vnote -t test). This is equivalent to calling
vnote edit -t test and typing "Hello World".
Bash completion
To enable bash completion, source the file bash-completion.sh in your
bashrc. (This needs bash-completion installed).