You are not logged in.

#1051 2013-01-28 23:26:01

Arch Linux f@h Team Member
From: Sweden, Borlange
Registered: 2009-02-23
Posts: 736

Re: uzbl. A browser that adheres to the unix philosophy.

Would making linkfollower work in the "new" gmail (not basic html) require something less than a complete rewrite on how it works?


#1052 2013-04-01 11:56:36

Registered: 2013-04-01
Posts: 1

Re: uzbl. A browser that adheres to the unix philosophy.

Hi !
First, I'm sorry for my broken langage --- I'm french.
I post this message to obtain some help about uzbl.
I use it for a long time ago now, but I have some trouble since my new install. I'm on a debian Wheezy, And Yes, I know, I'me in an Arch Linux forum. But i's really difficult to find a complete and useful forum which talk about the powerfull uzbl.
Well, theses troubles are very strange and I don't know how to repair them.
I explain : I can't access to some website where there is some javascript to managed the text fields.
- For example, when I want to connect me at groovesharkDOTcom, I fill the login and password text fields, but I can't valid them. I rest in the insert mode. And if I made Escape, I loose the focus and the login window.
- Another day, I have to connect my sister in her Hotmail mailbox ; I success to fill the text fields, but when I valid, the same window refresh it. Ourobouros inside.
- I think it come from the javascript, but I'm not sure.
- At th beginning, I think it come from Privoxy, but even disabling it, it changes nothing.

If anyone can help help me...

There is my config file.
I custom it a bit. I changed the colours, set the url_proxy, and disabled the cookie.

# Example uzbl config. All settings are optional. You can use uzbl without
# any config at all (but it won't do much).

# === Core settings ==========================================================

# common directory locations
set prefix      = @(echo $PREFIX)@
set data_home   = @(echo $XDG_DATA_HOME)@
set cache_home  = @(echo $XDG_CACHE_HOME)@
set config_home = @(echo $XDG_CONFIG_HOME)@

# Interface paths.
set fifo_dir   = /tmp
set socket_dir = /tmp

set shell_cmd       = sh -c

# === General config aliases =================================================

# Config related events (use the request function):
# request MODE_CONFIG <mode> <key> = <value>
set mode_config     = request MODE_CONFIG
# request ON_EVENT <EVENT_NAME> <command>
set on_event        = request ON_EVENT
# request ON_SET   <key/glob> <command>
set on_set          = request ON_SET
# request MODMAP <From> <To>
set modmap          = request MODMAP
# request IGNORE_KEY <glob>
set ignore_key      = request IGNORE_KEY
# request TOGGLE_MODES <mode1> <mode2> ... <moden>
set toggle_modes    = request TOGGLE_MODES

set set_mode        = set mode =
set set_status      = set status_message =

# Spawn path shortcuts. In spawn the first dir+path match is used in "dir1:dir2:dir3:executable"
set scripts_dir      = @data_home/uzbl:@prefix/share/uzbl/examples/data:scripts

# === Hardcoded handlers =====================================================

# These handlers can't be moved to the new event system yet as we don't
# support events that can wait for a response from a script.
set scheme_handler      = sync_spawn @scripts_dir/
#set request_handler     = sync_spawn @scripts_dir/
set authentication_handler = sync_spawn @scripts_dir/
set download_handler    = sync_spawn @scripts_dir/

# === Dynamic event handlers =================================================

#   What to do when a website wants to open a new window:
# Open link in new window
#@on_event   NEW_WINDOW     sh 'uzbl-browser ${1:+-u "$1"}' %r
# Open in current window (also see the REQ_NEW_WINDOW event handler below)
#@on_event   NEW_WINDOW     uri %s
# Open in new tab. Other options are NEW_TAB_NEXT, NEW_BG_TAB and NEW_BG_TAB_NEXT.
@on_event   NEW_WINDOW     event NEW_TAB %s

#   What to do when the user requests a new window:
# If your the NEW_WINDOW handler opens the uri in the current window, you'll
# probably want to change this handler to open a new window or tab.
@on_event   REQ_NEW_WINDOW event NEW_WINDOW %s

# Load start handler
@on_event   LOAD_START     @set_status <span foreground="white">wait</span>
# Reset the keycmd on navigation
@on_event   LOAD_START     @set_mode

