]> git.sur5r.net Git - i3/i3/commit
Implement modes. Modes allow you to use different keybindings and switch between...
authorMichael Stapelberg <michael@stapelberg.de>
Sun, 27 Sep 2009 16:45:39 +0000 (18:45 +0200)
committerMichael Stapelberg <michael@stapelberg.de>
Sun, 27 Sep 2009 16:45:39 +0000 (18:45 +0200)
commit8f67eba044f31eb6f1726d0575ae2c47709bb628
treeba0976ee62b509de2bea3361ee44523d668c2555
parent97d949d16c2ff3d5bc5ff9e1679f030ba54c6df6
Implement modes. Modes allow you to use different keybindings and switch between them.

For example, you can create a mode which will let you resize windows
with some easy to use keys. So, instead of binding a combination
of your homerow and modifiers to resize, like this:

bind Mod4+44 resize right +10
bind Mod4+45 resize right -10
...

You can instead define a new mode:

mode "resize" {
bind 44 resize right +10
bind 45 resize right -10
...
bind 36 mode default
}

bindsym Mod4+r mode resize

So, if you press Mod4+r now, your keybindings will be set to the ones
defined in your resize mode above. You can then use your homerow
(without any other modifier) to resize the current column/row and
press enter to go back to the default mode when you are done.

Note that using this option requires you to enable the new lexer/parser
by passing the -l flag to i3 when starting.
include/config.h
include/i3.h
src/cfgparse.y
src/commands.c
src/config.c
src/handlers.c
src/mainx.c