summaryrefslogtreecommitdiff
path: root/README.md
blob: eb7bb7c64503e6f048d1d939c90739fdf3fdfa5a (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

cmdtree
=======

![cmdtree](https://jb55.com/s/cmdtree.png?)

![cmdtree2](https://jb55.com/s/cmdtree2.png?)

cmdtree is a command launcher in the form of a trie. Commands are launched by a
sequence of keys that form a path in this trie.

Configuring cmdtree will be easy (not yet implemented, still WIP):

`~/.cmdtreerc` or `~/.config/cmdtree/cmdtreerc`:

    (commands
     (a application
        (b chrome)
        (e emacs))
     (e email
        (f fetch-email)))

Configuring cmdtree currently requires you to edit a C header file, similar to
dmenu. You will need to tweak [cfg.def.h](cfg.def.h) to your liking before
building. This is temporary until the configuration file format is complete, but
it has the benefit of being quite fast to launch!

Installing
----------

First customize [cfg.def.h](cfg.def.h) to include your menu items.

libX11 and libXft are required. Once you have those installed, simply type:

    make && make install || sudo make install


Key Bindings
------------

```
ESC         quit
Backspace   go up one level
```