Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
71 lines (52 sloc) 2.29 KB


Current version information

This is a fork from bioe007 shifty library. The main goal of this fork is make shifty compatible with awesome-3.5


Shifty is an Awesome 3 extension that implements dynamic tagging.

It also implements fine client matching configuration allowing you to be the master of your desktop.

Here are a few ways of how shifty makes awesome awesomer:

  • on-the-fly tag creation and disposal
  • advanced client matching
  • easy moving of clients between tags
  • tag add/rename prompt in taglist (with completion)
  • reordering tags and configurable positioning
  • tag name guessing, automagic no-config client grouping
  • customizable keybindings per client and tag
  • simple yet powerful configuration


  1. Go to configuration directory, usually ~/.config/awesome
  2. Clone repository:

    git clone shifty

  3. Move the example rc.lua file into your configuration directory.

    cp shifty/example.rc.lua rc.lua

  4. Restart awesome and enjoy.

There are many configuration options for shifty, the example.rc.lua is provided merely as a starting point. The most important variables are the tables:

  • shifty.config.tags = {}
    • Sets predefined tags, which are not necessarily initialized.
  • shifty.config.apps = {}
    • How to handle certain applications.
  • shifty.config.defaults = {}
    • Fallback values used when a preset is not found in the first two configuration tables.

But for each of these there are tons of shifty variables and settings, its easiest to check out the wiki page or the module itself.

In the example.rc.lua searching for shifty in your editor can also help to make sense of these.


Report bugs at the github repo. Please include at least the current versions of awesome and shifty, as well as distribution.



Current awesome wm license or if thats not defined, GPLv2.

Jump to Line
Something went wrong with that request. Please try again.