More or less in order of importance/urgency

* improve cookie handler.
* a variable that holds the page state: loading, pending, seen. this can be shown in titlebar/statusbar and used for multiple instances management
* allow to tag , to group instances together
* store uri/tag/name/state in xorg window properties
* split up uzbl.c into multiple files
* shortcuts to focus other instances (see docs/multiple-instances-management)

* recognize -h with GOption?
* implement getting feedback from socket
* scrolling: make page up and page down configurable.
* show % of location in statusbar/title if page doesn't fit entirely on view.
* conditionals in format strings: eg if(SELECTED_URI) { "-> SELECTED_URI" } or another smart way to achieve the same.
* make default window size configurable, and optional
* on uzbl.org commits overview: add date+time and repository
* how to handle different content types? (text-plain, image/png, application/pdf,... maybe a map of content-type to uzbl/command
  xdg already has a spec for this i think
  different "opening" modes (open as configured vs ask before opening)
  integration with download and new window thingies?
* blinking cursor when not in insert mode is confusing.  i suggest dimming it's color if possible
* open in new window -> uzbl: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
* check that in new version pageup etc works also in command
* tab key to jump between input fields should probably work in both insert and command mode
* do not delete fifo/socket if they exist already. rather give error and don't create one.
* optional logging of http requests&responses with ip/hostname and port. -> how to implement? handler? stdout? (through a socket so you know what corresponds to what?)
* bench/optimize fifo vs socket performance. measure delays.  minimize forks. does glib use a shell? how does it detect the shebang line?
* "remember account settings" support. but how? configure post data per site? regex match eg '^bbs.archlinux.org' ?
* http_proxy env var not recognized. libproxy (used by libsoup) should handle this http://mail.gnome.org/archives/libsoup-list/2009-February/msg00018.html
* support ssl. do ssl certificate & exception management similar to how we do cookies
* improve DCOMMIT macro.  what if WC is dirty? what if user downloaded tarball without .git?
* DARCH is not correct (should be at runtime)
* keybinds to open "next" or "previous" by looking for next/prev links and/or looking for numbers in the uri we can inc/decrement
* settings iterating "state generator" so we can "open in new window" again.
* handler for (broken) ssl certs.
* handlers for mailto: and maybe other thingies?
* make sample scripts less depending on bash, but more posix sh.
* proxy_url is not a good var name. it's not a url.
* regex style page searching? so you can do 'or' and 'and' things. flags like case sensitive etc.
* check for real command name, not just the first letter.
* let users attach handlers to the most common events/signals in uzbl.
  great use case: automatically calling formfiller for certain sites
* write little script to open new urls with the urxvt url thing +document.
* document:
  stylesheet overridding
  formfiller
  full duplex socket
  ^X and such binds
  link following
  scrolling in %
  webkit inspector usage
  scroll commands can take %s, eg scroll 100% for pages
  chaining of actions, print (and other actions that aren't documented yet)
  overriding variables (such as -u)
  variable expansion (@var, @{var}, where do they get expanded? can users have their own vars?, should we merge this with the replacement we do for useragent/window title etc?)
  how %s works for the js command
  

SOMEDAY:
figure out caching with webkit and in general how we can speed up everything
figure out how webkit intercepts key input
make "disable insert mode" (esc key) configurable
keywords don't work for external commands. is this a problem?
* pass a bit less arguments by default, use the socket to query for them instead, or export the stuff through environment variables, or export them as xorg window properties
* write a config "generator" that iterates over the Uzbl uzbl and generates the commands needed to become in that state.