is emacs worth it?
October 3, 2005 4:35 PM   Subscribe

Is emacs worth learning?

I do a whole lot of text editing, and soon I'm about to have to do a whole lot more, this time in the form of academic essays. Just now I'm using TextWrangler (a Mac app similar to BBEdit) for Perl, PHP, HTML and other code stuff, and QuarkXpress for writing where the presentation matters.

However, I know that the frills of academia -- footnotes, bibliographies and the like -- are going to be tedious to do by hand, and can't be bothered with the hassle of repeated typesetting, so I'm planning to use LaTeX for this (I've used it before).

I hear emacs has "modes" for working with all these disparate types of text, and does folding to boot. This sounds quite groovy. But, given the many advances in GUI editors since ye days of serial terminals, is it still worth the effort of learning emacs (and is that as hard as it is made out?) If it has any bearing, I should point out that I don't know any LISP.
posted by bonaldi to Computers & Internet (47 answers total) 2 users marked this as a favorite

It rocks.
posted by bshort at 4:42 PM on October 3, 2005

Oh, and you don't need to know lisp to use emacs.
posted by bshort at 4:42 PM on October 3, 2005

You don't really need to know LISP to use emacs, unless you plan to start tweaking the config files by hand, and even then, it's generally fairly basic.

As for using emacs, most people who have vocal opinions on the matter either swear by it, or can't stand it. In the emacs vs. vi war, I would come down on the side of emacs, but I stopped using it a while ago for writing code because I got fed up with it applying its own (inconsistent) indentation on my code. I've never used it with TeX or LaTeX, though, so I can't say how well it works for that sort of thing.

If I were you, I wouldn't put too much time/effort into learning it. There a few basic commands that you ought to know (like how to save, how to quit, maybe how to delete whole lines) and for the most part, things beyond that are probably unnecessary most of the time. This has been my experience, but I can't guarantee it'll be yours.

Ultimately, I would say that unless you plan on doing a significant amount of editing from a terminal (via SSH, for example), you're probably better off just going with a GUI editor. But then again, I use nano for nearly all my text-editing, so make of that what you will.
posted by Godbert at 4:44 PM on October 3, 2005

I use emacs as it's a fantastic editor for all sorts of languages, LaTeX included, and it's very cross platform.

That said, I'm currently using iTeXMac to do my LaTeX editing on my Powerbook.

It won't take you an age to learn to use emacs well enough - a GUI variant of it is just about as easy to use as any GUI editor, but don't feel you have to use it just because everyone else is. Shop around a bit, try a few editors out and settle on your final choice a bit further down the road.
posted by edd at 4:51 PM on October 3, 2005

Urk. Look, someone will chime in with how, if you only invest a year or two of your life learning it, you can have emacs make a sausage pizza for you using -1 keystrokes.

I think it's worth learning a tiny bit of vi, because vi is installed everywhere and at some point you'll need a text editor and only have a shell. You need to know the following vi commands: a/i, x, dd, ZZ, escape. That's it.

Other than that tiny mandatory bit of vi, learn an editor well and stick with it. Whichever one you like. The time you spend learning umpteen new editors is time you could be spending eating chocolate ice cream or kissing girls.
posted by jellicle at 4:51 PM on October 3, 2005 [1 favorite]

Emacs, indeed, rocks. Everything else I've tried has frustrated me by comparison (that said, there are a host of recent things I haven't tried, like Eclipse.)

The default bindings can exhaust your pinkies; here's a quick tip on changing some. You will end up writing some Lisp for customizations in your .emacs, but everything you need for that you can cut and paste -- you don't need to actually learn Lisp.
posted by Zed_Lopez at 5:02 PM on October 3, 2005

vi is the most horrible thing ever.

IMO. and who needs emacs when you have PICO (which is the best thing since MS-DOS edit)
posted by delmoi at 5:08 PM on October 3, 2005

as far as lisp goes, in the sense that it the same as scheme, its kind of a cool programming language.
posted by delmoi at 5:09 PM on October 3, 2005

Yes, Emacs is definitely worth learning.

