diff options
-rw-r--r-- | README | 59 | ||||
-rw-r--r-- | examples/config/uzbl/config | 3 |
2 files changed, 47 insertions, 15 deletions
@@ -94,21 +94,6 @@ The following commands are recognized: - if you want to unset a string, use `set` with one space after the equals sign * `print @<key>` - use this to print the value of a variable. -* `bind <string> = <command>` OUTDATED !!! - - sets the character sequence `<string>` to invoke `<command>` when typed interactively in uzbl - - there are a few tricks you can do: - * `<string>` ends with an underscore: the command will only be invoked after pressing return/enter. If the user enters text where `<string>` has the underscore, `%s` in the `<command>` string will be replaced by this text. (optional) - * `<string>` ends with an asterisk: similar behavior as with an underscore, but also makes the binding incremental (i.e. the command will be invoked on every keystroke). - * `<string>` ends on a different character: you need to type the full string, which will trigger the command immediately, without pressing enter/return. - - examples: - * `bind o _ = uri %s` - - uzbl will load the url when you type: 'o <url><enter>' - * `bind /* = search %s` - - a search command which is called on every character typed after the slash, letting you see the search narrow down while typing. - - Hitting return, enter or esc will terminate the search. - * `bind ZZ = exit` - - When you type `ZZ` and nothing else, the exit command will be triggered immediately. - * `back` * `forward` * `scroll <vertical|horizontal> <argument>` @@ -497,6 +482,50 @@ Basically all events have this format: - `EVENT [uzbl_instance_name] PLUG_CREATED plug-id`: when uzbl-core is in xembed mode - `EVENT [uzbl_instance_name] BUILTINS command_list`: shows a list of all uzbl commands, whitespace separated, on startup +* Events/requests which the EM and its plugins listens for: + - `BIND` and `MODE_BIND`: define global resp. per-mode key/button binds. + `request BIND <keycmd> = <command>` # set global binding (this is a shortcut for `request MODE_BIND global <keycmd> = <command>`) + `request MODE_BIND <modespec> <keycmd> = <command>` + The `<modespec>` can be anything like 'command', 'insert,command', 'global', 'global,-insert'. + The `<keycmd>` has a special syntax: + * `<keycmd>` ends with an underscore: the command will only be invoked after pressing return/enter. If the user enters text where `<string>` has the underscore, `%s` in the `<command>` string will be replaced by this text. (optional) + * `<keycmd>` ends with an asterisk: similar behavior as with an underscore, but also makes the binding incremental (i.e. the command will be invoked on every keystroke). + * `<keycmd>` ends with an '!': the command will only be invoked after pressing return/enter, no replacement happens. this is useful for preventing 'x' to match when you want to bind 'xx' also. + * `<keycmd>` ends on a different character: you need to type the full string, which will trigger the command immediately, without pressing enter/return. + * TODO explain stacked bindings and multi-stage (is that the same?) and what else am i missing? modkeys, showing a prompt mid-bind. + The `<keycmd>` can be any representation of a key on your keyboard or a mousebutton. (note: not all mousebuttons work correctly yet) + examples: + * `event BIND o _ = uri %s` + - uzbl will load the url when you type: 'o <url><enter>' + * `event BIND /* = search %s` + - a search command which is called on every character typed after the slash, letting you see the search narrow down while typing. + - Hitting return, enter or esc will terminate the search. + * `event BIND ZZ = exit` + - When you type `ZZ` and nothing else, the exit command will be triggered immediately. + - `MODE_CONFIG`: ?? + request MODE_CONFIG <mode> <key> = <value + - `ON_EVENT`: allows you to bind misc commands to misc events + request ON_EVENT <EVENT_NAME> <command> + - `PROGRESS_CONFIG` + request PROGRESS_CONFIG <key> = <value> + - `MODMAD` + request MODMAP From To + - `IGNORE_KEY` + request IGNORE_KEY <glob> + - `MODKEY_ADDITION` + request MODKEY_ADDITION <key1> <key2> <keyn> <result> + - `TOGGLE_MODES` + event TOGGLE_MODES <mode1> <mode2> ... <moden> + - `APPEND_KEYCMD`: append `<string> to keycmd + - `INJECT_KEYCMD <string>`: replace keycmd by `<string>` + - `KEYCMD_DELETE` + - `KEYCMD_STRIP_WORD` + - `KEYCMD_EXEC_CURRENT`: (tries to) execute whatever is in the keycmd + - `SET_KEYCMD` + - `SET_CURSOR_POS` + - `START_COMPLETION`: TODO explain completion + + ### COMMAND LINE ARGUMENTS uzbl [ uri ] diff --git a/examples/config/uzbl/config b/examples/config/uzbl/config index 7c78ead..0fa7434 100644 --- a/examples/config/uzbl/config +++ b/examples/config/uzbl/config @@ -8,6 +8,8 @@ set prefix = /usr/local # Config related events (use the request function): # request BIND <keycmd> = <command> set bind = request BIND +# request MODE_BIND <mode spec> <keycmd> = <command> +set mode_bind = request MODE_BIND # request MODE_CONFIG <mode> <key> = <value set mode_config = request MODE_CONFIG # request ON_EVENT <EVENT_NAME> <command> @@ -161,6 +163,7 @@ menu_editable_add Open in @external_editor = script @scripts_dir/extedit.js @bind >> = scroll vertical end @bind ^ = scroll horizontal begin @bind $ = scroll horizontal end +@mode_bind global,-insert <Space> = scroll vertical end @bind b = back @bind m = forward @bind S = stop |