don't get stuck running the event loop once there are no more clients
[wmiirc-lua.git] / TODO
blob6ea306d15c596a5d6a015c1e75f69bf4f18b2cd7
1 If you have any suggests I am happy to add them to the list.
3 for 0.3 release
4     - core
5         - verify required packages in wmii.lua (like lua version number)
6         - version number in the files
7         - resize windows/columns with Mod1-[+-] or Mod1-Ctrl-[hjkl]
9         - some way to get the configuration out at runtime
11         - debugging
12             - look at http://www.keplerproject.org/lualogging/
13             - make 'debug' take a filename to log to
14               ('1' and 'true' will go to stderr)
15             - log levels
17         - debugging C libraries
18             - make it possible to debug the C code by enabling verbosity
19               from lua code.
21     - bundled plugins
22         - mpd: controls / volume
23         - history: 
24             - Mod1-[oi] to provide window history
25             - Mod4-[oi] to provide workspace history (vim inspired)
26         - at: use the at scheduler to implement a reminder system
27               action of 'at' or '@' for short
28               examples:
29                  alt-a @ 20:00 "message to display"
30                  alt-a @ 20:00 !xeyes
32 future
33     - core
34         - bundle xclipboard functionality (add a core/x11.so)
35         - make wmii.load_plugin() support multiple api versions
37         - Mod1-; will display a "execute lua code here" command line
38           - it would be nice if it tab completed
40         - tags starting with '@' are reserved for internal use and don't
41           display on /lbar
42         - Mod1-[ and Mod1-] to push/pop windows off a stack in a hidden
43           tag @stack
45         - figure out a better way for wmiirc to remap function in
46           wmii.lua;
47           - an option would be to give each function a name (be it an
48             event, key-binding, or action) and make them usable from
49             either so people could bind a function ring_my_bell() to an
50             event, key, or action.  Maybe...
51                 wmii.bind_event ("ring", wmii.h_ring_my_bell)
52                 wmii.bind_key ("Alt-r", wmii.h_ring_my_bell)
53                 wmii.bind_action ("ring", wmii.h_ring_my_bell)
54             it should really make no difference how the action was
55             invoked.  We could let the handler function know *how* with
56             a parameter that wmii.lua passes to it.
58         - improve logging
59           - use file in ~/.wmii-3.5/ like wmii+ruby
61     - bundled plugins
62         - 'session_manager'
63             - remember where windows are, and restart the "session" as
64               it was before
65             - global and per-view
67         - 'clipboard'
68             - remember X of the last copy/paste contents
69             - pull them up with an action
70             - see http://glipper.sourceforge.net/ for ideas/code
72         - 'messages'
73             - add action or hot-key to copy last message to xclipboard
75         - 'groups'
76             - grouping multiple windows (maybe a tag prefix, and use the
77               existing tag idea)
78               - group individually,
79               - group all in a view,
80               - group all visible
81             - sending input to all windows in that group
82             - would be useful for a cluster, etc.
84         - whereami: wireless / controls
86 vim: set ts=8 et sw=8 tw=72