Read the EmacsWiki. Use AUC TeX to edit TeX/LaTeX files.

You don't need to know Emacs Lisp to use Emacs. Many options can be changed with M-x customize. But if you end up liking Emacs, you'll probably want to learn at least a little Emacs Lisp at some point.

(delmoi, i don't understand your comment. scheme is a lisp dialect. emacs lisp is not very similar to scheme, compared to more modern lisps; it doesn't even have lexical scoping.)
posted by bpt at 5:17 PM on October 3, 2005

Response by poster: Thanks for the answers so far. Follow-ups: Vi is certainly not an option for me -- I don't see any value in it beyond an editor I can use without the mouse. I'm interested in emacs as a one-stop place I can do all my text editing, because I hear it has many groovy features, and if I'm going to learn one editor it might as well be one I can turn to any task.

Everyone who says "it rocks", can I ask what your favourite thing about it is?
posted by bonaldi at 5:31 PM on October 3, 2005

For LaTeX, emacs is nearly optimal. (The only thing that WinEdt has that I'd like to have in emacs is the ability to search-replace across multiple files.) In particular, when using MikTeX with emacs you can set your "typeset" command (usually C-c C-f, unless you're using AucTeX) to use "texify", which encapsulates in one command all those tex-runs necessary to resolve references, build indices, etc. Getting fast with C-c C-f and Alt-tab makes LaTeX a true joy.

Learning emacs is essentially trivial -- there are mouseclicks for nearly everything. If you want to be fast, you'll eventually pick up the keyboard shortcuts for the 8-10 things you do most often, and that'll make you plenty speedy.
posted by gleuschk at 5:41 PM on October 3, 2005

I would say that emacs (I use yaced) + AUCTex + RefTeX is worth learning (the yaced distribution has both of those packages). Almost all of the functions are available from the pull-down menus.

Some of the advantages of emacs:
* Highly scriptable.
* Good interaction with unix text filters. So for example, I have a python script that turns transcripts into latex tables.
* Plug-ins for subversion and CVS. If you don't already use a version control system for your academic writing, I really can't suggest it enough.

On the other hand, you might do better with a more Macintosh look and feel editor and a BibTeX manager like BibDesk or JabRef (java). What works great for one person will be poison to another person.

Everyone who says "it rocks", can I ask what your favourite thing about it is.

RefTeX. Makes inserting bibligraphic references a breeze.
posted by KirkJobSluder at 5:43 PM on October 3, 2005

No. Using emacs is a battle that isn't worth fighting. Use VIM.
posted by chunking express at 6:14 PM on October 3, 2005

Lemme note to start that this is selection bias in action, since it's the people who love it who spend their time learning it, and they're the ones answering.

I never got very far with emacs before I bounced off it. I don't need an editor that will compose calendars for the year 12437, play tetris, or whatever new useless fripperies people have jammed into it recently. If you have an editor you like already, stick with it and getcher damn work done. At most, fiddle with emacs as a time-waster for when you can't stand to be doing real work.

If you have a mac and want a new package, why not just use TeXshop, a full-on LaTeX IDE? I can't speak to it since I'm in XP-land, but it seems that everyone who so much as glances at it adores it.
posted by ROU_Xenophobe at 6:29 PM on October 3, 2005

