Skip to content

AwesomeWM library for simplifying key and button binding definitions

License

Notifications You must be signed in to change notification settings

jcrd/awesome-ez

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

awesome-ez

awesome-ez is a library for Awesome window manager that aims to simplify the creation of key and button bindings. It is based on code from the old Awesome wiki.

Installation

Install the latest stable release with luarocks:

luarocks install awesome-ez

Usage

Require the library:

local ez = require("awesome-ez")

Use ez.keytable to define key bindings:

local globalkeys = ez.keytable {
    ["M-Return"] = {awful.spawn, "xterm"},
    ...
}

Use ez.btntable to define button bindings:

local clientbtns = ez.btntable {
    ["1"] = function (c) client.focus = c end,
    ["M-1"] = awful.mouse.client.move,
    ["M-3"] = awful.mouse.client.resize,
}

Binding definition strings consist of modifier characters and a key or button separated by hyphens, e.g. M-S-x is the combination of Mod4, Shift, and the x key.

See the API documentation for descriptions of all functions.

Modifiers

The following modifiers can be identified by their default shorthand characters in key and button definitions:

Character Modifier
M Mod4
A Mod1
S Shift
C Control

The modifiers table can be customized:

ez.modifiers["M"] = "Mod1"

License

This project is licensed under the MIT License (see LICENSE).