### CONFIGURATION / CONTROL:
-The general idea is that uzbl by default is very bare bones. you can send it commands to update settings and perform actions, through various interfaces. (TODO: some default settings)
-For examples, please see the sample config(s).
+The general idea is that uzbl by default is very bare bones. you can send it commands to update settings and perform actions, through various interfaces.
+There is a limited default configuration. Please see config.h to see what it contains.
+By default, there are *no* keybinds defined at all. (Default keybinds would work counterproductive when you try to customize)
+For examples of the possibilities what you can do, please see the sample config(s).
There are several interfaces to interact with uzbl:
* uzbl --config <filename>: <filename> will be read line by line, and the commands in it will be executed. useful to configure uzbl at startup.
ACT <action>
This tells uzbl to execute an action immediately. The simplest example of this would be `act exit`; you know what that'll do.
- KEYCMD <string>
-This sets the interactive command buffer to `<string>`. Keycmd is primarily useful for scripts that help you type a command while still letting you edit it before execution.
-For example, if you have a binding like "o _" that opens an URL, then you could create a binding `O` that spawns a script which will set the command buffer to "o current-uri-here", letting you enter relative URLs easily.
(See sample config)
### ACTIONS
* `forward`
* `scroll_vert <amount>`
* `scroll_horz <amount>`
+ - amount is given in pixels(?) or as a percentage of the size of the view
+ - set amount to 100% to scroll a whole page
* `scroll_begin`
* `scroll_end`
* `reload`
* `zoom_in`
* `zoom_out`
* `uri <address>`
-* `script <body>`
+* `js <body>`
- execute the javascript in `<body>`
- remember that the commands, and thus actions, must not contain line breaks
+* `script <file>`
+ - execute the javascript in `<file>`
* `toggle_status`
* `spawn <executable> <additonal args>`
- runs a command; see EXTERNAL SCRIPTS for details
* `exit`
* `search <string>`
* `search_reverse <string>`
-* `toggle_insert_mode`
+ - search with no string will search for the next/previous occurrence of the string previously searched for
+* `toggle_insert_mode <optional state>`
+ - if the optional state is 0, disable insert mode. If 1, enable insert mode.
* `runcmd`
- can be used for running a command such as SET or BIND
+* `keycmd <string>`
+* `keycmd_nl <string>`
+ - keycmd sets the interactive command buffer to `<string>`. If the given string is a valid binding, it will execute. `Keycmd_nl` is like `keycmd`, but it also emulates a press of return, causing bindings with a parameter to execute. For example, `keycmd_nl o google.com` would load the said url if you have a binding like `bind o _ = uri %s`.
+* `keycmd_bs`
+ - erase (backspace) one character from the command buffer
+* `chain <action> <action> ..`
+ - use for chaining multiple actions
+ - remember to quote the actions; one action must come as one parameter
### VARIABLE REPLACEMENT