I'm using Emacs for about 7 or 8 years now, maybe a bit less than that, maybe more. I tried to quit several times for other editors, different workflows and everytime I returned with more enthusiasm.
It's hard to tell for those who use their editors with mouse clicks
on pretty icons but once you catch this virus called doing everything
from the keyboard, it becomes attached to your digital (from digitus,
finger) psyche that is impossible to leave behind. I purchased an
Android keyboard for my phablet just to
ssh to my home and write with
Today I stumbled upon several posts regarding favorite Emacs packages and wanted to list mine.
I'm not writing this in
org-mode, because I observed that I can
detail, micro-revise lose focus while writing because of the
functionality in it. Instead I'm using Zsh's
vared to enter lines to
an org-file when I write first drafts. But editing, keeping, following,
creating plots, literate programming, doing everything that can be done
with text is possible in
F11 bound to
F9 F9 stores links wherever I like and I can use
C-c C-l in org
buffers to paste them.
When I want to search google but don't like the idea to run a huge browser session just to lookup an answer in SO, then I use this.
It shows the versions created by undo/redo of a buffer in a tree format. Emacs's default undo may be cumbersome at times but this package is terrific.
To count words in a file. When I forget this package, I use
C-x h M-| wc as a substitute.
Once upon a time, this mode made me to migrate from LyX to LaTeX itself.
Emacs Speaks Statistics is an R frontend. I'm not using it daily but it's much better than R command line client.
Makes buffer names unique. If you have files with identical names, this
is much better than having names like
List of recent files.
M-x selects commands by their prefix, with
smex you can filter them by any substring. This makes a difference for
those with poor memory.
I use mercurial more than git and
ahg-mode seems like a good
alternative to standard
It considers directories under version control as projects and defines
recentf for them. It's
very simple and non intrusive way to have project management.
For Python programming,
elpy provides completion and much more
ack mode, hybrid version of the other two.
A gnu global mode for C++ code tagging.