Not sure if this is exactly what you're looking for, but you can try something like the following. It mimics the resize mode. I found this tip on the arch forums thread about i3.
resize {
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s height.
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
# back to normal: Enher or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
}
launch mode {
mode "launch" {
# c, chrome
bindsym c exec chromium-browser, mode "default"
# d, dock
bindsym d exec dock, mode "default"
# u, undock
bindsym u exec undock, mode "default"
# go back to normal (if we don't launch something)
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+semicolon mode "launch"
}
so to launch chrome, i can do alt-; c
the others (dock & undock) I use when docking my laptop at work (it runs disper to adjust what displays are used)
Edit: here is the aforementioned thread https://bbs.archlinux.org/viewtopic.p...
Also: can you nest modes? That could be useful!