Why did I move from sublime to emacs?
While looking for a good article for TDD, I came across somewhat deep side of the net and stumble across a video showing how awesome emacs was. The way he changed var
to this
was magical, I was mesmerized.
I’m always a fan of text-editor, as it allows me to switch language easily. I can go from
python
,R
,SQL
,bash
seamlessly.
As an avid user of sublime, I always thought that multi-cursor, package manager, file-search features from sublime was very powerful that I wouldn’t need anything else. If you want to go to a file just type partial part of the text and in realtime a list of candidate files will be suggested. If I want to edit different parts of the text simultaneously I can shift+click on each location and my changes will propagate through all the cursor. I also have 3-5 python plugin and 20+ snippets for sublime customized for my daily work.
I’m productive as hell when using sublime
Then suddenly here comes a video showing text manipulation in a very different way. What confused me the most is how did he manipulated the text without a cursor, how was even that possible. I mean how can you tell your editor to change only certain portion of the text without moving the cursor.
Another point was, I couldn’t reason out why use something else If I have the almighty powerful sublime
. So I went to google and search for “emacs vs sublime”, first result was from quora and is the exact question I had in mind.
Why use Emacs over Sublime Text?
I was a suprised, what I’m expecting is a response like sublime
is the best and emacs
is a thing of the past and is not relevant in today’s time, but it wasn’t the case. The answer was detailed and too long that I was lost in all the points he was raising.
In summary these are his main points:
-
Lisp Dream Machine - I did not know anything
lisp
for what I know its a dead but not dead language, the Dream Machine part sounds cool. -
Opening file from remote file server - I once did setup an SFTP connection in sublime, though not the best experience, I still prefer editing files in my local setup then SSH my way to the remote server to either
git pull
orrsync
to cascade changes from my local machine -
Shell Mode - When using sublime, I always have a terminal window open beside it, to run terminal commands like
SSH
,editing files
,running scripts
, etc. I always wished I can use sublime features in the terminal, likequick-search
,snippets
. -
Organizing notes - this is new to me. I never used a text editor as an organizer, I preferred the real notebook for jotting down notes.
-
Writing documentation - I use markdown for documentation, It was good enough for me.
-
Different programming language support - I have syntax highlighting from different languages, setting up is very easy, just fire up the package manager and type the language then it will be installed to
sublime
. Though for snippets, they are shared across all the languages. Eg. typingfor
then activatingtab-completion
will expand tofor e in elements:
even when editing SQL files.
And many more, etc…
From this point, my interest in emacs
grew. I feel I’m missing something big, and it is related to this unknown text editor that has this elite/hackerish feel. For the next post, I will talk about my first steps on using emacs.