From 983ae025173ed3786ae2e037ca3981da38bca192 Mon Sep 17 00:00:00 2001 From: myk002 Date: Sat, 12 Nov 2022 10:29:09 -0800 Subject: [PATCH] update keybinding docs --- docs/builtins/keybinding.rst | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/docs/builtins/keybinding.rst b/docs/builtins/keybinding.rst index 6d1565509..c9665a048 100644 --- a/docs/builtins/keybinding.rst +++ b/docs/builtins/keybinding.rst @@ -7,10 +7,10 @@ keybinding Like any other command, it can be used at any time from the console, but bindings are not remembered between runs of the game unless re-created in -`dfhack.init`. +:file:`dfhack-config/init/dfhack.init`. -Hotkeys can be any combinations of Ctrl/Alt/Shift with A-Z, 0-9, F1-F12, or -\` (the key below the :kbd:`Esc` key. +Hotkeys can be any combinations of Ctrl/Alt/Shift with A-Z, 0-9, F1-F12, or ` +(the key below the :kbd:`Esc` key on most keyboards). Usage ----- @@ -21,16 +21,17 @@ Usage List bindings active for the key combination. ``keybinding clear [...]`` Remove bindings for the specified keys. -``keybinding add "cmdline" ["cmdline"...]`` +``keybinding add "" ["" ...]`` Add bindings for the specified key. -``keybinding set "cmdline" ["cmdline"...]`` +``keybinding set "" ["" ...]`` Clear, and then add bindings for the specified key. The ```` parameter above has the following **case-sensitive** syntax:: [Ctrl-][Alt-][Shift-]KEY[@context[|context...]] -where the ``KEY`` part can be any recognized key and [] denote optional parts. +where the ``KEY`` part can be any recognized key and :kbd:`[`:kbd:`]` denote +optional parts. When multiple commands are bound to the same key combination, DFHack selects the first applicable one. Later ``add`` commands, and earlier entries within one @@ -49,13 +50,18 @@ Multiple contexts can be specified by separating them with a pipe (``|``) - for example, ``@foo|bar|baz/foo`` would match anything under ``@foo``, ``@bar``, or ``@baz/foo``. -Interactive commands like `liquids` cannot be used as hotkeys. +Commands like `liquids` or `tiletypes` cannot be used as hotkeys since they +require the console for interactive input. Examples -------- -``keybinding add Alt-F1 hotkeys`` - Bind Alt-F1 to run the `hotkeys` command on any screen at any time. +``keybinding add Ctrl-Shift-C hotkeys`` + Bind Ctrl-Shift-C to run the `hotkeys` command on any screen at any time. ``keybinding add Alt-F@dwarfmode gui/quickfort`` Bind Alt-F to run `gui/quickfort`, but only when on a screen that shows the main map. +``keybinding add Ctrl-Shift-Z@dwarfmode/Default "stocks show"`` + Bind Ctrl-Shift-Z to run `stocks show `, but only when on the main + map in the default mode (that is, no special mode, like cursor look, is + enabled).