Tags(tag_id, tag_name)
Files(file_id, file_address)
FileTags(file_id,tag_id)
That's for organizing files using tags. I can organize notes like this by either putting notes into many text files and tagging them, or by putting notes directly into the DB with another Notes table. I've prioritized the former, since many of my "notes" are actually photographs of whiteboards or other non-text data. Storing textual notes directly in the sqlite database works well too though.To interact with the system, I threw together a quick emacs client and a GUI client. Nothing fancy or pretty yet, but functional enough for my day-to-day use.
I alias a command ('showNotes') to open the directory in sublime and use sublime's search to search my text files or edit/add files as appropriate.
I use to just stick to plain text and code snippets but have started using markdown for newer notes.
100% agree with this. I have settled on a very lightly (headers and lists) formatted markdown file. I like how I can just click on bookmarked link from the rendered HTML file to load in the browser (vs. copy paste from text files).
I did write a script to parse this file to mark broken (non 200 response code) links but forgot about it till now. Time to fire it up again.
only thing I can think of that I'd want that grepping doesn't provide is some ability to define multiline sections that get captured in a search
To limit it, if you devote the first 3 lines to title, summary, tags
You could extract the first 3 lines of each file and grep those.
If not, if they have a prefix,
title:
summary:
tags:
You could grep those first then grep the output. grep -E ‘title:|summary:|tags:’ | grep ‘query’
A simple script can be built.