Skip to content

Comment on Ask HN: Does anyone Lisp without Emacs?parent

Comments

My impression is that GNU Emacs in general has awful (default) keybindings. Specifically the keybindings of SLIME are among the worst of any Lisp IDE. Use c-h m to see the keybindings of a Lisp editor buffer. It's what it is and a reason for that are the GNU Emacs keybindings in general.

Just check the keybindings of anything eval in SLIME for a Lisp file buffer:

  C-x C-e
  C-M-x
  C-c C-p
  C-C C-r
  C-c :
Evaluation of Lisp code is central to Lisp. But the keybindings are just awful. Generally getting rid of one layer of prefix keys would be a start.

GNU Emacs also still believes that my Mac has a Meta and a Super key. It hasn't. Every new user has to learn keys which are not labelled on any typical keyboard produced in the last 30 years.

My Lisp Machine keyboards from the 1980s have Meta, Super, Hyper keys, though.

C-x C-e
C-M-x

I use the first 2 keybindings you mention only with emacs lisp; the other 3 I had to look up.

I get a lot of milage from these:

  C-c C-c ;; slime-compile-defun
  C-c C-k ;; slime-compile-and-load-file
  C-c C-j ;; slime-eval-last-expression-in-repl
  C-c C-y ;; slime-call-defun
... with C-c C-c probably the one I use the most, and it's pretty easy on the hands.

Even the documentation is wrong. For C-c C-c

The name slime-compile-defun indicates that it compiles DEFUN forms.

It actually compiles AND executes top-level forms.

The name is misleading. The document omits the part about executing top level forms. It does mention compiling them, though:

"[...] Compile the current toplevel form.

With (positive) prefix argument the form is compiled with maximal debug settings (‘C-u’). With negative prefix argument it is compiled for speed (‘M--’). If a numeric argument is passed set debug or speed settings to it depending on its sign."

GNU Emacs also still believes that my Mac has a Meta and a Super key. It hasn't. Every new user has to learn keys which are not labelled on any typical keyboard produced in the last 30 years.

Lol yep. When I figured that M-x means just Alt-x on my keyboard i was pretty peeved. Today I see it as a rite of passage.

Yes I'm on Mac and to boot, my keyboard is one of those smaller ones and I'm definitely missing some of the expected keys. I get that Emacs is customizable but it's a bit unapproachable when I want to dive into coding.

If I recall correctly, on my mac I had an issue with the meta and super keys. I had to rebind Meta to Cmd and Super to Opt. Im pretty sure I used Bozhidar Batsov's solution for this.

Another reason for you to stick to Emacs is Emacs Lisp. If you enjoy writing lisp you are not going to find a better piece of software written in any other lisp language. I prefer common lisp to elisp (alot!) but this is a fact in my opinion. Plus elisp is somewhat similar to common lisp and learning/appreciating the differrnces between the two will make you a better lisp programmer.

https://github.com/bbatsov/prelude/blob/master/core/prelude-...

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.