# Load commit handlers
@on_event   LOAD_COMMIT    @set_status <span foreground="green">recv</span>

  # add some javascript to the page for other 'js' and 'script' commands to access later.
@on_event   LOAD_COMMIT    js uzbl = {};
@on_event   LOAD_COMMIT    script @scripts_dir/formfiller.js
@on_event   LOAD_COMMIT    script @scripts_dir/follow.js

# Userscripts/per-site-settings. See the script and the example configuration for details
#@on_event   LOAD_COMMIT    spawn @scripts_dir/ @data_home/uzbl/per-site-settings

# Load finish handlers
@on_event   LOAD_FINISH    @set_status <span foreground="#1A7BD5">done</span>
#@on_event   LOAD_FINISH    spawn @scripts_dir/

# Switch to insert mode if a (editable) html form is clicked
@on_event   FOCUS_ELEMENT  sh 'if [ "$1" = INPUT -o "$1" = TEXTAREA -o "$1" = SELECT ]; then echo "@set_mode insert" > $UZBL_FIFO; fi' %s
# Switch to command mode if anything else is clicked
@on_event   ROOT_ACTIVE    @set_mode command

# Example CONFIG_CHANGED event handler
#@on_event  CONFIG_CHANGED print Config changed: %1 = %2

# Scroll percentage calculation
@on_event   SCROLL_VERT    set scroll_message = \@<(function(curr, min, max, size){if(max == size) return '--'; var p=(curr/(max - size)); return Math.round(10000*p)/100;})(%1,%2,%3,%4)>\@%

# === Behaviour and appearance ===============================================

# Custom CSS can be defined here, including link follower hint styles
set stylesheet_uri = file://@config_home/uzbl/style.css

set show_status       = 1
set status_top        = 0
set status_background = #1A1B1D

set modcmd_style      = weight="bold" foreground="red"
set keycmd_style      = weight="light" foreground="red"
set prompt_style      = foreground="grey"
set cursor_style      = underline="single"
set completion_style  = foreground="green"
set hint_style        = weight="bold"

set mode_section      = <span background="#1A7BD5" foreground="white">[\@[\@mode_indicator]\@]</span>
set keycmd_section    = [<span \@prompt_style>\@[\@keycmd_prompt]\@</span><span \@modcmd_style>\@modcmd</span><span \@keycmd_style>\@keycmd</span><span \@completion_style>\@completion_list</span>]
set progress_section  = <span foreground="#1A7BD5">\@[\@progress.output]\@</span>
set scroll_section    = <span foreground="#1A7BD5">\@[\@scroll_message]\@</span>
set uri_section       = <span foreground="#114E87">\@[\@uri]\@</span>
set name_section      = <span foreground="#909090">\@[\@NAME]\@</span>
set status_section    = <span foreground="white">\@status_message</span>
set selected_section  = <span foreground="#1A7BD5">\@[\@SELECTED_URI]\@</span>

set download_section  = <span foreground="white">\@downloads</span>

set status_format       = <span font_family="monospace">@mode_section @keycmd_section @progress_section @name_section @status_section @scroll_section @selected_section @download_section</span>
set status_format_right = <span font_family="monospace"><span foreground="#666">uri:</span> @uri_section</span>

set title_format_long = \@keycmd_prompt \@raw_modcmd \@raw_keycmd \@TITLE - Uzbl browser <\@NAME> \@SELECTED_URI

# Progress bar config
# %d = done, %p = pending %c = percent done, %i = int done, %s = spinner,
# %t = percent pending, %o = int pending, %r = sprite scroll
set progress.width      = 8
set progress.format     = [%d>%p]%c
set progress.done       = =
set progress.pending    =

# === Useragent setup ========================================================

set useragent         = Uzbl (Webkit @{WEBKIT_MAJOR}.@{WEBKIT_MINOR}) (@(+uname -sm)@ [@ARCH_UZBL])

# === Proxy ==================================================================

set proxy_url =

# === Configure cookie blacklist ========================================================

# Accept 'session cookies' from (when you have a whitelist all other cookies are dropped)
#request WHITELIST_COOKIE domain '$' expires '^$'

# Drop google analytics tracking cookies (applied after whitelists if any)
#request BLACKLIST_COOKIE name '^__utm.$'

# === SSL related configuration ==============================================

