Dream Nebula | [home] [contact] [blog]

2023-07-20

Using POSIX shell to manage notes

Yep, I made another one. Well, actually, this one has existed before my ssg script, but I decided to talk about it now because I made some big updates on it.

How it works

On a high level, it creates markdown files in a specific directory, uses lowdown to parse things like titles (not implemented yet) and tags, and greps for contents inside those files, which I’ll start calling “notes” from now on.

It currently has a new and a search command, which are very self-explanatory: new creates a new note by opening a new file with $EDITOR, and search searches for contents inside notes.

It’s all very simple, honestly. I added support for tagging recently because I didn’t like having huge single notes full of content; It’s more convenient to have separate notes that are properly tagged. It’s done by adding tags: tag1 tag2 at the top of the file, just like any MMD metadata entry. Doing that with folders would be a mess and wouldn’t easily allow for having multiple tags on a single note.

I hope other people can find good use in this script. The git repo for it located at:

https://gitlab.lain.la/diauglih/note-script/

(It says that it’s licensed under BSD zero clause, but it’s actually under the ISC license. Please read the LICENSE.md file)

Feel free to send issues, feedback, contact me about it, etc.