[retawq] Configuring Keymaps

retawq Documentation
Configuring Keymaps

(This documentation file is only relevant in curses-like runmode.)

Introduction

You can associate quite arbitrary keys with actual program actions, overriding or complementing the default keys. This allows you to handle retawq e.g. similar to other browsers or your favorite text editor.

This feature can be configured with the run-time configuration option "keymap", where each rule consists of one key identifier and one action identifier, which are explained below.

Keys

Keys can be encoded as follows; please note that some of the "special" keys don't work with all kinds of terminals.

- a single character (e.g. a letter or a digit) represents itself
- "ctrl-" followed by a lowercase letter means that you keep the "Control" modifier key down while pressing the letter key (example: "ctrl-w"); don't customize "ctrl-c", "ctrl-m" or "ctrl-z" - that could cause problems or simply won't work
- "fn-" followed by a number in the range 0..63 means the respective function key (example: "fn-1" for the function key with the label "F1"); function keys aren't supported by all curses libraries; the value 0 seems to be rather theoretical
- the following identifiers are quite self-explanatory: "cursor-down", "cursor-left", "cursor-right", "cursor-up", "delete", "end", "escape", "home", "insert", "page-down", "page-up", "space", "tab"

Commands

Command actions can be encoded as follows; for a more extensive description of the actions, please refer to the "Commands" section of the Keyboard Handling documentation.

- document-bottom: scroll down to the bottom of the current document (default key: "end")
- document-enforce-html: interpret the current document as HTML code (default key: "H")
- document-enforce-source: show the HTML source code of the current web page (default key: "\")
- document-info: show information about the current browser window view (default key: "I")
- document-reload: reload the current document without looking into retawq's internal cache (default key: "r")
- document-reload-enforced: like "document-reload", but additionally tries to bypass external caches; it also tries again to lookup the hostname if that failed previously (default key: "R")
- document-save: save the current document in a file (default key: "s")
- document-search: search for a string in the current document (default key: "/")
- document-search-backward: search backward for a string in the current document (default key: "?")
- document-search-next: search for the next occurrence of the string that was entered earlier (no default key)
- document-search-previous: search for the previous occurrence of the string that was entered earlier (no default key)
- document-top: scroll up to the top of the current document (default key: "home")
- download: download a document from a URL (default key: "ctrl-d")
- download-from-element: download a document from the URL which is given by the current link (default key: "D")
- dump: dump the current document to a file (default key: "d")
- element-enable: enable a disabled HTML form element (default key: "E")
- element-info: show information about the current link (or HTML form element) (default key: "i")
- element-next: go to the next link (or HTML form element) (default key: "cursor-down")
- element-open: open the current link in the current window, or activate the current HTML form element (default keys: "return", "enter", "o")
- element-open-split: like "window-new-from-element", but the screen is split and the new window is shown in the other part of the screen (default key: "ctrl-o")
- element-previous: go to the previous link (or HTML form element) (default key: "cursor-up")
- execext-shell: execute a shell command (default key: "!")
- execext-shell-flip: flip the shell command configuration (default key: "&")
- form-reset: reset the "current" HTML form (no default key)
- form-submit: submit the "current" HTML form (no default key)
- go-bookmarks: go to the bookmarks document URL (default key: "b")
- go-home: go to the "home" URL (default key: "h")
- go-search: go to your favorite search engine URL (default key: "e")
- go-url: go to a new URL (default key: "g")
- go-url-preset: like "go-url", but the new URL is preset to the URL of the current document so you can edit it (default key: "G")
- jump: "jump" to a URL (default key: "j")
- jump-preset: like "jump", but the new jump shortcut is preset to the previously entered shortcut so you can edit it (default key: "J")
- line-down: scroll down one line in the current document (default keys: "l", "delete")
- line-up: scroll up one line in the current document (default keys: "L", "insert")
- local-file-dir-open: show a file selection dialog (in GTK runmode) (no default key)
- menu-contextual: show the contextual menu (default key: "m")
- menu-url-history: show the URL history (default key: "u")
- menu-windowlist: show a list of all currently existing windows (default key: "ctrl-w")
- mouse-flip: turn the mouse on/off (flip its current state) (default key: "Y")
- mouse-off: turn the mouse off (no default key)
- mouse-on: turn the mouse on (no default key)
- page-down: scroll down one screenfull of lines in the current document (default keys: "page-down", "space")
- page-up: scroll up one screenfull of lines in the current document (default key: "page-up")
- quit: quit retawq (default key: "Q")
- screen-split: split the screen (default key: "2")
- screen-switch: switch between visible windows when the screen is split (default key: "tab")
- screen-unsplit: un-split the screen (default key: "1")
- scroll-bars-flip: turn the scroll bars on/off (flip their current state); currently this is only relevant if the compile-time configuration option OPTION_TG has been set to xcurses; scroll bars are "expensive" because the whole HTML document has to be rendered internally to find out how many lines it contains; such full rendering is usually only done if you actually scroll down to the bottom of a document; so, when you want to load a very long HTML document (e.g. 500 KB) on a slow computer, you might want to disable scroll bars in advance (no default key)
- session-resume: resume a session from a file (default key: "M")
- session-save: save the current session in a file (default key: "S")
- stop: stop any ongoing network/disk activity for the current document (default key: ".")
- view-back: go back to the previous document in the series of documents in the current window (default key: "cursor-left")
- view-forward: go to the next document in the series of documents in the current window (default key: "cursor-right")
- window-close: close the current window (default key: "C")
- window-new: create a new "virtual window" (default key: "n")
- window-new-from-document: open the current document in a new window (default key: "N")
- window-new-from-element: open the current link in a new window (default key: "O")
- window-next: go to the next virtual window in the list of all virtual windows (default key: "w")
- window-previous: go to the previous virtual window in the list of all virtual windows (default key: "W")

Line Input

Actions for the line input mode can be encoded as follows; you shouldn't map self-representing keys (e.g. letters) to actions because then you wouldn't be able to enter them as text in the edit area. For a more extensive description of the actions, please refer to the "Line Input" section of the Keyboard Handling documentation.

- area-switch: switch between message area and edit area (default key: "ctrl-a")
- cancel: cancel the current line input operation; if it takes a "long" time until you get the effect of the usual escape key, associate a different key with this action... (default key: "escape")
- mouse-flip: turn the mouse on/off (flip its current state) (no default key)
- mouse-off: turn the mouse off (no default key)
- mouse-on: turn the mouse on (no default key)
- pass2user: go back from entering a login password to entering a login username (default key: "ctrl-u")
- to-end: move the cursor to the end of the text (default keys: "cursor-down", "page-down", "end")
- to-left: move the cursor one position to the left (default key: "cursor-left")
- to-right: move the cursor one position to the right (default key: "cursor-right")
- to-start: move the cursor to the start of the text (default keys: "cursor-up", "page-up", "home")

This documentation file is part of version 0.2.6c of retawq, a network client created by Arne Thomaßen. retawq is basically released under certain versions of the GNU General Public License and WITHOUT ANY WARRANTY. Copyright (C) 2001-2006 Arne Thomaßen.