I agree. Emacs always seemed a little overkill to me (but I'm a vim user...). Also, I use Texshop every day, and adore it. Look into it if you're on a Mac.
posted by swift at 6:46 PM on October 3, 2005

jesus - people still use emacs? in 2005? and vi too??

These are languages from waaay back. As in 20 - 25 years. Forgive the spray here, but with all the advances in computers, in UIs, in editing languages - how have these dinosaurs been allowed to exist? to evolve??

why use emacs in a wisiwyg world?

is this an academic standard, to hand in theses and submit academic papers to journals? is that it?

I remember the massive keyboards with Crtl-Alt-Meta-sequences and worse... Those are memories from the early 80s that I'd rather forget (along with Common Lisp, LaTex and all that other stuff I no longer use)

No offense intended, honest. I'm just really curious about why this is being used.
posted by seawallrunner at 7:12 PM on October 3, 2005

bonaldi, since you program, I strongly recommend you check out Marco Baringer's SLIME video (.mov and .torrent links at the end of that post). SLIME is the "Superior Lisp Interaction Mode for Emacs"; it is a wonderful tool for developing Common Lisp programs with Emacs. Marco's video is a great demonstration of how Emacs's extreme hackability allow some pretty amazing features that are just not feasible in less powerful editors.
posted by bpt at 7:23 PM on October 3, 2005

seawallrunner: heh, "editor" != "language"
posted by RustyBrooks at 7:42 PM on October 3, 2005

vim for me. I use it every day. It's simple and easy to use. (Whereas, with emacs, I usually felt like I need some extra fingers or another hand.)
posted by SPrintF at 7:51 PM on October 3, 2005

sealrunner: For an answer, I suggest reading "In The Beginning, There Was The Command Line," by Neal Stephenson. vi 4 lyfe, bitches. stop deletin' mah shit
posted by keswick at 8:12 PM on October 3, 2005

Emacs runs very slowly on my fairly new windows computer. VI is speedy.
posted by malp at 8:13 PM on October 3, 2005

I think it's worth learning a tiny bit of vi, because vi is installed everywhere and at some point you'll need a text editor and only have a shell.

Probably good advice overall, but just for the record 'emacs -nw' will launch emacs without its X interface. Been meaning to learn vi for awhile.

Some things I like about using emacs: 1. It's lightweight (no, not compared to vi, but yes compared to WYSIWYG apps and IDEs) 2. Syntax coloring helps me code. 3. I like hitting tab and have it indent to an appropriate level. 4. For some reason the white background and large, old school fixed-width font that I use just helps me code better.

As has been mentioned, there are certainly oodles more emacs time-saving tricks I could be using if wanted to spend the time to learn them. Haven't bothered with the lisp other than a nightmarish customization session a little bit ago.

Notes on LaTex: 1. Best equation editing ever. 2. Pretty documents without wasting (much) time screwing with formatting. 3. References can be handled nicely. 4. I can't use it because I collaborate with Windows people and thus need to do my papers in Word so we can all edit them. For references in Word we use EndNote, which actually works quite well and interfaces with our most important database, PubMed. (Note there's a TeXMed site that will convert PubMed entries into BibTeX format, but this still isn't as slick as EndNote's interface IMO, but then again I'm not all that practiced in the BibTeX way of doing things.) The other important thing for us that Word has is the "Track Changes" function, which underlines and highlights each person's changes in a different color. This helps you see what's changed very quickly as you're passing a document back and forth.
posted by epugachev at 8:39 PM on October 3, 2005

Ahhhh, a vi vs emacs war and this isn't even Usenet.

OK, here's why knowing vi is a good skill in a world of WYSIWYG and emacs even: it always works.

If you deal with unix/linux machines at all, you find yourself having to administer them via the network, meaning a simple command prompt. And maybe that's a command prompt via telnet or ssh session, and maybe that session doesn't pass the fancy higher level key codes.

Like Alt-this and functionkey-that. And that's the critical part: VI always works. Even if you've got a crappy ass terminal session where not even the goddamn backspace key works, not to mention the freaking arrow keys. VI has simple letter keybindings (and the weird-at-first modes) that allow you to do every thing with just the basic keys on the keyboard plus a few control characters. Note: control characters are part of the basic 128 ASCII characters, unlike Alt keys and function keys.

Learn it, use it, move on. By the way, I've been using VI for over a decade and I have no idea what ZZ does ... personally, aftet the basics of A, i, x, dd, yy, p, / and :q/:wq, the next thing that really got my VI motor running was the use of r and R.

Now, I think the original post was asking about heavy use of the text editor, and frankly if I'm editing text all day long then, sure, it'd be nice to have something WYSIWYG like Notepad or even emacs rather than vi. But vi is a critical lowest common denominator that you can always count on working, no matter how old the machine or how hosed up the terminal session.

Last thing: always try "vim" first -- it's nice if it's available.
posted by intermod at 8:49 PM on October 3, 2005

Also, regarding modes, a huge number of them are included with your default emacs installation and load automatically based on the extension of the file you open. The only one I ever have to download and install (thought it doesn't sound like you'll be needing it) is the matlab mode.
posted by epugachev at 8:50 PM on October 3, 2005

I've heard emac's support for LaTeX is good, so it would probably be worth learning for your purposes. I think I'm one of the few people who is agnostic on the whole vi/emacs thing, they've both got good things about them. (But I'm a vi guy at heart.)

I think the argument about vi being installed everywhere is a little anachronistic. In 1998, yeah. These days, I imagine that nano, pico, and their ilk are much more common as default editors. That's certainly true on the free *nix varieties. Besides, emacs can run anywhere that vi can run (eg: in a console), as long as the machine has the eponymous eight megs of swap space.

At any rate, using vi to edit LaTeX is probably not going to be any better than a using a GUI editor of choice. I'd recommend trying out one of the GUI versions of XEmacs and seeing if you like it. Consider that LaTeX and emacs both have their origins at around the same time, and that both are starting to leave their era of peak usage (along with vi, though I personally I use it almost daily). Seems like a good fit.
posted by whir at 9:22 PM on October 3, 2005

I found emacs easy yet powerful. Didn't do anything with LaTeX though.
posted by lorrer at 9:38 PM on October 3, 2005

These are languages from waaay back. As in 20 - 25 years.
How is it that people could be so foolish? It can't possibly be that these tools were well designed for a purpose that still exists and improved over that time!

Seriously. If you learn either vi or emacs, it will pay off. vi is ubitquous but emacs is more powerful and customizable and has huge libraries for all kinds of text.

But the thing is, these editors were designed to be used only using the keyboard. You do not have to take your hands off the keyboard to do anything. This is a huge efficency boost
posted by Capn at 9:39 PM on October 3, 2005

I have sat down numerous times to try to learn both emacs and vi. I always think the same thing, "Okay this time I will really learn it." And every time I try this, I have to quit in disgust of the HORRIBLY UNINTUITIVE interface that both of these programs have.

With vi it's the stupid shit about switching between "I want to move around" mode and "I want to type stuff now" modes, a distinction that only made sense when cursor keys couldn't be assumed to be present. And things like "dd" to delete a line... wow, that's so natural. NOT. Emacs is just as bad or worse, with control-alt-underscore-F15 just to mark a couple of lines for deletion and then meta-shift-scroll_lock-f20 to cut. Hey, I know, how about instead I just hold down shift or click with the mouse to select text? You know, like every other sensible GUI program made in the last 15 years that is not carrying around baggage from the days of electromechanical teletype machines. I should not need a wall-sized poster of commands in order to figure out how to do things. Notepad may suck but at least it gets this much right.

When I'm on unix I use nano. I find it very rare that I'm on a system that lacks nano, and if I am then I install it. When I'm on windows I use UltraEdit, which is a powerful program but still maintains the standard windows ways of editing text.
posted by Rhomboid at 9:57 PM on October 3, 2005

seawallrunner: why use emacs in a wisiwyg world?

Oh, don't get me started on the perils of Word-style wisiwyg. Nothing like trying to figure out whether that bit of text is 10pt italic because someone created a new style for it, or becouse someone just slapped cosmetic formatting on it.

I've been working an MS Word contract for the last 10 weeks, creates far more problems than it solves.

No offense intended, honest. I'm just really curious about why this is being used.

For the same reason there are a lot of Visual Basic hooks in MS Word. So far, I've not found an editor that has the same level of scriptability as emacs or vim. ROU_xenophobe rather misses the point. The point isn't the toys, the point is having the tools to create whatever IDE you need to create.

epugachev: The other important thing for us that Word has is the "Track Changes" function, which underlines and highlights each person's changes in a different color. This helps you see what's changed very quickly as you're passing a document back and forth.

Oh one of the things I honestly dislike about Word is their lack of real version control. Crufty, bug-loaded (sorting items brings back previously deleted paragraphs), slow even on the fastest computers, confusing (coloration covers up underlying text color.)

re: emacs vs. vim: I've loved both. I think that once you learn to think vi (it is a different way of thinking), the process of navigating through a document is amazing. The problem is that it's not especially natural.
posted by KirkJobSluder at 10:23 PM on October 3, 2005

I don't know emacs, so I'll resist the urge to bash it. But you know all those news articles describing how IT has helped contributed to large increases in worker productivity over the past 15 years? That's because usability is real. There really are lots of tiny, invisible inefficiencies in the ways we use computers. Powerful, customizable editors like vim and emacs really do increase your productivity, if you're willing to use them correctly.
posted by gsteff at 10:41 PM on October 3, 2005

Emacs is absolutely worth learning, if you are doing a lot of text editing. It has an incredibly good TeX mode, so may be worth it for that alone. It is not worth it if you simply are editing text now and again. Use TextWrangler or some light/easy app for that.

What do I like most about Emacs? I'll limit myself to four things:

1 ) Incredibly powerful Cut-and-paste. Unlike what Rhomboid said, you can in fact select via holding down the shift key, or via a mouse. I do it every day. I also do it via the emacs-original-way, ctrl-space to mark, move to where you want to end the mark, and copy. That one is nice, since you don't wear out your pinky holding down the damn shift key. Especially if you are selecting multiple pages, this really is nicer.

Continuing on the cut-and-paste issue. I love rectangular cut and paste. You can cut off the front of a bunch of lines, and save them to the kill-ring or to a buffer. You can later insert the rectangle, inserting or overwriting as you wish. This is extremely useful and powerful for me as a programmer.

Clips can also be saved to buffers for later convenient insertion saving. Also, when you paste, you can cycle through everything you recently copied. No more "DAMN, I lost the thing I needed when I copied that last line. DAMN"

2) NXML-Mode. The best xml editor I've ever used. With full syntax validation and tag/attribute completion. Sweet.

