I’m using emacs for several years now and it is by far my favorite editor. Don’t get me wrong, I do use Visual Studio for my MFC programs and don’t mind working with it, but there is just something about emacs. I recently was thinking of why I liked emacs so much and thought I’ll list my reasons to use emacs here.
The beauty of simplicity
Nowadays, there are many powerful and popular editors (Notepad++, Sublime Text, etc.) and IDE’s (Eclipse, Visual Studio, and so on) out there. I just find them often cluttered with buttons, menus, sidebars, etc. Emacs on the other hand (I’m now referring to the command-line and not the GUI version), consists of a simple window and no more.
For example, when I’m using Visual Studio, I hardly use any of the menu buttons (for many of the menu items, I know the key combinations anyhow). Those just take away space from my editing window. Of course, you can customize the toolbars, sidebars, etc. to your liking, but to enable efficient work on VS, I still end up with sidebars. The issue is not, that it prevents me from writing 200-300 character long lines (which, seriously, is highly undesirable), it’s more that it kind of forces me to switch btw mouse and keyboard frequently (though I’m sure there are some people that know how to work under Visual Studio/Eclipse without having to use the mouse hardly at all).
I remember when I started off with emacs. It was not as easy as I thought. I seriously was only able to work for about an hour on emacs without a break. Why? My hands starting aching. Why? I just wasn’t used to having my hands all the time on the keyboard. You don’t realize how often you switch between keyboard and mouse (and therefore wasting time) till you start using emacs (at least that’s how it was for me).
It took me about two to three weeks till I was comfortable working 8 hours a day on emacs. But as soon as I was, I was hooked. I find myself quicker on emacs than on any other editor since I can leave my hands on the keyboard without having to switch to the mouse frequently.
Undoubtedly, emacs is a bit more difficult to start with than any other editor. As a beginner, you’ll need to learn at least the basic key commands (like move cursor to left/right/up/down, undo, mark text, etc.) to start using it. I admit that’s a major drawback and the main reason why it will likely remain a bit of a geek editor. But at the same token, as soon as you know the basics, you’ll likely find yourself to be way more efficient in text/code editing.
For example, I don’t have to switch to the explorer window to search for or copy a file. I simply type in the command to open dired in emacs and do whatever file/folder work I need to do. Emacs provides a huge (and still growing) amount of extensions which makes switching between applications almost dispensible. Emacs provides support for most programming languages, calenders, email program, twitter mode, and much more.
I feel like emacs can be much more customized to your liking than any other editor. You don’t just choose background/text/keyword colors and fonts(as most editors nowadays provide as well), but you can set automatic reminders (from calender, todo list, you name it), start emacs with multiple windows each containing your favorite modes/files (stack exchange, twitter, browser, …), display a clock at all times, and so much more.
This part has been completely neglected by me which I’m going to fix now. I’m finally going to start learning elisp. For way too long, I ignored the possibilities of creating my own extensions or of modifying existing ones.
If you google emacs, you’ll find a lot of beginner tutorials. One blogger, which I would definitely recommend subscribing to (or at least frequently visit her side) is Sacha Chua. She writes quite a bit about emacs (for beginners as well as for novices) and inspires you to use it daily.