0

I don't really know if this is a decent question or not, but I am fairly new to programming and looking for a good text editor to use. I have read this question on Unix.SE and this question on SO which have convinced me that Emacs is the way to go. But I can't really find any good documentation that is aimed at people who have no idea what "M-x-foobar" means. Once again, this is probably too subjective for SO, but I thought I would try anyway.

Community
  • 1
  • 1
Nathan2055
  • 2,283
  • 9
  • 30
  • 49
  • I bought a book called "Learning GNU Emacs: A Guide to the World`s Most Extensible, Customizable Editor" which was reasonably helpful, if books are your thing. – TooTone Apr 21 '13 at 21:24
  • @Noldorin, despite the fact emacs is main text editor, I've got some sympathy for your view, and I think if the OP is new to programming he ought to be careful about focussing on learning emacs. For me, emacs works well when you have a command line / scripting language, so I find it v helpful, e.g., for SQL, for R (via ESS), and for bash (and if you're on *nix it's good to know one editor which works well in ssh). However for programming proper languages Java C++ Python etc, in my view an IDE is far superior, so Eclipse, or Visual Studio or some language specific application. Just my tuppence. – TooTone Apr 21 '13 at 21:28
  • @TooTone: Yeah, I can understand that point of view. For me, using vim (which is admittedly quite different to emacs, but of the same ilk) was just a no-go in programming workflow. I tried it for a couple of months but even when I was fairly quick at the commands, I found it involved too much thinking to edit. Plus I sorely missed all those IDE features, as you suggest. – Noldorin Apr 21 '13 at 22:53
  • 1
    I'd suggest you start with the menu entry "Help => Emacs Tutorial". – Stefan Apr 22 '13 at 16:19

2 Answers2

1

According to my experience, Emacs is a huge topic to cover. I'd suggest you to start with its tutorial by selecting the first entry in the "Help" menu (or pressing Ctrl+h, then pressing t, which is denoted C-h t in Emacs style).

Then just follow your needs by reading specialized articles or documentation. A bunch of useful information you may find in an Emacs Info, which can be called by C-h i (Ctrl+h, then i).

Knowing at least a bit of Emacs Lisp would be very useful as it's used to configure the editor and sometimes helps understanding how some things work. For that you may find useful An Introduction to Programming in Emacs Lisp (but you may find it in Emacs Info as well).

Aleksei Zyrianov
  • 2,294
  • 1
  • 24
  • 32
1

If you're just starting programming, you've probably got enough on your plate without dealing with a crazy moon editor! gedit (Linux), Notepad++ (Win) or TextWrangler (OS X) are all free and may be more familiar to you.

Still, Emacs is great if you're game. I learned from a couple of resources:

These got me up-and-running quickly.

After you've learned the very basics, you'll want customize Emacs to make it more confortable. Download someone's Emacs configuration off GitHub and tweak that. The Emacs Prelude is very good.

From then on, it's all about building muscle-memory:

  • Try to use Emacs for all the random mundane typing and editing you normally do

  • Use the Emacs movement keys wherever you can, such as in your terminal program

  • If you use OS X, most of the emacs movement keys work in text fields. Use those instead of the arrow keys to move around.

Emacs has a reputation for being hard on your hands - the key combos were designed for older keyboards from a more civilized age. If your pinky starts to hurt while you're learning, it's a good idea to remap your Caps-Lock key as Ctrl.

Chris Barrett
  • 3,383
  • 17
  • 21