I believe I first used emacs back in my community college days. I had access to a Linux machine for a few classes. We often worked in the terminal and I needed a good text editor. I have tried vi & vim several times, but I could never get used to the idea of several modes. I would often switch to a different mode unexpectedly and things would get really bad. I never had that problem with emacs, so I would usually use emacs.

Eventually, I tried diving in to emacs to see what I could get it to do. I knew it had a reputation for extensions and while I wasn't planning on writing my own I wanted to take advantage of anything that was out there. While reading some docs I found out how to split the window and view two files at the same time. That was when I decided to never even try vim again and to stay away from nano/pico.

My decision was justified once I learned about org-mode.

At work I have been using Org-mode to keep track of my time. Our bug tracker, Redmine, lets you log time for how long a bug takes. The boss has asked us to submit a time with bugs that we close. Org-mode makes it wicked easy to add task, clock in, and generate a report when needed. I've got a giant file that I've been keeping since the beginning of the year, 5 months ago. I should look into how to split it into different files.

Time to go all in

The other day I saw the "Emacs Rocks" video that showed multiple-cursors mode. I knew then that it was time to go all-in with emacs. Sublime text has been my main code editor since at least 2011. I have become very productive in it because of its built-in multi cursor support. I had never used a system like that before and it was easy to see how I could use it to speed up dealing with code in patterns.

I haven't yet taken the time to setup multiple-cursors mode, but I am investing more in emacs. I have it setup on my personal computers now. I setup the marmalade repo to easily install plug-ins. I have chosen a theme to run with (zenburn) and will try to move myself into a emacs way of life.

Emacs Lisp

I have always wanted to learn Lisp or Scheme. In my Programming Language Concepts class in University we were given an intro to Scheme. I was pretty blown away by how different the language was to everything else I had used at that point. I was a pretty good programmer, but I had trouble wrapping my mind around Scheme. I have wanted to spend more time with it ever since, and I've never really been able to take it on.

Emacs is famous for having its own Lisp built in: elisp. Sadly, the language is really old and it has not evolved along with other languages. I understand the variable scope system is weird in elisp and it has bad support for namespaces. However, I still want to learn it. It will be profitable for me to learn to extend emacs, and I fill finally get to learn a lisp! I'm rather excited.

There is a "Intro to elisp" manual that GNU published a few years ago that they give away for free. I am slowly working through it. I keep a "stuff" repo on GitHub that I use for experiments. My plan now is that all my experiments will be Emacs oriented.


Comments

comments powered by Disqus