2 # example uzbl config. in a real config, we should obey the xdg spec
3 # all settings are optional. you can use uzbl without any config at all (but it won't do much)
5 # keyboard behavior is vimstyle by default (all actions -> 1 key). set
6 # always_insert_mode to always be in insert mode and disable going out of it.
7 # if you do this, make sure you've set a modkey so you can reach the actions
8 # from insert mode by combining them with the modkey
10 # TODO: ability to attach misc things (spawn <foo>, script <bar>,.. to internal events)
11 set history_handler = /usr/share/uzbl/examples/scripts/history.sh
12 set download_handler = /usr/share/uzbl/examples/scripts/download.sh
13 #set cookie_handler = /usr/share/uzbl/examples/scripts/cookies.sh does not work yet
14 set minimum_font_size = 6
15 set default_font_size = 11
17 # use with bind ... = sh <shell-oneliner>
18 # notice the '' - it's a spacer to keep bash and sh from shifting the positional parameters
19 # by one, so they will appear in the same position as with scripts invoked via spawn
20 set shell_cmd = sh -c %s ''
24 # Behaviour and appearance
26 # you can optionally use this setting to override the background color of the statusbar from your GTK theme.
27 set status_background = #303030
28 set 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 foreground="orange">MSG</span><span foreground="#606060">SELECTED_URI</span></span>
30 # define how your titlebar should look like. (short = statusbar is also shown, long = show everything you must see if statusbar is off)
31 set title_format_short = TITLE - Uzbl browser <NAME>
32 set title_format_long = KEYCMD MODE TITLE - Uzbl browser <NAME> > SELECTED_URI
35 # reset to command mode when new page is loaded
36 set reset_command_mode = 1
37 # this var has precedence over reset_command_mode
38 set always_insert_mode = 0
39 # to start a local socks server, do : ssh -fND localhost:8118 localhost
40 #set proxy_url = http://127.0.0.1:8118
43 #set useragent = uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%)
44 # Example user agent containing everything:
45 #set useragent = Uzbl (Webkit %webkit-major%.%webkit-minor%.%webkit-micro%) (%sysname% %nodename% %kernrel% %kernver% %arch-system% [%arch-uzbl%]) (Commit %commit%)
47 #set max_conns_host = 0
53 bind j = scroll_vert 20
54 bind k = scroll_vert -20
55 bind h = scroll_horz -20
56 bind l = scroll_horz 20
57 bind << = scroll_begin
63 bind R = reload_ign_cache
66 bind t = toggle_status
67 # Hilight matches. Notice the * after the slash - it makes the command incremental, i.e. gets called
68 # on every character you type. You can do `bind /_ = search %s' if you want it less interactive.
70 bind ?* = search_reverse %s
73 bind N = search_reverse
74 bind gh = uri http://www.uzbl.org
77 bind :wiki _ = uri http://wiki.archlinux.org/index.php/Special:Search?search=%s&go=Go
78 bind gg _ = uri http://www.google.com/search?q=%s
80 #TODO: no 'toggle' command?
81 bind B = spawn /usr/share/uzbl/examples/scripts/insert_bookmark.sh
82 bind U = spawn /usr/share/uzbl/examples/scripts/load_url_from_history.sh
83 bind u = spawn /usr/share/uzbl/examples/scripts/load_url_from_bookmarks.sh
84 # with the sample yank script, you can yank one of the arguments into clipboard/selection
85 bind yurl = spawn /usr/share/uzbl/examples/scripts/yank.sh 8 primary
86 bind ytitle = spawn /usr/share/uzbl/examples/scripts/yank.sh 9 clipboard
88 bind S = script alert("hi");
89 # example showing how to use sh
90 # it sends a command to the fifo, whose path is told via a positional param
91 # if fifo_dir is not set, it'll echo to a file named (null) somewhere >:) remember to delete it
92 bind XS = sh 'echo "act script alert (\"This is sent by the shell via a fifo\")" > "$4"'
93 # 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...
94 #hit F to toggle the Hints (now in form of link numbering)
95 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);}}
96 #hit f followed by linknumber and ENTER to follow that link
97 bind f_ = script window.location = document.links[%s].href;
99 # "home" page if you will