Shortcuts for moving windows
This commit is contained in:
parent
b61d77f868
commit
32d73cfaf0
3 changed files with 21 additions and 1 deletions
|
|
@ -9,6 +9,8 @@
|
|||
:sc_fifth_window: pass:quotes[`ctrl+shift+5`]
|
||||
:sc_first_window: pass:quotes[`ctrl+shift+1`]
|
||||
:sc_fourth_window: pass:quotes[`ctrl+shift+4`]
|
||||
:sc_move_window_backward: pass:quotes[`ctrl+shift+b`]
|
||||
:sc_move_window_forward: pass:quotes[`ctrl+shift+f`]
|
||||
:sc_new_tab: pass:quotes[`ctrl+shift+t`]
|
||||
:sc_new_window: pass:quotes[`ctrl+shift+enter`]
|
||||
:sc_next_layout: pass:quotes[`ctrl+shift+l`]
|
||||
|
|
@ -153,6 +155,8 @@ windows are:
|
|||
|Close window | {sc_close_window}
|
||||
|Next window | {sc_next_window}
|
||||
|Previous window | {sc_previous_window}
|
||||
|Move window forward | {sc_move_window_forward}
|
||||
|Move window backward | {sc_move_window_backward}
|
||||
|Focus specific window (windows are counted clockwise from the top left corner) | {sc_first_window}, {sc_second_window} ... {sc_tenth_window}
|
||||
|
||||
|===
|
||||
|
|
|
|||
|
|
@ -140,9 +140,11 @@ map ctrl+shift+end scroll_end
|
|||
|
||||
# Window management
|
||||
map ctrl+shift+enter new_window
|
||||
map ctrl+shift+w close_window
|
||||
map ctrl+shift+] next_window
|
||||
map ctrl+shift+[ previous_window
|
||||
map ctrl+shift+w close_window
|
||||
map ctrl+shift+f move_window_forward
|
||||
map ctrl+shift+b move_window_backward
|
||||
map ctrl+shift+1 first_window
|
||||
map ctrl+shift+2 second_window
|
||||
map ctrl+shift+3 third_window
|
||||
|
|
|
|||
|
|
@ -143,6 +143,20 @@ def next_window(self):
|
|||
def previous_window(self):
|
||||
self._next_window(-1)
|
||||
|
||||
def move_window(self, delta=1):
|
||||
if len(self.windows) > 1:
|
||||
idx = self.active_window_idx
|
||||
nidx = (idx + len(self.windows) + delta) % len(self.windows)
|
||||
self.windows[nidx], self.windows[idx] = self.windows[idx], self.windows[nidx]
|
||||
self.active_window_idx = nidx
|
||||
self.relayout()
|
||||
|
||||
def move_window_forward(self):
|
||||
self.move_window()
|
||||
|
||||
def move_window_backward(self):
|
||||
self.move_window(-1)
|
||||
|
||||
def __iter__(self):
|
||||
yield from iter(self.windows)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue