Update README.md

This commit is contained in:
Konstantin Nazarov 2021-05-23 10:30:22 +00:00
parent 6627e717d5
commit e24888f788
Signed by: knazarov
GPG key ID: 4CFE0A42FA409C22

View file

@ -1,10 +1,25 @@
# notes.sh: plain-text notes with IMAP synchronization
This project allows you to keep plaintext notes, and attach files to them (like images, PDFs, etc). The plaintext stays plaintext, easily greppable, and with every note in its own file.
This note taking system is built for people who care about minimalism and want their software to last for decades. It is a single shell script that organizes all your plain-text notes insize a directory in a Maildir format. It is also editor-agnostic, so you can use vim, emacs or whichever you are comfortable with. Syncing between computers is trivial: just use any tool (like isync) that can sync a Maildir to any email hosting.
What makes it special is that it uses a Maildir format to store notes. This allows you to easily sync your notes with any mail server, and have your notes accessible on the go through your email client.
Maildir was created to store e-mail on a mail server/client, but is perfectly fine to store any kind of text. It saves every entry as a separate file in a MIME format. MIME in its simplest form is a few lines of "headers" followed by a plain-text content. It also has a feature to add attachments to the same file, by encoding them in base64.
NB: This is alpha software, use with caution.
Even if you see that this repository hasn't been updated for a long time, rest assured that it still works. Its only dependencies are standard POSIX tools.
## Features
- Keep notes in a single Maildir (by default in `~/Maildir/personal/Notes`
- Sync your notes with any email server, from multiple devices
- Specify the editor to use by changing `$EDITOR` environment variable
- Notes are identified by a unique ID
- You can link between notes using their IDs and create a knowledge graph
- There is support for adding attachments like images, PDFs, and other
- Small codebase, so very easy to read through and extend to your liking
- Zero dependencies, except for POSIX tools
## Installation
Copy `notes.sh` script anywhere in your `$PATH`.
## Usage