Note taking script

Note taking bash script.

needs: fzf, ripgrep (rg)

note --help

Usage:

  note n "title"          β†’ new note with explicit title
  note "text"             β†’ create/reopen note
  note l                  β†’ list
  note o                  β†’ open (fzf)
  note s                  β†’ search (rg|fzf)
  note c                  β†’ cat latest
  note rm                 β†’ move to .trash
  note pull               β†’ git pull
  note push               β†’ git push
  note --longhelp | less  β†’ full help
  note h                  β†’ this help

Storage: /home/b/notes

Multiple parameters to run same command, for example

note
# and
note open

are the same (neat little dual pane tui is presented), and if you add a parameter (file name approximation)

note open gemma

it will open first filename that has some gemma in there. Search is similar.

note s

will open neat little tui as well, piping ripgrep output to fzf and behaving like file selector.

note c

should cat last changed note.

note list

should list files/notes to stdout, not sure if this is needed (open does similar job).

Text editor, by default $EDITOR variable is used, if undefined it will try to load hx (helix) or vim or nano. Configure to your needs. By default notes will be stored in $HOME/notes, configure as needed.

Not needing the specific title is the idea as well, so

note nice weather today

shall make a note with filename β€˜2026-04-27-nice-weather-today.md’.

about fzf scrolling ↓

Up and down will select files, shift+up and shift+down will scroll the text pane on the right (mice should also work).

Scrot (β€˜open note’ fzf tui): note image

Note syncing ↓

of $HOME/notes is up to the user. I use git.

noteurls (β€˜plugin’) ↓

Separated script with similar tui that will extract urls from notes and open one in browser.