# Set it to certificates store of your distribution, or your own CAfile.
set ssl_ca_file = /etc/ssl/certs/ca-certificates.crt
set ssl_verify = 1
# Command to toggle ssl_verify value:
@cbind  !ssl = chain 'toggle ssl_verify' 'reload'
# Example SSL error handler:
@on_event   LOAD_ERROR    js var patt=new RegExp('SSL handshake failed'); if (patt.test('%3')) {alert ('%3');}

# === Key binding configuration ==============================================
# --- Internal modmapping and ignoring ---------------------------------------

#modmap <From>          <To>
@modmap <Control>       <Ctrl>
@modmap <ISO_Left_Tab>  <Shift-Tab>
@modmap <space>         <Space>
@modmap <KP_Enter>      <Enter>

#ignore_key <glob>
@ignore_key <ISO_*>
@ignore_key <Shift>
@ignore_key <Multi_key>
@ignore_key <Mod2>

# --- Bind aliases -----------------------------------------------------------

# request BIND <bind cmd> = <command>
set bind      = request MODE_BIND global

# request MODE_BIND <mode> <bind cmd> = <command>
set mode_bind = request MODE_BIND

# Insert mode binding alias
set ibind     = @mode_bind insert

# Command mode binding alias
set cbind     = @mode_bind command

# Non-insert mode bindings alias (ebind for edit-bind).
set ebind     = @mode_bind global,-insert

# --- Global & keycmd editing binds ------------------------------------------

