A Minimal Note-Taking System with Vim, fzf, and Git
Source: Dev.to
The Setup
Notes live in ~/notes as plain Markdown files. That’s it—no database, no app, no subscription.
Daily Notes
note # opens ~/notes/2024-12-14.md
note ideas # opens ~/notes/ideas.md
note work/standup # opens ~/notes/work/standup.md
The script creates parent directories automatically, so organizing by project or topic is effortless.
Finding Things
note -l # list all notes, sorted by recent
note -s "keyword" # search content across all notes
note -t # find all unchecked todos
All powered by fzf with preview. I can fuzzy‑find through hundreds of notes instantly and jump to the exact line.


Syncing
note sync # sync with git
The first run initializes the repo and asks for a remote URL. After that, it pulls, commits changes with a timestamp, and pushes. Simple backup and multi‑device sync.
Why This Works
- Speed: Vim opens instantly—no Electron, no loading screens (or you can choose whatever editor you want).
- Portable: Plain text works everywhere, forever.
- Searchable:
grep+fzf. - Versioned: Git history provides free time travel.
- No vendor lock‑in: Your notes are just files.