Climacs, a new Common Lisp implementation of Emacs - Lisp Propulsion Laboratory log

Lisp Propulsion Laboratory log

Paolo Amoroso's weblog. Main interests: Lisp, astronomy (Moon), space exploration (Apollo and early manned programs) Calendar of past entries | Related links xml

Climacs, a new Common Lisp implementation of Emacs

Friday, December 24, 2004

Robert Strandh has just set up a new project at Climacs, "A modern Common Lisp implementation of the Emacs text editor".

I have been hearing about having an Emacs-like editor written in Common Lisp, so that Common Lisp itself could be used as an extension language more powerful than Emacs Lisp, since the early 1990s. The idea might remind some old-timers of LispOS projects. But in the last few years, some working code for a CL-Emacs has actually been written (here is a summary).

Robert's project has the purpose of replacing "[...] the buffer protocols of Goatee (the editor of McCLIM) and Portable Hemlock, in an attempt to ultimately merge those two projects." The message he sent for applying for hosting explains the differences between his and other CL-Emacs projects. The flexichains data structure is described in this paper.

The simple instructions in the Climacs sources explain how to run the program, which right now only provides basic editing functionality in the largest pane (be sure to use Emacs-style keybindings). The bottom pane, which does not work like ordinary CLIM interactor panes, is for processing the few available non-editing commands, and you can think of it as the equivalent of the Emacs minibuffer:

C-x C-f
Find file.
C-x C-s
Save buffer.
C-x C-q
Demonstration command that inserts into the buffer a reversed copy of the string provided as an argument.

Copyright © 2004 by Paolo Amoroso

Created with BlogMax

December 2004
Mon Tue Wed Thu Fri Sat Sun
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Nov  Jan
About Lisp | Practical Common Lisp (learn Lisp) | Planet Lisp (blog agregator) | Common Lisp Directory (software and resources) | Why Lisp?