Exploring Emacs
Emacs is like no other piece of software in existence.
In some sense it is simply a text editor. There are many editors out there, of various degrees of sophisitication. If you are just trying to edit configuration files on a Linux server, then by all means, stick with vi or vim. They are more likely to be available on any random system you happen to find yourself on, and have a nice terse set of key strokes for editing commands. If you are doing day-to-day development, use Visual Studio Code. I use it everyday at my day job. Lots of people do. Or Neovim. I've never messed with it, but lots of people seem to like it. Nano, Pico, Sublime Text, Notepad++, whatever gets the job done.
On some level, Emacs is just another member of that category. If all you are trying to do is edit a text file, then Emacs will do the job as well as any editor. Granted, with Emacs there is a learning curve for even basic editing tasks. Mark and point? Kill and yank? What is this all about?
But Emacs transcends simple editorhood. It is, in a way, its own world, with its own vocabulary and development ecosystem. Start looking into what Emacs can do, and you will find any number of rabbit holes to go down, some of them far removed from what you might think is in scope for an editor. Emacs can be anything from a calculator to a terminal emulator to a Tetris clone. Like Walt Whitman, Emacs contains multitudes. And it is this world that I will be exploring in this blog.
It should be pointed out in this inaugural post that I am an Emacs enthusiast but not an expert. I have been using it for more than a decade, and feel very comfortable within it, but there is a long way to go still in understanding and mastering what it is capable of. This blog is meant as "show and tell", to give me a reason to explore this labyrinth of an editor, to scurry down one rabbit hole after another and report on what I find.
Topics that I may address in this blog, in no particular order:
- Emacs history
- Basic usage
- Emacs Lisp programming
- Major and minor mode development
- Fun and games
- Org-mode
If any of that sounds interesting, I hope you are ready to follow along with me as I go exploring Emacs.