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 commands -> 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 commands
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 # Usually you want to spawn a script to handle things, but any command (such as sh) can be used
12 set history_handler = spawn $XDG_DATA_HOME/uzbl/scripts/history.sh
13 set download_handler = spawn $XDG_DATA_HOME/uzbl/scripts/download.sh
14 set cookie_handler = spawn $XDG_DATA_HOME/uzbl/scripts/cookies.py
16 set minimum_font_size = 6
18 ## monospace_size defaults to font_size, but you can alter it independently
19 #set monospace_size = 10
21 ## Display or supress images within html sites
22 #set autoload_images = 0
24 ## Shrink images to window size
25 #set autoshrink_images = 0
28 #set enable_spellcheck = 1
31 #set enbale_private = 0
33 ## The URI of a stylesheet that is applied to every page
34 #set stylesheet_uri = http://www.user.com/mystylelesheet.css
36 ## enable/disable JavaScript
37 #set disbale_scripts = 1
39 ## Whether text areas are resizable
40 #set resizeable_text_areas = 1
42 ## The default encoding used to display text
43 #set default_encoding = iso-8859-1
45 ## Whether background images should be printed
46 #set print_background = 0
48 ## Enforce a resolution of 96 DPI. This is meant for compatibility with
49 ## web pages which cope badly with different screen resolutions
50 #set enforce_96_dpi = 1
54 # use with bind ... = sh <shell-oneliner>
59 # Behaviour and appearance
61 # you can optionally use this setting to override the background color of the statusbar from your GTK theme.
62 set status_background = #303030
63 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>
65 # define how your titlebar should look like. (short = statusbar is also shown, long = show everything you must see if statusbar is off)
66 set title_format_short = TITLE - Uzbl browser <NAME>
67 set title_format_long = KEYCMD MODE TITLE - Uzbl browser <NAME> > SELECTED_URI
68 # set the characters to use for, and the width of the progress bar
69 set status_pbar_done = *
70 set status_pbar_pending = -
71 set status_pbar_width = 12
72 set insert_indicator = I
73 set command_indicator = C
75 # reset to command mode when new page is loaded
76 set reset_command_mode = 1
77 # this var has precedence over reset_command_mode
78 set always_insert_mode = 0
80 # to start a local socks server, do : ssh -fND localhost:8118 localhost
81 #set proxy_url = http://127.0.0.1:8118
84 #set useragent = uzbl (Webkit WEBKIT_MAJOR.WEBKIT_MINOR.WEBKIT_MICRO)
85 # Example user agent containing everything:
86 set useragent = Uzbl (Webkit WEBKIT_MAJOR.WEBKIT_MINOR.WEBKIT_MICRO) (SYSNAME NODENAME KERNREL KERNVER ARCH_SYSTEM [ARCH_UZBL]) (Commit COMMIT)
88 #set max_conns_host = 0
94 bind j = scroll_vert 20
95 bind k = scroll_vert -20
96 bind h = scroll_horz -20
97 bind l = scroll_horz 20
98 bind << = scroll_begin
104 bind R = reload_ign_cache
107 bind T = toggle_zoom_type
108 bind 1 = sh "echo set zoom_level = 1.0 > $4"
109 bind 2 = sh "echo set zoom_level = 2.0 > $4"
110 bind t = toggle_status
111 # Hilight matches. Notice the * after the slash - it makes the command incremental, i.e. gets called
112 # on every character you type. You can do `bind /_ = search %s' if you want it less interactive.
114 bind ?* = search_reverse %s
117 bind N = search_reverse
118 bind gh = uri http://www.uzbl.org
121 bind :wiki _ = uri http://wiki.archlinux.org/index.php/Special:Search?search=%s&go=Go
122 bind gg _ = uri http://www.google.com/search?q=%s
123 bind i = toggle_insert_mode
124 # disable insert mode (1 to enable). note that Esc works to disable, regardless of this setting
125 bind I = toggle_insert_mode 0
126 # Enclose the executable in quotes if it has spaces. Any additional parameters you use will
127 # appear AFTER the default parameters
128 bind B = spawn $XDG_DATA_HOME/uzbl/scripts/insert_bookmark.sh
129 bind U = spawn $XDG_DATA_HOME/uzbl/scripts/load_url_from_history.sh
130 bind u = spawn $XDG_DATA_HOME/uzbl/scripts/load_url_from_bookmarks.sh
131 # with the sample yank script, you can yank one of the arguments into clipboard/selection
132 bind yurl = spawn $XDG_DATA_HOME/uzbl/scripts/yank.sh 6 primary
133 bind ytitle = spawn $XDG_DATA_HOME/uzbl/scripts/yank.sh 7 clipboard
134 # does the same as yurl but without needing a script
135 bind y2url = sh 'echo -n $6 | xclip'
136 # go the page from primary selection
137 bind p = sh "echo uri `xclip -selection primary -o` > $4"
138 # go to the page in clipboard
139 bind P = sh "echo uri `xclip -selection clipboard -o` > $4"
141 bind S = js alert("hi");
142 # example showing how to use sh
143 # it sends a command to the fifo, whose path is told via a positional param
144 # if fifo_dir is not set, it'll echo to a file named (null) somewhere >:) remember to delete it
145 # The body of the shell command should be one parameter, so if it has spaces like here,
146 # you must enclose it in quotes. Remember to escape (and double-escape) quotes and backslashes
147 # in the body. Any additional parameters you use will appear AFTER the default parameters (cfg file
148 # path, fifo & socket dirs, etc.)
149 bind XS = sh 'echo "js alert (\\"This is sent by the shell via a fifo\\")" > "$4"'
150 bind dump = sh "echo dump_config > $4"
151 # this script allows you to configure (per domain) values to fill in form fields (eg login information) and to fill in these values automatically
152 bind za = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.sh
153 bind ze = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.sh edit
154 bind zn = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.sh new
155 bind zl = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.sh load
157 # other - more advanced - implementation using perl: (could not get this to run - Dieter )
158 bind LL = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.pl load
159 bind LN = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.pl new
160 bind LE = spawn $XDG_DATA_HOME/uzbl/scripts/formfiller.pl edit
162 # we ship some javascripts to do keyboard based link hinting/following. (webkit does not have C DOM bindings yet)
163 # this is similar to how it works in vimperator (and konqueror)
164 # TODO: did we resolve: "no click() event for hyperlinks so no referrer set" ?
165 #hit F to toggle the Hints (now in form of link numbering)
166 bind F = script $XDG_DATA_HOME/uzbl/scripts/hint.js
167 # the most stable version:
168 bind fl* = script $XDG_DATA_HOME/uzbl/scripts/follow_Numbers.js %s
169 # using strings, not polished yet:
170 bind fL* = script $XDG_DATA_HOME/uzbl/scripts/follow_Numbers_Strings.js %s
172 # you can use this to disable all plugins
173 set disable_plugins = 0
175 set icon = ./uzbl.png
177 # "home" page if you will