Skip to content

Latest commit

 

History

History
72 lines (56 loc) · 2.91 KB

File metadata and controls

72 lines (56 loc) · 2.91 KB

Stupid shell script to manage markdown notes from cli.

Why

  • I think nb is too complex just for taking notes.
  • I don’t like the way notes handles searching.

Dependencies

  • git – to keep notes tracked
  • ripgrep – to search through note contents
  • exa – to list notes and folders
  • bat – to view notes with syntax highlighting
  • A terminal text editor is recommended

How to use

Notes are stored in $NOTEDIR, which defaults to ~/notes.
Run note name to create and/or open ~/notes/name.md, or note notebook/name to create and/or open ~/notes/notebook/name.md. If you use vim/nvim as your $EDITOR, opening directories is supported as well by passing a path like note notebook/.

“Tags” are just words starting with the # symbol, with no space (for example #linux).

$ note --help
Usage: note [command|option] NOTE

If no command is provided, the program will open the NOTE path in nvim.
The default NOTE path is: /home/nithe/notes.

NOTE should refer to a subdirectory or a filename (without extension) within /home/nithe/notes.

Options:
  -r, --archived 	Run command on /home/nithe/notes/.archived/ path
  -h, --help            Show this help message and exit

Commands:
  ls, list 		List notes in the NOTE path
  rm, remove		Delete a note from the NOTE path
  ar, archive		Archive a note from the NOTE path
  s, status 		Show the Git status of the NOTE path
  v, view		View the NOTE path using `bat`
  f, find		Search for QUERY in notes content
  ft, find-tag		Search for notes by tags (separator-separated).
                        The separator can be:
                        - "or": regex OR match
                        - "and": inserts `.*` between tags (experimental)
                        - <space>: equivalent to OR

Intallation

Install script

sudo curl https://raw.githubusercontent.com/Nithe14/note/refs/heads/master/note > /usr/local/bin/note; sudo chmod +x /usr/local/bin/note

Install completions

Bash

sudo curl https://raw.githubusercontent.com/Nithe14/note/refs/heads/master/completions/note_completions.sh > /usr/share/bash-completion/completions/note

Fish

curl https://raw.githubusercontent.com/Nithe14/note/refs/heads/master/completions/note_completions.fish > ~/.config/fish/completions/note.fish

Zsh

Refer to your distro zsh documentation for installation details.
The completion script is available here: note_completions.zsh.

Completions

The autocompletion does not suggest options/commands cause there are too few to care about. Instead, it suggests files and directories from your $NOTEDIR.
Create your first note, and you’ll see how it works in practice.