awesome-revelation/README.md

82 lines
2.3 KiB
Markdown

# revelation.lua
Provides Mac OSX like 'Expose' view of all clients.
## Use
### Installation
(From user's awesome configuration directory, usually ~/.config/awesome)
1. Clone repository:
git clone https://bioe007@github.com/bioe007/awesome-revelation.git
2. put near the top of your rc.lua require("revelation")
3. Make a global keybinding for revelation in your rc.lua:
awful.key({modkey}, "e", revelation)
**NOTE:** Always double check this key binding syntax against the version of
Awesome that you are using.
4. Reload rc.lua and try the keybinding.
It should bring all clients to the current tag and set the layout to fair. You
can focus clients with __cursor__ or __hjkl__ keys then press __Enter__ or
press the mouse right button to select or __Escape__ to abort.
This is a modification of the original awesome library that implemented
expose like behavior.
### Configuration
Revelation's configuration is done through direct access to the module's
`config` table.
There are two basic settings, shown with default values:
-- The name of the tag created for the 'exposed' view
revelation.config.tag_name = 'Revelation'
-- A table of matcher functions (used in client filtering)
revelation.match.exact = awful.rules.match
revelation.match.any = awful.rules.match_any
The rule matching functions must conform to `awful.rules.match` prototypes.
For client matching rules, we follow the same syntax as awful.rules with one
perk; if `rule.any == true`, then we call the `config.match.any` function.
### Examples
All clients:
awful.key({modkey}, "e", revelation)
To match all urxvt terminals:
awful.key({modkey}, "e", function()
revelation({class="URxvt"})
end)
To match clients with class 'foo' or 'bar':
awful.key({modkey}, "e", function()
revelation({
class={"foo", "bar"},
any=true
})
end)
## Credits
### Maintenance
* Perry Hargrave <resixian@gmail.com>
### Contributions, many thanks!
* Nikola Petrov <nikolavp@gmail.com>
### Original authors
* Espen Wiborg <espenhw@grumblesmurf.org>
* Julien Danjou <julien@danjou.info>
## License
(c) 2008 Espen Wiborg, Julien Danjou