aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Makefile4
-rw-r--r--docs/config-syntax38
-rw-r--r--examples/configs/sampleconfig70
-rw-r--r--examples/configs/sampleconfig-dev92
4 files changed, 84 insertions, 120 deletions
diff --git a/Makefile b/Makefile
index 622a79a..2d6b8c9 100644
--- a/Makefile
+++ b/Makefile
@@ -6,10 +6,10 @@ test: uzbl
./uzbl --uri http://www.uzbl.org
test-config: uzbl
- ./uzbl --uri http://www.uzbl.org --config examples/configs/sampleconfig-dev
+ ./uzbl --uri http://www.uzbl.org < examples/configs/sampleconfig-dev
test-config-real: uzbl
- ./uzbl --uri http://www.uzbl.org --config /usr/share/uzbl/examples/configs/sampleconfig
+ ./uzbl --uri http://www.uzbl.org < /usr/share/uzbl/examples/configs/sampleconfig
clean:
rm -f uzbl
diff --git a/docs/config-syntax b/docs/config-syntax
new file mode 100644
index 0000000..2315b6c
--- /dev/null
+++ b/docs/config-syntax
@@ -0,0 +1,38 @@
+Configuration setting at startup and changing at runtime happens through one of these:
+- stdin at startup (TODO: see if we can keep listening while running) (write command to it + "\n")
+- fifo (write command to it + "\n")
+- socket (uzblctrl -s <file> -c <comand>
+
+Lines written to the above starting with '#' or being empty, are ignored.
+
+** Command syntax:
+commands can have no, one or 2 arguments.
+
+<command>[\t<arg1>[\t<arg2>]]
+
+The 'bind' command is a special command, where argument 1 is a keyboard character (combo) and argument 2 is a command as specified above.
+You can also use a '_' in the <chars> part to denote where you pass on whatever you want, which will be replaced into the specififed command whereever %s is mentioned
+
+** commands
+Commands where one of the arguments is "parameter" expect this arugment to be a valid variable identifier (eg uzbl.behave.status_format)
+
+set parameter value # make sure the value complies with the datatype.
+toggle parameter # expects parameter to be a gboolean. (eg status, insert_mode, ..)
+get parameter
+bind <chars> <command>
+script <JS code to execute>
+script_file <filename containing JS code to execute>
+back
+forward
+scroll_vert <int>
+scroll_horz <int>
+reload
+reload_ign_cache
+stop
+zoom_in
+zoom_out
+spawn <filename for process to start asynchronously>
+exit
+search <string>
+
+The 'set' command may do more then just set the variable. eg 'set uri' commands will also cause uzbl to navigate to the uri. \ No newline at end of file
diff --git a/examples/configs/sampleconfig b/examples/configs/sampleconfig
deleted file mode 100644
index 92a7cfc..0000000
--- a/examples/configs/sampleconfig
+++ /dev/null
@@ -1,70 +0,0 @@
-
-# example uzbl config. in a real config, we should obey the xdg spec
-
-# all keys in the behavior group are optional. if not set, the corresponding behavior is disabed.
-# bindings_internal denote keys to trigger actions internally in uzbl
-# bindings_external denote keys to trigger scripts outside uzbl
-
-# keyboard behavior is vimstyle by default (all actions -> 1 key). set
-# always_insert_mode to always be in insert mode and disable going out of it.
-# if you do this, make sure you've set a modkey so you can reach the actions
-# from insert mode by combining them with the modkey
-
-[behavior]
-history_handler = /usr/share/uzbl/examples/scripts/history.sh
-download_handler = /usr/share/uzbl/examples/scripts/download.sh
-cookie_handler = /usr/share/uzbl/examples/scripts/cookies.sh
-status_format = <span font_family="monospace"><span background="khaki" foreground="black">MODE</span> [<span weight="bold" foreground="red">KEYCMD</span>] <span foreground="#606060"> LOAD_PROGRESSBAR </span><span foreground="#99FF66">URI</span> <span foreground="khaki">NAME</span></span>
-# you can optionally use this setting to override the background color of the statusbar from your GTK theme.
-status_background = #303030
-fifo_dir = /tmp
-socket_dir = /tmp
-always_insert_mode = 0
-modkey = Mod1
-show_status = 1
-status_top = 0
-
-[bindings]
-# scroll down/up/left/right
-j = scroll_vert 20
-k = scroll_vert -20
-h = scroll_horz -20
-l = scroll_horz 20
-b = back
-m = forward
-s = stop
-r = reload
-R = reload_ign_cache
-+ = zoom_in
-- = zoom_out
-t = toggle_status
-#hilight matches
-/_ = search %s
-#jump to next
-; = search
-gh = uri http://www.uzbl.org
-o _ = uri %s
-:wiki _ = uri http://wiki.archlinux.org/index.php/Special:Search?search=%s&go=Go
-gg _ = uri http://www.google.com/search?q=%s
-i = insert_mode
-B = spawn /usr/share/uzbl/examples/scripts/insert_bookmark.sh
-u = spawn /usr/share/uzbl/examples/scripts/load_url_from_history.sh
-U = spawn /usr/share/uzbl/examples/scripts/load_url_from_bookmarks.sh
-ZZ = exit
-S = script alert("hi");
-
-# Keyboard based link following: work in progress! No C DOM bindings yet, no click() event for hyperlinks so no referrer set..Quite basic but does the job for now...
-#hit F to toggle the Hints (now in form of link numbering)
-F = script for (var i=0; i < document.links.length; i++) {var uzblid = 'uzbl_link_hint_';var li = document.links[i];var pre = document.getElementById(uzblid+i);if (pre) {li.removeChild(pre);} else {var hint = document.createElement('div');hint.setAttribute('id',uzblid+i);hint.innerHTML = i;hint.style.display='inline';hint.style.lineHeight='90%';hint.style.backgroundColor='red';hint.style.color='white';hint.style.fontSize='small-xx';hint.style.fontWeight='light';hint.style.margin='0px';hint.style.padding='2px';hint.style.position='absolute';hint.style.textDecoration='none';hint.style.left=li.style.left;hint.style.top=li.style.top;li.insertAdjacentElement('afterBegin',hint);}}
-#hit f followed by linknumber and ENTER to follow that link
-f_ = script window.location = document.links[%s].href;
-
-[network]
-proxy_server =
-#values 0-3
-http_debug = 0
-user-agent = uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%)
-# Example user agent containing everything:
-#user-agent = Uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%) (%sysname% %nodename% %kernrel% %kernver% %arch-system% [%arch-uzbl%]) (Commit %commit%)
-max_conns =
-max_conns_per_host =
diff --git a/examples/configs/sampleconfig-dev b/examples/configs/sampleconfig-dev
index 69c7362..119e3a0 100644
--- a/examples/configs/sampleconfig-dev
+++ b/examples/configs/sampleconfig-dev
@@ -10,63 +10,59 @@
# if you do this, make sure you've set a modkey so you can reach the actions
# from insert mode by combining them with the modkey
-[behavior]
-history_handler = ./examples/scripts/history.sh
-download_handler = ./examples/scripts/download.sh
-cookie_handler = ./examples/scripts/cookies.sh
-fifo_dir = /tmp
-socket_dir = /tmp
-always_insert_mode = 0
-modkey = Mod1
-show_status = 1
-status_top = 0
-status_format = <span font_family="monospace"><span background="khaki" foreground="black">MODE</span> [<span weight="bold" foreground="red">KEYCMD</span>] <span foreground="#606060"> LOAD_PROGRESSBAR </span><span foreground="#99FF66">URI</span> <span foreground="khaki">NAME</span></span>
+set uzbl.behave.history_handler ./examples/scripts/history.sh
+set uzbl.behave.download_handler ./examples/scripts/download.sh
+set uzbl.behave.cookie_handler ./examples/scripts/cookies.sh
+set uzbl.behave.fifo_dir /tmp
+set uzbl.behave.socket_dir /tmp
+set uzbl.behave.always_insert_mode 0
+set uzbl.behave.modkey Mod1
+set uzbl.behave.show_status 1
+set uzbl.behave.status_top 0
+set uzbl.behave.status_format <span font_family="monospace"><span background="khaki" foreground="black">MODE</span> [<span weight="bold" foreground="red">KEYCMD</span>] <span foreground="#606060"> LOAD_PROGRESSBAR </span><span foreground="#99FF66">URI</span> <span foreground="khaki">NAME</span></span>
# you can optionally use this setting to override the background color of the statusbar from your GTK theme.
-status_background = #303030
+set uzbl.behave.status_background #303030
-[bindings]
# scroll down/up/left/right
-j = scroll_vert 20
-k = scroll_vert -20
-h = scroll_horz -20
-l = scroll_horz 20
-b = back
-m = forward
-s = stop
-r = reload
-R = reload_ign_cache
-+ = zoom_in
-- = zoom_out
-t = toggle_status
+bind j scroll_vert 20
+bind k scroll_vert -20
+bind h scroll_horz -20
+bind l scroll_horz 20
+bind b back
+bind m forward
+bind s stop
+bind r reload
+bind R reload_ign_cache
+bind + zoom_in
+bind - zoom_out
+bind t toggle uzbl.behave.show_status
#hilight matches
-/_ = search %s
+bind /_ search %s
#jump to next
-; = search
-gh = uri http://www.uzbl.org
-o _ = uri %s
-:wiki _ = uri http://wiki.archlinux.org/index.php/Special:Search?search=%s&go=Go
-gg _ = uri http://www.google.com/search?q=%s
-i = insert_mode
-B = spawn ./examples/scripts/insert_bookmark.sh
-u = spawn ./examples/scripts/load_url_from_history.sh
-U = spawn ./examples/scripts/load_url_from_bookmarks.sh
-ZZ = exit
-S = script alert("hi");
-
+bind ; search
+bind gh set uzbl.state.uri http://www.uzbl.org
+bind o _ set uzbl.state.uri %s
+bind :wiki _ set uzbl.state.uri http://wiki.archlinux.org/index.php/Special:Search?search=%s&go=Go
+bind gg _ set uzbl.state.uri http://www.google.com/search?q=%s
+bind i toggle uzbl.behave.insert_mode
+bind B spawn ./examples/scripts/insert_bookmark.sh
+bind u spawn ./examples/scripts/load_url_from_history.sh
+bind U spawn ./examples/scripts/load_url_from_bookmarks.sh
+bind ZZ exit
+bind S script alert("hi");
# Keyboard based link following: work in progress! No C DOM bindings yet, no click() event for hyperlinks so no referrer set..Quite basic but does the job for now...
#hit F to toggle the Hints (now in form of link numbering)
-F = script for (var i=0; i < document.links.length; i++) {var uzblid = 'uzbl_link_hint_';var li = document.links[i];var pre = document.getElementById(uzblid+i);if (pre) {li.removeChild(pre);} else {var hint = document.createElement('div');hint.setAttribute('id',uzblid+i);hint.innerHTML = i;hint.style.display='inline';hint.style.lineHeight='90%';hint.style.backgroundColor='red';hint.style.color='white';hint.style.fontSize='small-xx';hint.style.fontWeight='light';hint.style.margin='0px';hint.style.padding='2px';hint.style.position='absolute';hint.style.textDecoration='none';hint.style.left=li.style.left;hint.style.top=li.style.top;li.insertAdjacentElement('afterBegin',hint);}}
+bind F script for (var i=0; i < document.links.length; i++) {var uzblid = 'uzbl_link_hint_';var li = document.links[i];var pre = document.getElementById(uzblid+i);if (pre) {li.removeChild(pre);} else {var hint = document.createElement('div');hint.setAttribute('id',uzblid+i);hint.innerHTML = i;hint.style.display='inline';hint.style.lineHeight='90%';hint.style.backgroundColor='red';hint.style.color='white';hint.style.fontSize='small-xx';hint.style.fontWeight='light';hint.style.margin='0px';hint.style.padding='2px';hint.style.position='absolute';hint.style.textDecoration='none';hint.style.left=li.style.left;hint.style.top=li.style.top;li.insertAdjacentElement('afterBegin',hint);}}
#hit f followed by linknumber and ENTER to follow that link
-f_ = script window.location = document.links[%s].href;
+bind f_ script window.location = document.links[%s].href;
+
-[network]
# to start a local socks server, do : ssh -fND localhost:8118 localhost
-#proxy_server = http://127.0.0.1:8118
+set uzbl.net.proxy_url http://127.0.0.1:8118
#values 0-3
-http_debug = 0
-user-agent = uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%)
+set uzbl.behave.http_debug = 0
+set uzbl.net.useragent uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%)
# Example user agent containing everything:
-#user-agent = Uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%) (%sysname% %nodename% %kernrel% %kernver% %arch-system% [%arch-uzbl%]) (Commit %commit%)
-max_conns =
-max_conns_per_host =
-
+#set uzbl.net.useragent Uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%) (%sysname% %nodename% %kernrel% %kernver% %arch-system% [%arch-uzbl%]) (Commit %commit%)
+set uzbl.net.max_conns 0
+set uzbl.net.max_conns_host 0