3) Powerful, expressive, editable, easy-to-record-and-playback macros. For example, the other day I whipped one out which copied a line, incremented the first number in the line, and wrapped the whole thing in an HTML tag. 1000 times. In about 30 seconds, including writing the macro.

4) Emacs is extremely similar cross-platform. I use an identical setup on my Linux, Windows and Mac systems. Sweet!
posted by Invoke at 11:12 PM on October 3, 2005

I use vi, but my professors insist on telling everyone to use emacs for everything. Prepare to be fustrated.

vi isn't immediately intuitive, but emacs is even less so.

emacs has possibly the greatest learning curve of any program you could bother to learn to use, and the greatest retention rate of those that fully learn it. It is almost guaranteed that if you become an emacs wizard, ten years from now you'll be using emacs for everything -- reading your mail and rss feeds, ordering pizzas, organizing your music collection, etc.

If you fully dive in to emacs, you'll never leave it.
posted by blasdelf at 12:08 AM on October 4, 2005

If you're on the commandline and modifying config files, nano is a godsend. The left arrow makes the cursor move left. The delete key deletes the letter on the cursor. You can type without switching to a different 'mode.'

For basic commandline stuff, nothing trumps the user-friendliness of nano. For anything more complex - use a real editor on a desktop machine.
posted by Ryvar at 1:33 AM on October 4, 2005