# Resets keycmd and returns to default mode.
@on_event  ESCAPE    @set_mode
@on_event  ESCAPE    event KEYCMD_CLEAR
@on_event  ESCAPE    js uzbl.follow.clearHints()
@on_event  ESCAPE    search_clear
@on_event  ESCAPE    js window.getSelection().removeAllRanges()
@bind   <Escape>     = event ESCAPE
@bind   <Ctrl>[      = event ESCAPE

# Commands for editing and traversing the keycmd.
@ebind  <Return>     = event KEYCMD_EXEC_CURRENT
@ebind  <Home>       = event SET_CURSOR_POS 0
@ebind  <End>        = event SET_CURSOR_POS -1
@ebind  <Left>       = event SET_CURSOR_POS -
@ebind  <Right>      = event SET_CURSOR_POS +
@ebind  <BackSpace>  = event KEYCMD_BACKSPACE
@ebind  <Delete>     = event KEYCMD_DELETE
@ebind  <Tab>        = event START_COMPLETION
# Readline-ish bindings.
@ebind  <Ctrl>w      = event KEYCMD_STRIP_WORD \ -./&?=
@ebind  <Ctrl>u      = event SET_KEYCMD
@ebind  <Ctrl>a      = event SET_CURSOR_POS 0
@ebind  <Ctrl>e      = event SET_CURSOR_POS -1

@ebind <Up>          = event HISTORY_PREV
@ebind <Down>        = event HISTORY_NEXT
@ebind <Ctrl>r<search:>_ = event HISTORY_SEARCH %s
# Keycmd injection/append examples.
#@ebind  <Ctrl>su = event INJECT_KEYCMD \@uri
#@ebind  <Ctrl>st = event INJECT_KEYCMD \@title
#@ebind  <Ctrl>du = event APPEND_KEYCMD \@uri
#@ebind  <Ctrl>dt = event APPEND_KEYCMD \@title

# --- Mouse bindings ---------------------------------------------------------

# Middle click open in new window
@bind  <Button2>  = sh 'if [ "$1" ]; then echo "event REQ_NEW_WINDOW $1" > "$UZBL_FIFO"; else echo "uri $(xclip -o | sed s/\\\@/%40/g)" > "$UZBL_FIFO"; fi' '\@SELECTED_URI'

# --- Keyboard bindings ------------------------------------------------------

# With this command you can enter in any command at runtime when prefixed with
# a colon.
@cbind    :_        = %s

# open a new window or a new tab (see the on_event NEW_WINDOW settings above)
@cbind  w            = event REQ_NEW_WINDOW

# Page movement binds
@cbind  j            = scroll vertical 20
@cbind  k            = scroll vertical -20
@cbind  h            = scroll horizontal -20
@cbind  l            = scroll horizontal 20
@cbind  <Page_Up>    = scroll vertical -100%
@cbind  <Page_Down>  = scroll vertical 100%
@cbind  <Ctrl>f      = scroll vertical 100%
@cbind  <Ctrl>b      = scroll vertical -100%
@cbind  <<           = scroll vertical begin
@cbind  >>           = scroll vertical end
@cbind  <Home>       = scroll vertical begin
@cbind  <End>        = scroll vertical end
@cbind  ^            = scroll horizontal begin
@cbind  $            = scroll horizontal end
@cbind  <Space>      = scroll vertical end
@cbind  G<Go To:>_   = scroll vertical %r!
@cbind  _G<Go To:>_  = scroll horizontal %r!

# Navigation binds
@cbind  b   = back
@cbind  m   = forward
@cbind  S   = stop
@cbind  r   = reload
@cbind  R   = reload_ign_cache

# Zoom binds
@cbind  +   = zoom_in
@cbind  -   = zoom_out
@cbind  T   = toggle zoom_type
@cbind  1   = set zoom_level = 1.0
@cbind  2   = set zoom_level = 2.0

# Appearance binds
@cbind  t   = toggle show_status

# Page searching binds
@cbind  /*  = search %s
@cbind  ?*  = search_reverse %s
# Jump to next and previous items
@cbind  n   = search
@cbind  N   = search_reverse

# Print pages to a printer
@cbind  <Ctrl>p = hardcopy

# Web searching binds
@cbind  ddg<DuckDuckGo:>_    = uri\@<encodeURIComponent(%r)>\@
@cbind  \\wiki<Wikipedia:>_  = uri\@<encodeURIComponent(%r)>\@&go=Go

# Handy binds
# Set function shortcut
@cbind  s<var:>_<value:>_  = set %1 = %2
# Exit binding
@cbind  ZZ                 = exit
# Dump config to stdout
@cbind  !dump              = sh 'echo dump_config > "$UZBL_FIFO"'
# Reload all variables in the config
@cbind  !reload            = sh "sed '/^# === Post-load misc commands/,$d' \"$UZBL_CONFIG\" | grep '^set ' > \"$UZBL_FIFO\""

# Use socat to directly inject commands into uzbl-core and view events
# raised by uzbl-core:
@cbind  <Ctrl><Mod1>t  = sh 'xterm -e "socat unix-connect:\"$UZBL_SOCKET\" -"'
#@cbind  <Ctrl><Mod1>t  = sh 'urxvt -e socat unix-connect:"$UZBL_SOCKET" -'

# Uri opening prompts
@cbind  o<uri:>_       = uri %s
# Or have it load the current uri into the keycmd for editing
@cbind  O<uri:\@uri>_  = uri %s

# Mode setting binds
@cbind  i        = @set_mode insert
@bind   <Ctrl>i  = @set_mode insert

# Hard-bound bookmarks
@cbind  gh  = uri

# New window binds
@cbind  gw  = event REQ_NEW_WINDOW

# SSL-ify bindings
@cbind  zs  = uri \@(echo "$UZBL_URI" | sed -e 's/^http:/https:/')\@
@cbind  zS  = event REQ_NEW_WINDOW \@(echo "$UZBL_URI" | sed -e 's/^http:/https:/')\@

# Yanking & pasting binds
@cbind  yu  = sh 'echo -n "$UZBL_URI" | xclip'
@cbind  yU  = sh 'echo -n "$1" | xclip' '\@SELECTED_URI'
@cbind  yy  = sh 'echo -n "$UZBL_TITLE" | xclip'
@cbind  ys  = spawn @scripts_dir/ \@< uzbl.follow.followSelection('returnuri') >\@ clipboard

# Clone current window
@cbind  c   = event REQ_NEW_WINDOW \@uri
# Go the page from primary selection
@cbind  p   = sh 'echo "uri $(xclip -o | sed s/\\\@/%40/g)" > "$UZBL_FIFO"'
# Go to the page in clipboard
@cbind  P   = sh 'echo "uri $(xclip -selection clipboard -o | sed s/\\\@/%40/g)" > "$UZBL_FIFO"'
# Start a new uzbl instance from the page in primary selection
@cbind  'p  = sh 'echo "event REQ_NEW_WINDOW $(xclip -o)" > "$UZBL_FIFO"'
# paste primary selection into keycmd at the cursor position
@bind <Shift><Insert> = sh 'echo "event INJECT_KEYCMD $(xclip -o | sed s/\\\@/%40/g)" > "$UZBL_FIFO"'

# Bookmark inserting binds
@cbind <Ctrl>m<tags:>_  = sh 'echo "$UZBL_URI $1" >> "$XDG_DATA_HOME"/uzbl/bookmarks' '%s'
# Or use a script to insert a bookmark.
@cbind  M  = spawn @scripts_dir/

# Bookmark/history loading
@cbind  U  = spawn @scripts_dir/
@cbind  u  = spawn @scripts_dir/

# Temporary bookmarks
@cbind  <Ctrl>d  = spawn @scripts_dir/
@cbind  D        = spawn @scripts_dir/

# Link following (similar to vimperator and konqueror)
# Set custom keys you wish to use for navigation. Some common examples:
set follow_hint_keys = 0123456789
#set follow_hint_keys = qwerty
#set follow_hint_keys = asdfghjkl;
#set follow_hint_keys = thsnd-rcgmvwb/;789aefijkopquxyz234
@cbind  fl*  = spawn @scripts_dir/ \@< uzbl.follow("\@follow_hint_keys", "%s", 'click') >\@
@cbind  Fl*  = spawn @scripts_dir/ \@< uzbl.follow("\@follow_hint_keys", "%s", 'newwindow') >\@
@cbind  fL*  = spawn @scripts_dir/ \@< uzbl.follow("\@follow_hint_keys", "%s", 'returnuri') >\@ set
@cbind  FL*  = spawn @scripts_dir/ \@< uzbl.follow("\@follow_hint_keys", "%s", 'returnuri') >\@ clipboard
@cbind  fi   = spawn @scripts_dir/

@cbind  fs  = spawn @scripts_dir/ \@< uzbl.follow.followSelection('returnuri') >\@ set
@cbind  fS  = spawn @scripts_dir/ \@< uzbl.follow.followSelection('click') >\@
@cbind  Fs  = spawn @scripts_dir/ \@< uzbl.follow.followSelection('newwindow') >\@
@cbind  FS  = spawn @scripts_dir/ \@< uzbl.follow.followSelection('returnuri') >\@ clipboard

@cbind  ft*  = spawn @scripts_dir/ \@< uzbl.follow.followTextContent("%s", 'returnuri') >\@ set
@cbind  fT*  = spawn @scripts_dir/ \@< uzbl.follow.followTextContent("%s", 'click') >\@
@cbind  Ft*  = spawn @scripts_dir/ \@< uzbl.follow.followTextContent("%s", 'newwindow') >\@
@cbind  FT*  = spawn @scripts_dir/ \@< uzbl.follow.followTextContent("%s", 'returnuri') >\@ clipboard

@cbind  '*  = spawn @scripts_dir/ \@< uzbl.follow.followTextContent("%s", 'click') >\@

# Form filler binds
# This script allows you to configure (per domain) values to fill in form
# fields (eg login information) and to fill in these values automatically.
# This implementation allows you to save multiple profiles for each form
# (think about multiple accounts on some website).
set formfiller = spawn @scripts_dir/
@cbind  ze  = @formfiller edit
@cbind  zn  = @formfiller new
@cbind  zl  = @formfiller load
@cbind  zo  = @formfiller once

# --- Uzbl tabbed binds ------------------------------------------------------

# Tab initial config
set show_tablist = 1
set tab_titles = 0

# Tab opening
@cbind  gn              = event NEW_TAB
@cbind  gN              = event NEW_TAB_NEXT
@cbind  go<uri:>_       = event NEW_TAB %s
@cbind  gO<uri:>_       = event NEW_TAB_NEXT %s

# Closing / resting
@cbind  gC              = exit
@cbind  gQ              = event CLEAN_TABS

# Tab navigating
@cbind  g<              = event FIRST_TAB
@cbind  g>              = event LAST_TAB
@cbind  gt              = event NEXT_TAB
@cbind  gT              = event PREV_TAB
@cbind  gi<index:>_     = event GOTO_TAB %s

# Preset loading
set preset = event PRESET_TABS
@cbind  gs<preset save:>_   = @preset save %s
@cbind  glo<preset load:>_  = @preset load %s
@cbind  gd<preset del:>_    = @preset del %s
# This doesn't work right now.
#@cbind  gli                 = @preset list

# === Context menu items =====================================================

# Default context menu
menu_add Google = set uri =
menu_add Go Home = set uri =
menu_separator separator_1
menu_add Quit uzbl = exit

# Link context menu
menu_link_add Print Link = print \@SELECTED_URI

# === Mode configuration =====================================================

# Define some mode specific uzbl configurations.
set command  = @mode_config command
set insert   = @mode_config insert
set stack    = @mode_config stack

# Command mode config.
@command  keycmd_style        = foreground="red"
@command  status_background   = #202020
@command  mode_indicator      = Cmd
@command  keycmd_events       = 1
@command  forward_keys        = 0
@command  modcmd_updates      = 1

# Insert mode config.
@insert   status_background   = #303030
@insert   mode_indicator      = Ins
@insert   forward_keys        = 1
@insert   keycmd_events       = 0
@insert   modcmd_updates      = 0

# Multi-stage-binding mode config.
@stack    keycmd_style        = foreground="red"
@stack    status_background   = #202020
@stack    mode_indicator      = Bnd
@stack    prompt_style        = foreground="#888" weight="light"
@stack    keycmd_events       = 1
@stack    modcmd_updates      = 1
@stack    forward_keys        = 0

set default_mode = command

# === Post-load misc commands ================================================
#sync_spawn_exec @scripts_dir/
#sync_spawn_exec @scripts_dir/ @data_home/uzbl/session-cookies.txt

# Set the "home" page.
set uri =

# vim: set fdm=syntax:

Thank you very much !


Last edited by kny (2013-04-01 11:57:07)


#1053 2014-01-26 14:07:50

Registered: 2014-01-11
Posts: 16

Re: uzbl. A browser that adheres to the unix philosophy.

Hi, question:
I'd like to use uzbl by default in 'privacy mode' with respect to cookies
Meaning that, when uzbl shuts down, it should clear cookies (mostly to avoid sites like facebook following me everywhere)
How can I achieve this?
Also it seems that with the out-of-thebox config session cookies seem to survive browser restarts. Is that the intention?

I'm using the uzbl package from the official repository. version 2012.05.14


#1054 2014-02-10 17:17:39

From: overthere
Registered: 2012-02-10
Posts: 301

Re: uzbl. A browser that adheres to the unix philosophy.


I seem to be having issue's with uzbl-browser not opening new windows when started like this:

uzbl-browser --class=uzbl-facebook -u

I have tried many ways around this but nothing is resolving this & using uzbl-tabbed is not going to solve it as it does not take the switches I use above.
I have added the following to my config:

set javascript_windows = 1

I did not think I needed a different follow.js as the ones mentioned in this thread are older than the one that comes with the uzbl package in repo.

cheers for all help & advice

Solved the problem, after going through the config during a diff with the original example I discovered that you can only have one of the following lines in your config:

@on_event   NEW_WINDOW     sh 'uzbl-browser ${1:+-u "$1"}' %r
@on_event   NEW_WINDOW     uri %s
@on_event   NEW_WINDOW     event NEW_TAB %s

now what would be really cool would be if something checked to see if uzbl-browser OR uzbl-tabbed was running & open the relevant tab/window based on what was running!

still thanks for a great lightweight browser.

Last edited by t0m5k1 (2014-02-15 12:01:23)

AMD Athlon 64 X2 4200+ - 8GB - GeForce 970 AwesomeWM (occasionally XFCE, i3)

If everything in life was easy, we would learn nothing!
Linux User: 401820   Last FM


#1055 2014-03-09 19:51:00

Registered: 2008-02-18
Posts: 70

Re: uzbl. A browser that adheres to the unix philosophy.

Hi everyone,
I just switched to uzbl-tabbed because using firefox or chromium on a laptop with 4 GB memory with 64 bit Arch Linux hits the swap quite often. Uzbl is also a little memory hungry, usually between 80-200 MB per tab, stille quite an improvement.

I am trying to modify the goto.js to be able to open links in a new tab.

I put the following in my config file

@cbind o<open:>_ = script @scripts_dir/goto.js '0%s'
@cbind t<tabopen:>_ = script @scripts_dir/goto.js '1%s'

So I use the argument 0 for current window and 1 for new tab.
and this in the script:

var o = '%s';
if (o.length > 1){
	var urlstr = o.substring(1);
	if(urlstr.indexOf('.') > 0){
		if(urlstr.indexOf(':') < 0) urlstr = 'http://' + urlstr
	} else {
		urlstr = '' + urlstr;
	if(o[0]=='1'){ } else { window.location = urlstr;}

The does not work.

I am not very familiar with javascript, and haven't done anything web related since CCS was cool new technology. Where is the API for this? Which methods and attributes does window have? and how can I do what I am trying to achieve?


#1056 2014-03-10 17:08:40

Registered: 2013-07-22
Posts: 203

Re: uzbl. A browser that adheres to the unix philosophy.

80-200MB per tab really is a lot!! Have you also tried dwb, luakit, ...? They are based on webkit just like uzbl, but are more actively developed and at least for dwb I can say that it's very stable for me and offers many many features, including some handy plugins.


#1057 2014-03-10 18:25:32

Registered: 2014-01-11
Posts: 16

Re: uzbl. A browser that adheres to the unix philosophy.

t0m5k1 wrote:

I seem to be having issue's with uzbl-browser not opening new windows when started like this:

uzbl-browser --class=uzbl-facebook -u

Hmm, what's the --class option? Looks interesting but I couldn't find it in the documentation?


#1058 2014-03-11 06:00:31

From: overthere
Registered: 2012-02-10
Posts: 301

Re: uzbl. A browser that adheres to the unix philosophy.

kvtb wrote:
t0m5k1 wrote:

I seem to be having issue's with uzbl-browser not opening new windows when started like this:

uzbl-browser --class=uzbl-facebook -u

Hmm, what's the --class option? Looks interesting but I couldn't find it in the documentation?


uzbl-browser --help-all 


I use different classes, titles or instances for windows I want to force onto a different workspace within my WM's config, uzbl-facebook force this instance onto a workspace for all "social" website's I have 1 for mail, terminal, files managers/editors, music etc etc just my way of keeping things uncluttered

Last edited by t0m5k1 (2014-03-11 06:03:45)

AMD Athlon 64 X2 4200+ - 8GB - GeForce 970 AwesomeWM (occasionally XFCE, i3)

If everything in life was easy, we would learn nothing!
Linux User: 401820   Last FM


#1059 2014-05-01 13:15:48

Registered: 2009-12-15
Posts: 45

Re: uzbl. A browser that adheres to the unix philosophy.

good day,

did any of you guys get working with uzbl-tabbed? it doesn't put the cursor in the field, just switches to input mode. (using the uzbl-git package)



#1060 2015-01-19 17:04:49

From: overthere
Registered: 2012-02-10
Posts: 301

Re: uzbl. A browser that adheres to the unix philosophy.

just thought I would share that recently I hit a few probs with uzbl opening https site's
i changed this line:

set ssl_ca_file /etc/ssl/certs/ca-bundle.crt

to this

set ssl_ca_file /etc/ca-certificates/extracted/tls-ca-bundle.pem

now all is working

I think this is due to the recent changes mentioned in the news.

hope this helps you

AMD Athlon 64 X2 4200+ - 8GB - GeForce 970 AwesomeWM (occasionally XFCE, i3)

If everything in life was easy, we would learn nothing!
Linux User: 401820   Last FM


#1061 2015-12-26 13:00:54

From: Thuringia - Germany
Registered: 2013-06-11
Posts: 12

Re: uzbl. A browser that adheres to the unix philosophy.

Are their other people out there having uzbl-browser crash on nearly every page ? To be a bit more specific, using the uzbl-browser package from the official repositories dies (segfaulting?!) on random occasions but recreatable on specific sites. E.g. if i goto normaly nothing happens, i can use this(!) site without a problem, if i follow a link into a repositorie, uzbl crashes after it loads some parts of the page, the amount of loaded data varies by approach. Sites like or or for a short period of time even (only the wiki o.O) wasn't accessable.
Using uzbl from git or the aur (git) works for most of the times, but i can't install a working uzbl-browser from either because somehow the configuration or python/event-manager or whatever gets screwed because of some configuration changes made in the experimental/next-branch. Since i can't get them to work and are therefore reliant on the official package i search for advice.
I thought it was a webkitgtk issue but well, is there anybody out their who understands the versioning and numbering and inging of the webkit*-*.* packages ?

If i set

set enable_scripts = 0

every page works 'as espected' except for the missing script behaviours. As for the troubleshooting i always used

uzbl-core -v -u

It dies after blocking some frames.


Board footer

Powered by FluxBB