Integrated Development Environment
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.
As great as this is, it's incomplete. Lots of work is needed to realize its full potential.
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.
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.
|C-s||Search forward (incremental).|
|C-r||Search in reverse (incremental).|
|C-g||If the search is currently unsuccessful, remove sufficient characters to get a successful hit. If the search is current successful, stop searching.|
The Page Up, Page Down, Tab, cursor keys, and so forth work as expected.
|C-M-F||Goto expression definition.|
Editing Lisp Sources
|M-;||Indent for comment|
Evaluating Lisp Expressions
|M-Escape||Prompt for a Lisp expression and print its result in the echo area.|
|C-x C-e||Evaluate the current defun.|
|C-X c||Compile buffer file. Note that you must load the file to bring it into the environment.|