ROU_xenophobe rather misses the point. The point isn't the toys, the point is having the tools to create whatever IDE you need to create.

I certainly have no interest in creating IDEs, nor did bonaldi mention it as a goal. I just write papers in LaTeX, a goal which winedt or winshell fulfills easily.
posted by ROU_Xenophobe at 2:23 AM on October 4, 2005

Incredibly powerful Cut-and-paste. Unlike what Rhomboid said, you can in fact select via holding down the shift key, or via a mouse. I do it every day.
Okay, I just ran emacs (21.2.1) from my rxvt window to see if anything had changed. When holding down shift and using the arrow keys absolutely nothing happens. The cursor does not even move.
posted by Rhomboid at 2:23 AM on October 4, 2005

A vote for Vim.

Emacs comes with such unusable defaults, that you can spend months/years just configuring it to work the way you expect it to. You'll find yourself eventually learning Elisp (yuck!) just to configure the editor to do what you want it to.

I used Emacs for a few months, but switched to Vim after a traumatic loss of my Emacs configuration file, and I never looked back since.

Vim scripting capabilities are just as powerful as Emacs', and there are tons of scripts and add-ons as well.

The Emacs shortcuts can easily lead to RSI if you're not careful.

XEmacs has a betters Windows version and better Unicode support, so you might want to use that instead of GNU Emacs, if you decide to go the Emacs route.

