Hey all.
After this conversation the other day, I finally got around to cleaning up, documenting and releasing my note-management application.
'note' is a very simple application written in shell-script. It's a personal, pet-project I've been developing and using at home and at work for a number of years. It's licensed under the GNU GPL3 (for code) and the GNU FDL v1.3 (for documentation).
I made it because I use the terminal a lot. I make a lot of notes and I like to keep my notes in a single directory.
One day back in 2013, when trying to pull up some notes whilst working in some remote part of my file-system, I got bored of endlessly typing:
And I thought that it would be a lot easier if I had something that would let me type something like
And it would just open an existing note, or create a new note in my notes directory. And when I couldn't remember what notes I had - I could pull up a list by just typing:
And that was the birth of note! It was hacked together at home one saturday afternoon in 2013. Eventually its usage became a part of my daily routine. At some point in 2014, I put it into a git repo on my PC where it resided for several years. And then back in the summer of 2017 - I uploaded it to a private repo on notabug.org, with the intention of cleaning it up and releasing it. So here it is!
Features:
- Quickly create, view, list, rename and delete notes
- All notes are saved to a single location (/home/user/.note/notes/)
- Bash completion - hit tab to autocomplete filenames of notes
- Text to speech - via e-speak - so you can hear your notes read aloud in a dead, robotic, brummie voice - optional
- Few dependencies - As long as you have a terminal that can run bash, a text editor and a pager you're good to go. espeak is entirely optional.
- Configurable: note can be set up to use any terminal based text-editor for creating/editing notes and any pager (e.g. more, less, w3m, lynx, cat) for viewing notes.
Changes can be made by using note's settings script (notesettings), or by manually editing note's config file (/home/user/.note/settings.cfg)
- Back-up your notes: note can back-up your notes and settings to a date-stamped .tar.gz file in your home directory.
Installation instructions:
Full installation and usage instructions are on the web-page, but I'll briefly run through it here too.
From git:
The quickest and easiest way to install (and update) is via git.
Open a terminal and use:
To update:
Without git:
You will have to download a .zip or .tar.gz from the website and install from that.
1. Download the source code
Open the web-page in a browser and click on the download icon to download the entire source-tree as a .zip, or .tar.gz.
Or you can download it in a terminal using wget:
or master.tar.gz, if you'd prefer!
2. Extract the files from the archive
e.g.
or
Or use whatever other tool you'd normally use for decompressing zip/tar.gz archives...
3. Run the installation script:
Updating
If you installed via .zip, or .tar.gz, you will need to repeat the above steps to get and install from a newer version of the archive.
Documentation:
No program would be complete without documentation.
If anything, note probably has an excessive amount of documentation. The installation script installs man pages.
There are also some .md pages (Markdown pages) distributed in the source code archive too.
After installation try:
Usage:
note - Display a list of all notes
note filename - Open a note called "filename" in the editor - (if the file does not exist it will be created when the file is saved)
note -ls - list notes by size
note -la - list notes alphabetically
note -v filename - view a note in the pager
note -d file1 file2 ... delete one or more notes
note -r oldfile newfile - rename a note
note -R filename - read file aloud via espeak
note --backup - backup all notes and settings to a file in the users home directory
note -h - display help/usage information
All notes are saved to /home/user/.note/notes/
As mentioned before, 'note' is a silly little application that I created for my own use at work and at home. It's not a revolutionary piece of software - it doesn't do anything complex or amazing. But it's been extremely handy. I use it almost every day. I've been meaning to release it for a while... well, here it finally is!
BTW: If you want to know why the TTS functionality reads the text in a broad brummie (West Midlands, UK) accent - have a read through README.md - XD
After this conversation the other day, I finally got around to cleaning up, documenting and releasing my note-management application.
'note' is a very simple application written in shell-script. It's a personal, pet-project I've been developing and using at home and at work for a number of years. It's licensed under the GNU GPL3 (for code) and the GNU FDL v1.3 (for documentation).
I made it because I use the terminal a lot. I make a lot of notes and I like to keep my notes in a single directory.
One day back in 2013, when trying to pull up some notes whilst working in some remote part of my file-system, I got bored of endlessly typing:
Code:
ls ~/notes
vim ~/notes/nameofnote
Code:
note nameofnote
Code:
note
And that was the birth of note! It was hacked together at home one saturday afternoon in 2013. Eventually its usage became a part of my daily routine. At some point in 2014, I put it into a git repo on my PC where it resided for several years. And then back in the summer of 2017 - I uploaded it to a private repo on notabug.org, with the intention of cleaning it up and releasing it. So here it is!
Features:
- Quickly create, view, list, rename and delete notes
- All notes are saved to a single location (/home/user/.note/notes/)
- Bash completion - hit tab to autocomplete filenames of notes
- Text to speech - via e-speak - so you can hear your notes read aloud in a dead, robotic, brummie voice - optional
- Few dependencies - As long as you have a terminal that can run bash, a text editor and a pager you're good to go. espeak is entirely optional.
- Configurable: note can be set up to use any terminal based text-editor for creating/editing notes and any pager (e.g. more, less, w3m, lynx, cat) for viewing notes.
Changes can be made by using note's settings script (notesettings), or by manually editing note's config file (/home/user/.note/settings.cfg)
- Back-up your notes: note can back-up your notes and settings to a date-stamped .tar.gz file in your home directory.
Installation instructions:
Full installation and usage instructions are on the web-page, but I'll briefly run through it here too.
From git:
The quickest and easiest way to install (and update) is via git.
Open a terminal and use:
Code:
git clone https://notabug.org/JasKinasis/note.git
cd note
sudo ./install.sh
To update:
Code:
cd note
git pull
sudo ./install.sh
Without git:
You will have to download a .zip or .tar.gz from the website and install from that.
1. Download the source code
Open the web-page in a browser and click on the download icon to download the entire source-tree as a .zip, or .tar.gz.
Or you can download it in a terminal using wget:
Code:
wget https://notabug.org/JasKinasis/note/archive/master.zip
2. Extract the files from the archive
e.g.
Code:
unzip master.zip
Code:
tar -xvf master.tar.gz
3. Run the installation script:
Code:
cd note
sudo ./install.sh
Updating
If you installed via .zip, or .tar.gz, you will need to repeat the above steps to get and install from a newer version of the archive.
Documentation:
No program would be complete without documentation.
If anything, note probably has an excessive amount of documentation. The installation script installs man pages.
There are also some .md pages (Markdown pages) distributed in the source code archive too.
After installation try:
Code:
man note
man notesettings
Usage:
note - Display a list of all notes
note filename - Open a note called "filename" in the editor - (if the file does not exist it will be created when the file is saved)
note -ls - list notes by size
note -la - list notes alphabetically
note -v filename - view a note in the pager
note -d file1 file2 ... delete one or more notes
note -r oldfile newfile - rename a note
note -R filename - read file aloud via espeak
note --backup - backup all notes and settings to a file in the users home directory
note -h - display help/usage information
All notes are saved to /home/user/.note/notes/
As mentioned before, 'note' is a silly little application that I created for my own use at work and at home. It's not a revolutionary piece of software - it doesn't do anything complex or amazing. But it's been extremely handy. I use it almost every day. I've been meaning to release it for a while... well, here it finally is!
BTW: If you want to know why the TTS functionality reads the text in a broad brummie (West Midlands, UK) accent - have a read through README.md - XD
Last edited: