blob: a02a7bbd0d7a77945690e93bde2cddcb87a10d85 (
plain)
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.
|