To clear up any confusion before anyone begins to read this post, I am a Computer Science Major at University of California, San Diego. I run Linux as my primary operating system.
As I go from class to class, I often ponder upon the most efficient and effective way to take notes. Why do I ponder this? Because every time I forget something I wish that I could just use a computer function to scan all of my handwritten notes for certain keywords. But I can’t for several reasons.
- My handwritten notes are not on a computer
- Manually scanning pages of my handwritten notes into a PDF file would take decades
- No computer handwriting recognition system can recognize my handwriting.
Because of these three factors, I often ponder upon taking notes on an electronic device; however, what happens when I want to draw pictures or draw fancy symbols or doodle? I can’t if I am not working on a tablet with a decent stylus – and I’m not. I am working on my trusty laptop. Usually, this is enough to convince me that I should just stick to buying a few nice notebooks and keeping all of my notes organized in them. However, next time I need to find something fast, I regret it, as I really want to CTRL+F my notes.
In order to solve this, I looked for a lightweight note editor program for my laptop that had basic organization and markup capabilities. I found ZIM, which is super handy for building a local version of Wikipedia for all topics that interest you. I used this program for a good 20 weeks. Everything worked great and I acquired a vast amount of notes in many subjects that covered a range of topics. The problem arose; however, when I wanted to use vim keystrokes.
Writing in ZIM is great, don’t get me wrong, but sometimes you just want to be able to write faster. You don’t have time to reach over to the enter key for a newline. You don’t have time to press end to get to the end of the line. You want something faster. In order to solve this, I gave up writing in ZIM’s editor and used vim instead. Of course, I acquainted myself with ZIM’s markup syntax so I could still read my notes from ZIM, but I no longer wanted to use their proprietary environment. Instead, I stuck with my handy-dandy vim.
All was well in my note-taking world. That is, until someone asked for a copy of my notes. They were a mess if you didn’t have ZIM installed. Markup syntax everywhere that made the file almost unreadable to the untrained eye. I needed someway to share this file with my friend while retaining the beauty of its marked up design. The closest markup language I found was Markdown, the internet standard for marking up documents.
I could write all of my notes in markdown and then save them to a GitHub repo and then everyone could access my notes all the time and I could edit them and then push the changes and then everything would be great. In fact, that’s exactly what I did. I setup a repo and began writing my notes in Markdown. The only problem was that I had no way of converting my old notes from ZIM to Markdown. Thus, zimdown was born.
zimdown is my own personal solution to converting ZIM markup files into Markdown. It is not complete, but it will allow me to continue writing my notes in ZIM markup, view them locally in ZIM, and convert them into markdown to push to my GitHub repo for public viewing. Sound like a pain? It probably will be.
Why do I write notes like this? All because I don’t want to let go of my precious vim and I don’t want to use a heavy solution like Evernote. I think it is worth it. What are your thoughts?