I wait for new Emacs versions like I waited for Christmas when I was a small kid. And I don't peek into the development branches, I want to take time and enjoy the changes upon the release of the next major version.
Each new Emacs version shows little on the surface which you might expect from a software suite that has had everything and the kitchen sink since the 90's, but in the inside there's an ongoing morphosis into something greater, that quietly reveals itself version by version if only you take the time to study not only what's new but how the new things work. Then suddenly, say, five years later, a new usage paradigm emerges seemingly out of nothing eventhough Emacs has had the bits and pieces in for many revisions already. This is just fascinating. For example, the various completion subroutines have slowly converged into a more solid, generic completion subsystem. And best of all, you have the source code to play with.
If Emacs is nearly an operating system then it's kind of nearly a software Lisp machine.
> If Emacs is nearly an operating system then it's kind of nearly a software Lisp machine.
Which is why it is such a pity that they are still putting so much valuable work into fighting Elisp instead of having a full fledged CL with a native compiler under the hood. The FSF even has two own, GPL'ed CL implementations, CLISP and GCL, but because of RMS' hatred of CL, let them bitrot and never really cared to use them for anything.
Too much useful work is already done in elisp. If emacs maintainers were going to move to CL, they'd have to make sure that nothing breaks, otherwise it would almost surely result in fork.
I'm not contesting that, just saying that it is a pity (from the perspective of the wealth of the overall Lisp ecosystem) that all this valuable work has been done in Elisp and not in Common Lisp. Moving to Guile will probably take several years, and even if it really works some day, it will be just another insular Emacs-only solution, because nobody else is using Guile. It wont benefit the overall Lisp ecosystem in any way.
I wonder if there'd be a way to create an interop mode, which might look something similar to the way they are handling the lexical vs dynamic scoping.
That way authors could transition from elisp to common lisp.
From a pragmatic standpoint, all standard-conforming Common Lisp code runs on a conformant implementation. Schemes often tend to diverge (and they have 6 different Rn standards). So I think CL is 'better' than Scheme, for that value of better.
I get the appeal of moving towards a more general lisp dialect, but does it have to be CL, because Scheme seems pretty reasonable too, which there are also full-fledged GPL implementations owned by the FSF. And there's already an effort to move Emacs to it, it's just not ready yet.
> If Emacs is nearly an operating system then it's kind of nearly a software Lisp machine.
Correct or not, I've tended to think of Emacs as an LVM ([e]Lisp Virtual Machine) for years. The "bloated kitchen sink" argument holds little sway with me any more than saying that OpenBSD is a bloated kitchen sink because it can run a lot of software too. Emacs happens to be an awesome Batteries Included LVM.
Just a note for anyone using 23 and waiting with bated breath:
I've been building emacs from trunk on a regular basis, and using it as my primary editor, for about a year now. It's very stable -- I have so far had to find out about a breakage once, and it was already solved by the time I encountered it.
It's way nicer than the last major release. Give it a go.
Adding a package manager to the vanilla distribution is, in my opinion, the biggest change in this release. This is going to make finding and installing great elisp packages so much easier, especially for new users.
I'd love to take this opportunity to dive into Emacs, but the past few times I've tried, it's felt like my keyboard was fighting against me. For those of you using Emacs on a Macbook (or an Apple keyboard), which key do you use for 'alt'?
The worst are the Thinkpad keyboards that have Fn where the left Ctrl should be. This is the sole reason I started to use Caps Lock for Ctrl and now I'm in love with it.
I use CarbonEmacs [1] on my Macbook. The default 'meta' is the cmd key, which I prefer, as it's closer to what I'm used to on other keyboards. I also remap (globally) caps-lock to be a second ctrl.
I use the Apple key as Meta and the Caps Lock key for Ctrl. On a Linux box I use the Alt key as Meta and the Caps Lock Key for Ctrl. With this setup the keys are in the same location for every keyboard and I don't get so confused.
Exactly. The problem with keyboards is that the alt key is right under your thumb, right where Ctrl should be. You might take a look at http://xahlee.org/emacs/ergonomic_emacs_keybinding.html , which is a remap of common emacs keybindings to fit underneath the alt key.
Sure, this is an invasive change, but it saved me from RSI.
I use option like the others have said. I am like you, diving into Emacs; in my case purely for the swank/slime lisping environment.
It's been pretty difficult as I am a dyed in the wool VIM user. Someone on HN recommended the Evil plugin (http://gitorious.org/evil/pages/Home) for an approximation of VIM movement and other bindings. It surprisingly works pretty well. It's letting me remain productive while I slowly adapt to the emacs key-bindings over time.
I've been using Evil for a couple of months and love it. I switched from Viper+vimpulse and haven't missed a beat. It works really well and was easier to setup. Any VIM user considering Emacs should give it a shot - the best of both worlds, really.
I've been using evil mode and don't really see why you'd even want to move away from the vim bindings. Get the best of both worlds, the nice vim movements and model editing, plus all the nice emacs packages and being able to use elisp instead of vimscript.
I would really like to edit LaTeX in emacs (people always tell me how great the latex emacs packages are).
Given I am on Mac OS X, can someone give me a way to way to get to a "all the shiny bells and whistles" emacs with latex editing?
I tried this a few months ago and got stuck behind packages, package managers, macro packages which are for various versions of emacs. I was never sure if I'd actually got things loaded.
My impression is that if you install TexLive and Aquamacs, you are pretty much set. If you also install Skim, you've got a nice synctex setup. You might need to tell aquamacs that you are using skim etc, but this is explained either on the aquamacs or skim faqs.
This isn't a really helpful reply since I still have to set it up myself, but I noticed Homebrow has got Auctex although it needs to install the full TeX distribution as well.
Each new Emacs version shows little on the surface which you might expect from a software suite that has had everything and the kitchen sink since the 90's, but in the inside there's an ongoing morphosis into something greater, that quietly reveals itself version by version if only you take the time to study not only what's new but how the new things work. Then suddenly, say, five years later, a new usage paradigm emerges seemingly out of nothing eventhough Emacs has had the bits and pieces in for many revisions already. This is just fascinating. For example, the various completion subroutines have slowly converged into a more solid, generic completion subsystem. And best of all, you have the source code to play with.
If Emacs is nearly an operating system then it's kind of nearly a software Lisp machine.