First, you can retrieve old function invocations by placing the insertion point at the end of the previous line and pressing Return. This will copy this S-expression to the bottom of the Listener Window. From there you can modify the S-expression or reinvoke it by pressing Enter. If you don't like using the mouse to go find old expression you simply need to press Meta-Command-Shift-P to jump back to the last expression enter. Pressing repeatively takes you back up higher in the Listener Window.
Second you can use the previous result in the Listener Window in the current expression you are composing. The previous result is bound to '*' ( and the one previous to the is bound to '**' )
? (+ 1 2 )
3
? (* 3 * )
9
? (- * 10 )
-1
? (+ * ** )
8
This comes in handy when you are trying out a few functions and need to
pass the results from one to another. Or perhaps you calcualte a result
that you would like to keep for later debugging. You could then type
(setf temp1 * ), which would bind the last result to the
symbol temp1.
For the following discussion.
Meta- means press the "Option" key incombination with the key.
Control- means press the "Control" key in compination with the key.
Instead of selecting a function with the mouse and choosing Eval Selection from the menu you can use the following to have the same effect.
for Lisp Operations
Command Keystroke/Menu Item Effect
ed-eval-or- Control-X Control-C Evaluates or compiles current
compile-top- selection or the current-top-
level-sexp level expression. The current
top-level-expression is
determined heuristically by
searching backward for an open
paren at the start of a line.
ed-eval-or-compile- Enter Evaluates or compiles the
current-sexp current expression. This is
not the return key.
for definition lookup. MCL is very nice in that documentation for all
the built-in functions is available on-line. This is not the case, by default,
for most other vendors. So if you forget how "member" works look it up!
Command Keystroke Effect
ed-edit-definition Meta-period Attempts to bring up the
the source code definition
for the symbol surrounding
the insertion point.
edit-definition command-Meta-click Attempts to bring up the
source code definition for
for the symbol on which the
mouse clicks.
ed-get-documentation Control-X Control-D Calls up the Documentation
Tool's dialog box with the
symbol surround the
insertion.
Control-X Control-A Prints the argument list
of the function bound to the
symbol surrounding the
insertion point. The arg.
is displayed in the
minibuffer.
ed-help Control-? Brings up the Fred Commands
window. This windows
contain a list of all
available Fred keyboard
Commands.
for insertion
Command Keystroke Effect
ed-insert-sharp- Meta-# Inserts the characters
comment #| |# and puts the insertion
point between them.
ed-insert-double- Meta-" Inserts the characters " "
quote and puts the insertion point
between them.
Control-Q Inserts the next keystroke
quoted ( e.g. Control Q
Control L inserts a '^L' )
ed-indent-for-lisp Tab Indents current line (
following the editor's
conventions ).
ed-newline-and- Control-Return Insert Return followed by Tab.
indent
ed-indent-sexp Control-Meta-Q Reindents current expression.
Control-Meta-M In a new Fred window adds
the mode line at the top.
Control-Meta-Shift-M will
reparse the mode line and
set the window package.
Incremental Search
Command Keystroke Effect
Control-S Incrementally search forward.
Control-R Incrementally search backward.
Escape Pressing Escape after
initiating an incremental search
terminates the search at the
curent point.
Control-G Pressing Control-G after
initiation an incremental
search terminates the search
and returns the point as which
the search started.