t - a note taker

Wednesday, December 25, 2019

It’s been a long time since I have been wanting to migrate from Evernote/Google Keep for taking notes. A long time.

I’ve been dealing with this problem for a while now. I started using Evernote around early 2014 and all my life was there. From simple groceries list to more complex study notes and ideas for projects, everything was there. Soon enough I found a problem, I disliked using the web interface or the app. It was “ugly” and the mobile app was too damn slow. Then I switched to Google Keep, which was “lighter”. Soon enough I started to complain, I wanted to write some more complex notes and there was no formatting. Also the lack of a Import feature obliged me to throw some notes to Google Keep and later on move them to Evernote.

Even after they redesigned their web interface, the app kept heavy and slow. Also I realized that all my life was there, on Evernote’s servers. All my thoughts and annotations was on someone else server and they were profiting from me. Something was off about this.

I decided to write all my notes on a ~/notes folder1, as a markdown text. It was simple to write and I could print them as a formatted text, render them as a nice page so I could share them with other people if needed. t helps on this process. It is a utility that wants to stay out of your way. All it does is to help you to create a new note, so that when you have an idea, it will create a file and open on the $EDITOR or default to use vi. If you wish to know what note you have written, it will list all them for you by the modified date, if you want to edit one of them, it will help to achieve that.


It aims to stay out of your way. It is built on top of the shoulder of giants, well documented and testes tools like git and markdown.

By leverage the use of git, we’ll give to you version control for free. By leverage the use of markdown, we’ll give to you a widely-used syntax to format text.


One of the things I was wishing to build using t was to learn a little more of Go. I wanted to use a lightweight language too, so I had two choices, C or Go. The worst part, was actually build a man page actually, I write the man page using troff, and what a pain.

There’s a long way yet. Still needs to improve the documentation, generate a delete action, pretty print your created notes, use a ncurses like screen. Encrypt your notes and help people create the directory to store the notes, point to a remote git server, allow user to configure the options he wants… Again, a lot of work to do, but we’ll see where it goes2.

You can browse the code on https://git.sr.ht/~porcellis/t and send patches to my email pedrolucasporcellis@gmail.com.

  1. I still use a simple paper notebook and it’s actually what I use most of the time as I carry it around everywhere on my bag. ↩︎

  2. I’m in the process to generate a package and upload to AUR. ↩︎


Why I Use Vim

Status Update, December 2019