Cream is Vim for newbies, and it's much easier to learn.

If you're asking for a popularity content, Emacs is losing popularity fast. Once it was a close contender with Vim, now it's way behind.
posted by Sharcho at 3:03 AM on October 4, 2005

Emacs forever! The best thing it's got going for me is PSGML mode, which gives me context-sensitive element and attribute completion, paired tag insertion, sexp-style motion and editing commands that work on the DOM tree, and lots more. Combined with mmm-mode to work CSS and JavaScript modes into my buffers (much like this), I have a killer development environment that makes my co-workers gape in awe as I crank out code using an editor that actually helps.

The argument I like about Emacs is that you will never learn everything about it, and you will always be able to make more and cooler hacks in your editing environment. It is the editor that will grow with you for life. And you can be sure that whatever OS you're using 20 years from now, there will be an Emacs port available. WE'RE THE FREAKING BORG, MAN.
posted by letourneau at 4:28 AM on October 4, 2005

The big problem with Emacs is that its default configuration caters to people who knew the original Emacs implementation in the early seventies at MIT. Newbies are put in a catch-22: to effectively use Emacs, they need to customize it, but to customize it, they need to be able to effectively use Emacs.

There are Emacs distributions which cater more to new users, such as Aquamacs, though I've never used them.

Rhomboid: It works if you enable 'pc-selection-mode'. That's a major annoyance, all useful behavior has to be enabled manually. For example, this are some of the things in my .emacs:

(auto-compression-mode t) ;deal with compressed files
(global-font-lock-mode t) ;make everything pretty
(mouse-wheel-mode t) ;enable the mouse wheel
(setq mouse-wheel-follow-mouse t)
;; This gives more usual selection behavior
;; and C-Ins, S-Del, S-Ins for copy, cut, and paste.

posted by reynaert at 4:44 AM on October 4, 2005

Never used emacs but write 95% of my code at work in vi or vim, depending on if I'm using VNC or a shell. I use the cursor keys (burn the heretic!), i, ESC, :w, :wq, /, n, d and dd, y and yy, p, and very frequently :noh followed by a brief panic and :q! when I forget to hit i before typing and vi does all sorts of crazy shit. :noh is your friend when vi turns on you.

Sometimes I hate vi and sometimes it hates me, but mostly we get on, and at those times I attempt to exit everything with ESC:wq. Several times I've sent emails ending :wq.

I have no idea what x and A do.
posted by corvine at 5:28 AM on October 4, 2005

ROU_Xenophobe: I certainly have no interest in creating IDEs, nor did bonaldi mention it as a goal. I just write papers in LaTeX, a goal which winedt or winshell fulfills easily.

And neither of these two programs have the tools I need for the papers I find myself writing/editing.
posted by KirkJobSluder at 6:37 AM on October 4, 2005

And the big reason why there are dozens of text editors out there in the world is that there are dozens of different types of users. I'm a writer who can't stand Word, and I wouldn't be that fond of Emacs either if it were not for RefTeX. But I'm wise enough to recognize that I shouldn't assume that what works best for me, works best for everyone else.

Almost all of the tools described here have features that are worth learning, the trick is finding an editor that works well with your workflow and how you think about documents.
posted by KirkJobSluder at 6:58 AM on October 4, 2005

No argument with that.
posted by ROU_Xenophobe at 8:27 AM on October 4, 2005

