setup project. initial import of uzbl
[uzbl-mobile] / docs / TODO
index d501643..45f4539 100644 (file)
--- a/docs/TODO
+++ b/docs/TODO
@@ -1,21 +1,18 @@
 More or less in order of importance/urgency
 
-* cookie handler.  storing seems to work, but not yet sending
+* 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
-* define a basic, simple default config so uzbl is a bit uzbl by default
 * shortcuts to focus other instances (see docs/multiple-instances-management)
 
-
 * recognize -h with GOption?
-* implement a vimperator-like link following scheme.
 * 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
+* make default window size configurable, and optional if this is not too much work
 * 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
@@ -26,7 +23,6 @@ More or less in order of importance/urgency
 * 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.
-* backspace key to pop characters from (multichar) command
 * 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' ?
@@ -38,16 +34,31 @@ More or less in order of importance/urgency
 * settings iterating "state generator" so we can "open in new window" again.
 * handler for (broken) ssl certs.
 * handlers for mailto: and maybe other thingies?
-* configure script
+* 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.
+* Allow the spacebar to be binded to a command
 * let users attach handlers to the most common events/signals in uzbl.
-* write little script to open new urls with the urxvt url thing +document.
-* add Rob/anydots trees on website
+  great use case: automatically calling formfiller for certain sites, doing stuff at uzbl startup, etc
+* 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