The generic function interface-keys-style returns a keyword indicating a keys style, or emulation. It is called when interface starts running in a new process, and keys-style determines how user input is interpreted by the editor in interface .
The editor (that is, instances of editor-pane and its subclasses) responds to user input gestures according to one of three basic models.
When
keys-style
is
:emacs
, the editor emulates GNU Emacs. This value is allowed on all platforms.
When
keys-style
is
:pc
, the editor emulates standard MS Windows keys. This value is allowed in the Windows and the X11/Motif implementations.
When
keys-style
is
:mac
, the editor emulates Mac OS editor keys. This value is allowed only in the Mac OS Cocoa implementation.
The most important differences between the styles are in the handling of the
Alt
key on Windows, selected text, and accelerators:
Alt
is interpreted on Windows as the Meta key (used to access many Emacs commands).
Control characters such as
Ctrl+S
are not interpreted as accelerators.
The selection is not deleted on input.
Alt
is interpreted as
Alt
on Windows and can be used for shortcuts.
Control
keystrokes are interpreted as accelerators. Standard accelerators are added for standard menu commands, for example
Ctrl+S
for
File > Save
.
The selection is deleted on input, and movement keys behave like a typical Windows editor.
Emacs
Control
keys are available, since they do not clash with the Macintosh
Command
key.
The selection is deleted on input, and movement keys behave like a typical Mac OS editor.
By default
keys-style
is
:pc
on Windows platforms and
:emacs
on Unix/Linux and Mac OS platforms. You can supply methods for
interface-keys-style
on your own interface classes that override the default methods.
In the Mac OS Cocoa implementation,
Command
keystrokes are available if there is a suitable
Edit
menu, regardless of the Editor emulation.
See the chapter "Emulation" in the LispWorks Editor User Guide for more detail about the different styles.