GVim forever. Why would anyone need to use a mouse when editing text is beyond me.
posted by SweetJesus at 9:11 AM on October 4, 2005

I LaTeX in emacs maybe six days a week, using AucTeX as mentioned above. (Incidentally, I know no Lisp.) Some sample features:
1) It colors things appropriately, so I know whether I'm in or out of math mode at present
2) Whenever I use ) or }, it briefly highlights the ( or {, which is really handy since these often get several levels nested
3) I can run LaTeX from within emacs with ^C ^C and continue editing. It'll inform me on the status bar when it's done and if there were any errors. If so, ^C ` will jump me to the line with the error.
4) While it's possible to use the mouse, with Alt-B and Alt-F I zip around so fast and precisely that it would never occur to me to waste time moving my hand over to the mouse, risking injury to boot.

I don't know why so many posters are emphasizing the "run anywhere" aspect. For one thing, environments where one finds LaTeX rarely lack emacs. But more importantly, the OP question sounds much more like "how shall I set up my home environment?" than "how shall I work on the road?"

okay, I do know why, it's so they can use their pro-vi arguments :-P
posted by Aknaton at 9:17 AM on October 4, 2005

Best answer: I'm skilled at both vi and emacs, and primarily use emacs when available.

Sometimes I will still use vi for large-scale file manipulation (e.g. v/pattern/d -- delete all lines not matching pattern). A few other things are more convenient in vi.

Otherwise emacs wins for mouse support, scroll bars, CVS integration, auto-indent.

This is not to overlook emacs' severe interface problems, especially for new users. There's a whole set of jargon to learn (buffer, minibuffer, kill, frame, window, face, etc... some of them don't mean what you would think). There's the Completions buffer that sticks around forever, even after its usefulness has passed. "Cut" is (IIRC) the F20 key (good luck looking for that) instead of Ctrl-C. And sometimes when you type in a long command, your minibuffer will say "Next time you can use Ctrl-Alt-Meta-shift-cokebottle-backslash-x-0," and your officemates will hear you mutter aloud, "Shut up, emacs."

Like a resale home, Emacs needs some sprucing up before it's livable. Step one, go into customizations and enable PC selection mode. Otherwise, you will continually be surprised at how selected text is treated. Step two, do Shift-Left click to bring up a font menu. Set the font to what you like. Later, edit .Xresources or equivalent to make it permanent (unfortunately, there's no way inside Emacs to do this.)

My pick:
Emacs*font: -*-lucidatypewriter-medium-*-*-*-12-*-*-*-*-*-*-*

Step 3, add the following to your ~/.emacs:

;; replace emacs keybindings
(global-set-key [(control o)] 'find-file) ; open
(global-set-key [(control n)] 'find-file-other-frame) ; new window
(global-set-key [(control s)] 'save-buffer) ; save
(global-set-key [(control q)] 'save-buffers-kill-emacs); exit
(global-set-key [(control w)] 'kill-buffer); close
(global-set-key [(control z)] 'undo); undo

; search forward with Ctrl-f
(global-set-key [(control f)] 'isearch-forward)
(define-key isearch-mode-map [(control f)] (lookup-key isearch-mode-map "\C-s"))
(define-key minibuffer-local-isearch-map [(control f)]
(lookup-key minibuffer-local-isearch-map "\C-s"))
posted by kurumi at 11:36 AM on October 4, 2005

See, that's exactly my point. I'm sure that emacs can be convinced to do anything and act in any way, but getting there requires a lot of learning, or at least a good few days with a FAQ and/or some googling. If it ships with inane defaults then that means it's unintuitive and broken in my book. I should not have to need to learn lisp or edit config files just to be able to use shift to select! Powerful? Yes. Intuitive? Hell no.
posted by Rhomboid at 3:47 AM on October 5, 2005

See also The Editor War on Wikipedia
posted by Sharcho at 6:12 AM on October 30, 2005

« Older How do I learn to pull my punches?   |   Visualizing independent projects relatively Newer »
This thread is closed to new comments.