19 Keymap
| ||
|
method
(send a-keymap:aug-keymap get-chained-keymaps)
→ (listof (is-a?/c keymap%)) Returns the list of keymaps that are chained to this one.
method
(send a-keymap:aug-keymap get-map-function-table) → hash?
Returns a hash-table that maps symbols naming key sequences to the names of the keymap functions the are bound to.
method
(send a-keymap:aug-keymap get-map-function-table/ht ht) → hash?
ht : hash? This is a helper function for get-map-function-table that returns a similar result, except it accepts a hash-table that it inserts the bindings into. It does not replace any bindings already in ht. The result is different from get-map-function-table only in that keymap:aug-keymap<%> get-map-function-table will remove keybindings that are also have a prefix (since those keybindings are not active).
| ||
| ||
|
method
(send a-keymap:aug-keymap chain-to-keymap next prefix?) → void next : (is-a?/c keymap%) prefix? : boolean? Overrides chain-to-keymap in keymap%.Keeps a list of the keymaps chained to this one.
method
(send a-keymap:aug-keymap remove-chained-keymap keymap) → void
keymap : (is-a?/c keymap) Overrides remove-chained-keymap in keymap%.Keeps the list of the keymaps chained to this one up to date.
method
(send a-keymap:aug-keymap map-function key-name function-name) → void key-name : string function-name : string Overrides map-function in keymap%.Keeps a separate record of the key names and functions that they are bound to in this keymap.
|
superclass: (keymap:aug-keymap-mixin keymap%) |
procedure
(keymap:remove-user-keybindings-file user-keybindings-path)
→ any user-keybindings-path : any/c
procedure
(keymap:add-user-keybindings-file user-keybindings-path-or-require-spec)
→ any user-keybindings-path-or-require-spec : any/c
parameter
(keymap:add-to-right-button-menu) →
(-> (is-a?/c popup-menu%) (is-a?/c editor<%>) (is-a?/c event%) void?) (keymap:add-to-right-button-menu proc) → void?
proc :
(-> (is-a?/c popup-menu%) (is-a?/c editor<%>) (is-a?/c event%) void?)
Before calling this procedure, the function append-editor-operation-menu-items is called.
parameter
→ (-> (is-a?/c popup-menu%) (is-a?/c editor<%>) (is-a?/c event%) void?) (keymap:add-to-right-button-menu/before proc) → void? proc : (-> (is-a?/c popup-menu%) (is-a?/c editor<%>) (is-a?/c event%) void?)
After calling this procedure, the function append-editor-operation-menu-items is called.
procedure
(keymap:call/text-keymap-initializer thunk-proc) → any/c
thunk-proc : (-> any/c)
procedure
(keymap:canonicalize-keybinding-string keybinding-string)
→ string? keybinding-string : string?
procedure
(keymap:get-editor) → (is-a?/c keymap%)
"z": undo
"y": redo
"x": cut
"c": copy
"v": paste
"a": select all
procedure
(keymap:get-file) → (is-a?/c keymap%)
procedure
(keymap:get-user) → (is-a?/c keymap%)
procedure
(keymap:get-global) → (is-a?/c keymap%)
procedure
(keymap:get-search) → (is-a?/c keymap%)
procedure
(keymap:make-meta-prefix-list key [ mask-control?]) → (listof string?) key : string? mask-control? : boolean? = #f
procedure
(keymap:send-map-function-meta keymap key func [ mask-control? #:alt-as-meta-keymap alt-as-meta-keymap]) → void? keymap : (is-a?/c keymap%) key : string? func : string? mask-control? : boolean? = #f alt-as-meta-keymap : (or/c (is-a?/c keymap%) #f) = #f
This procedure binds all of the key-bindings obtained by prefixing key with a meta-prefix to func in keymap.
If alt-as-meta-keymap is a keymap% object, then the the key binding (string-append "?:a:" key) is bound to func in alt-as-meta-keymap. Additionally, if func has not been added (via keymap%) to alt-as-meta-keymap, then keymap:send-map-function-meta signals an error.
procedure
(keymap:setup-editor keymap) → void?
keymap : (is-a?/c keymap%)
procedure
(keymap:setup-file keymap) → void?
keymap : (is-a?/c keymap%)
procedure
(keymap:setup-global keymap [ #:alt-as-meta-keymap alt-as-meta-keymap]) → void? keymap : (is-a?/c keymap%) alt-as-meta-keymap : (or/c #f (is-a?/c keymap%)) = #f
ring-bell (any events) —
Rings the bell (using bell) and removes the search panel from the frame, if there. save-file (key events) —
Saves the buffer. If the buffer has no name, then finder:put-file is invoked. save-file-as (key events) —
Calls finder:put-file to save the buffer. find-string (key events) —
Opens the search buffer at the bottom of the frame, unless it is already open, in which case it searches for the text in the search buffer. find-string-reverse (key events) —
Same as “find-string”, but in the reverse direction. find-string-replace (key events) —
Opens a replace string dialog box. toggle-anchor (key events) —
Turns selection-anchoring on or off. center-view-on-line (key events) —
Centers the buffer in its display using the currently selected line. collapse-space (key events) —
Collapses all non-return whitespace around the caret into a single space. remove-space (key events) —
Removes all non-return whitespace around the caret. collapse-newline (key events) —
Collapses all empty lines around the caret into a single empty line. If there is only one empty line, it is removed. transpose-chars (key events) —
Transposes the characters before and after the caret and moves forward one position. transpose-words (key events) —
Transposes words before and after the caret and moves forward one word. capitalize-word (key events) —
Changes the first character of the next word to a capital letter and moves to the end of the word. upcase-word (key events) —
Changes all characters of the next word to capital letters and moves to the end of the word. downcase-word (key events) —
Changes all characters of the next word to lowercase letters and moves to the end of the word. goto-line (any events) —
Queries the user for a line number and moves the caret there. goto-position (any events) —
Queries the user for a position number and moves the caret there. copy-clipboard (mouse events) —
Copies the current selection to the clipboard. cut-clipboard (mouse events) —
Cuts the current selection to the clipboard. paste-clipboard (mouse events) —
Pastes the clipboard to the current selection. copy-click-region (mouse events) —
Copies the region between the caret and the input mouse event. cut-click-region (mouse events) —
Cuts the region between the caret and the input mouse event. paste-click-region (mouse events) —
Pastes the clipboard into the position of the input mouse event. select-click-word (mouse events) —
Selects the word under the input mouse event. select-click-line (mouse events) —
Selects the line under the input mouse event. start-macro (key events) – Starts recording a keyboard macro
These functions are bound to the following keys (C = control, S = shift, A = alt, M = “meta”, D = command):
C-g : “ring-bell”
M-C-g : “ring-bell”
C-c C-g : “ring-bell”
C-x C-g : “ring-bell”
C-p : “previous-line”
S-C-p : “select-previous-line”
C-n : “next-line”
S-C-n : “select-next-line”
C-e : “end-of-line”
S-C-e : “select-to-end-of-line”
D-RIGHT : “end-of-line”
S-D-RIGHT : “select-to-end-of-line”
M-RIGHT : “end-of-line”
S-M-RIGHT : “select-to-end-of-line”
C-a : “beginning-of-line”
S-C-a : “select-to-beginning-of-line”
D-LEFT : “beginning-of-line”
D-S-LEFT : “select-to-beginning-of-line”
M-LEFT : “beginning-of-line”
M-S-LEFT : “select-to-beginning-of-line”
C-h : “delete-previous-character”
C-d : “delete-next-character”
C-f : “forward-character”
S-C-f : “select-forward-character”
C-b : “backward-character”
S-C-b : “select-backward-character”
M-f : “forward-word”
S-M-f : “select-forward-word”
A-RIGHT : “forward-word”
A-S-RIGHT : “forward-select-word”
M-b : “backward-word”
S-M-b : “select-backward-word”
A-LEFT : “backward-word”
A-S-LEFT : “backward-select-word”
M-d : “kill-word”
M-DELETE : “backward-kill-word”
M-c : “capitalize-word”
M-u : “upcase-word”
M-l : “downcase-word”
M-< : “beginning-of-file”
S-M-< : “select-to-beginning-of-file”
M-> : “end-of-file”
S-M-> : “select-to-end-of-file”
C-v : “next-page”
S-C-v : “select-next-page”
M-v : “previous-page”
S-M-v : “select-previous-page”
C-l : “center-view-on-line”
C-k : “delete-to-end-of-line”
C-y : “paste-clipboard” (Except Windows)
A-v : “paste-clipboard”
D-v : “paste-clipboard”
C-_ : “undo”
C-x u : “undo”
C-+ : “redo”
C-w : “cut-clipboard”
M-w : “copy-clipboard”
C-x C-s : “save-file”
C-x C-w : “save-file-as”
C-x C-f : “load-file”
C-s : “find-string”
C-r : “find-string-reverse”
M-% : “find-string-replace”
SPACE : “collapse-space”
M-Backslash : “remove-space”
C-x C-o : “collapse-newline”
C-o : “open-line”
C-t : “transpose-chars”
M-t : “transpose-words”
C-SPACE : “toggle-anchor”
M-g : “goto-line”
M-p : “goto-position”
LEFTBUTTONTRIPLE : “select-click-line”
LEFTBUTTONDOUBLE : “select-click-word”
RIGHTBUTTON : “copy-click-region”
RIGHTBUTTONDOUBLE : “cut-click-region”
MIDDLEBUTTON : “paste-click-region”
C-RIGHTBUTTON : “copy-clipboard”
INSERT : “toggle-overwrite”
M-o : “toggle-overwrite”
If alt-as-meta-keymap is not #f, then for each of the M- mappings, a “flexible” A- variant of the mapping is added to alt-as-meta-keymap. The flexible mapping matches a key combination where the non-modifier part of the mapping would match if the modifier had not affected the non-modifier part (e.g., matching Option-p as A-p on Mac OS even when an Option-p combination produces “π”).
Changed in version 1.34 of package gui-lib: Added the #:alt-as-meta-keymap argument.
procedure
(keymap:setup-search keymap) → void?
keymap : (is-a?/c keymap%)
procedure
(keymap:set-chained-keymaps keymap children-keymaps) → void? keymap : (is-a?/c keymap:aug-keymap<%>) children-keymaps : (listof (is-a?/c keymap%))
procedure
(keymap:remove-chained-keymap editor keymap) → void? editor : (is-a?/c editor<%>) keymap : (is-a?/c keymap:aug-keymap<%>)
procedure
(keymap:region-click text mouse-event f) → any
text : any/c mouse-event : any/c f : (-> number? boolean? number? number? any)
the position where the click occurred
a boolean indicating if the position is at the right-hand edge of the screen (to cover the eol ambiguity)