Some time ago, I came across the famous todo.txt by Gina Trapani and the calendar.txt by Tero Karvinen, and I really liked the ideas behind them and how function they are. Eventually, I was inspired to try to make something similar, but for notes. By using syntax and formatting from both todo.txt and calendar.txt, I came up with the following format for notes.txt.
Using plain text is ideal for several reasons:
grep to find specific notes (in this case lines) from the file,Note apps are design for specific purposes and formats. They let you do certain things that you can't do in plain text, such as formatting, mind maps, personal wikis, and so forth. The aim of notes.txt is not to replace such apps entirely, but to provide something for notes that would've gone on a sticky or for things that you simple need to write down. Every tool has an ideal situation to be used in, and notes.txt is (hopefully) used in situations where those note apps are either not suitable or just overkill for.
However, an up side about taking your notes in a single plain text file, as mentioned above, is to be able to use tools like grep to process your notes, and to easily share them without too much worry for compatbility.
The idea behind notes.txt is to be an easy to use format. The user doesn't have to worry about having fancy formatting, nor remember any complex formatting rules (although, Markdown and Org-mode aren't that complicated). But, if you're looking to do more fancier things, like formatting, tracking todos, and such, then those might be a better option.
The following are the syntax rules for notes.txt. A complete example is also given below that applies all the rules.
The date the note was made will always appear before the note content so that you can keep track of when you wrote it.
However, if the note is important, you can have a signifier, which is represented by (*), appearing before the date and a single space seperating them.
Also, dates are in ISO 8601 format; year first, month second, and days third (%Y-%m-%d).
Ex: 2026-05-07.
You can also optionally add the time in which you wrote the note.
This also follows the standard ISO 8601 format. After the date, use a T and then the hours and minutes.
You can also add seconds if you want as well.
Ex: 2026-05-7T09:00.
Keep in mind that time is in a 24-hour format; no AM or PM is used.
Dates and note content are seperated by a double spaces for a reason: for easier reading. I could’ve decided to use tabs instead, but I know for most people that might cause some issues with formatting (tab sizes being different accross systems).
After the double space is the content of your note. There isn't really any specific formatting except for tags and contexts.
A tag uses + character and is followed by a word.
Tags are used to associate notes to specific projects or topics.
They can also appear anywhere in the content of the note.
Ex: +tag.
A context uses the @ character and, just like a tag, is followed by a word and can appear anywhere in the note's content.
Ex: @context.
The following is a complete example of what a note might look like:
(*) 2026-05-07T13:00 This is a note with a +tag and a @context. +tag2 @context2
This file is used to archive certain notes you want to keep for the long term. This file is especially helpful when you need to clean up your note.txt file it gets too messy.