wiki:IntegratedDevelopmentEnvironment

Version 1 (modified by bfulgham, 7 years ago) (diff)

--

OpenMCL ships with a partially-complete  Cocoa-based  Integrated Development Environment (IDE), based on  CMUCL's  Hemlock editor. It was significantly altered by Gary Byers to be a native OS X application with native Cocoa look-and-feel.

Getting Started

Starting from a running instance of OpenMCL, you can invoke the Cocoa Hemlock editor like so:

Chaz:~ brent$ openmcl
Welcome to OpenMCL Version 1.0 (DarwinPPC32)!
? (require 'Cocoa)
COCOA
("FAKE-CFBUNDLE-PATH" "SPLAY-TREE" "NAME-TRANSLATION" "PROCESS-OBJC-MODULES"
 "OBJC-CLOS" "OBJC-RUNTIME" "BRIDGE" "OBJC-SUPPORT" "COCOA-DEFAULTS" "COCOA-PREFS"
 "COCOA-TYPEOUT" "COCOA-WINDOW" "HEMLOCK" "COCOA-EDITOR" "PTY" "COCOA-LISTENER"
 "COCOA-BACKTRACE" "COCOA")

An OpenMCL listener window will open, as well as the Hemlock editor.

Basic Editing

OpenMCL's IDE works much like any other OS X application. The File, Edit, Format, and Windows menus are like other OS X editors, such as TextEdit?. However, the key bindings are like Emacs (important key strokes are described in the following sections).

Important Key Bindings

In the following C means the control key, and M means the alt or option key.

Searching

C-sSearch forward (incremental).
C-rSearch in reverse (incremental).
C-gIf the search is currently unsuccessful, remove sufficient characters to get a successful hit. If the search is current successful, stop searching.
M-%Search-and-replace.

The Page Up, Page Down, Tab, cursor keys, and so forth work as expected.

C-M-FGoto expression definition.

Editing Lisp Sources

M-;Indent for comment

Evaluating Lisp Expressions

M-EscapePrompt for a Lisp expression and print its result in the echo area.
C-x C-eEvaluate the current defun.
C-X cCompile buffer file. Note that you must load the file to bring it into the environment.