18 drracket:modes
Adds a mode to DrRacket. Returns a mode value
that identifies the mode.
The first argument, name, is the name
of the mode, used in DrRacket’s GUI to allow
the user to select this mode.
The surrogate argument is set to the
definitions text and the interactions text
(via the
mode:host-text set-surrogate<%>
method) whenever this mode is enabled.
The repl-submit procedure is called
whenever the user types a return in the interactions
window. It is passed the interactions editor
and the position where the last prompt occurs.
If it
returns #t, the text after the last
prompt is treated as a program fragment and
evaluated, according to the language settings.
If it returns #f, the text is
assumed to be an incomplete program fragment, and
the keystroke is not treated specially.
The matches-language predicate is called whenever
the language changes. If it returns #t
this mode is installed. It is passed the list of strings
that correspond to the names of the language in the
language dialog.
Modes are tested in the opposite order that they are
added. That is, the last mode to be added gets tested
first when the filename changes or when the language
changes.
Determines if val is a mode.
Returns all of the modes currently added to DrRacket.
Extracts the name of the mode.
Extracts the surrogate of the mode.
Extracts the repl submission predicate of the mode.
Extracts the language matching predicate of the mode.
See also
drracket:modes:add-mode.