util/epist/DESIGN (raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
Epist design notes, by woodblock -------------------------------- - Chained keybindings like emacs, and I suppose vi if you're wierd like that. - most actions can take extra parameters. probably only numbers, or strings, maybe both. - no interactive string inputs - A config file that doesn't suck - exec - iconify - raise - lower - close - move to desktop - send to desktop - toggle shade - sticky - move window - resize window - next/prev window (special orders like stacking, grouping, etc?) - maximize/minimize - no stupid window - toggle keybindings - menus? class Action { enum type; char *string; int param; Action next; } option <name> <value>; action [name] <key> <type> <parameter>; chain [name] <key> { <action name>, <action name>, ... } eg: action emacs C-e exec emacs; action C-a exec aterm -fn smoothansi; action xmms C-x exec xmms; chain M-q { emacs, xmms } Would produce M-q C-e -> emacs, M-q C-x -> xmms, C-a -> aterm. |