diff --git a/debian/changelog b/debian/changelog index 644476db..54733d2d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,10 +1,29 @@ byobu (5.22) unreleased; urgency=low + [ Dustin Kirkland ] * usr/bin/byobu-config, usr/bin/byobu-ctrl-a: LP: #1019743 - fix escape sequence setting in config with tmux * debian/postinst, debian/postrm: LP: #1050249 - clean up obsolete config file + [ Jake Biesinger and Dustin Kirkland ] + * usr/share/byobu/keybindings/common, usr/share/byobu/keybindings/f- + keys.screen, usr/share/byobu/keybindings/f-keys.screen.disable, + usr/share/byobu/keybindings/f-keys.tmux, + usr/share/byobu/keybindings/f-keys.tmux.disable, + usr/share/doc/byobu/help.tmux.txt: LP: #945069 + - unbind ctrl-left/right/up/down in byobu + + previously was used to resize splits + + some users unfortunately expect ctrl-left/right to move the + cursor around words + - resizing splits is something that happens relatively infrequently, + so bind these to shift-alt-up/down/left/right + - use alt-left/right to move between windows + - use alt-up/down to move between sessions + - source the disable bindings just before sourcing the byobu bindings, + this enables a clean undo of bindings + - document the changes in the help text + -- Dustin Kirkland Wed, 11 Jul 2012 12:02:34 -0500 byobu (5.21-0ubuntu1) quantal; urgency=low diff --git a/usr/share/byobu/keybindings/common b/usr/share/byobu/keybindings/common index a6eeea96..3f8019ee 100644 --- a/usr/share/byobu/keybindings/common +++ b/usr/share/byobu/keybindings/common @@ -1 +1,2 @@ +source $BYOBU_PREFIX/share/byobu/keybindings/f-keys.screen.disable source $BYOBU_PREFIX/share/byobu/keybindings/f-keys.screen diff --git a/usr/share/byobu/keybindings/f-keys.screen b/usr/share/byobu/keybindings/f-keys.screen index 13c05aa4..e78210d8 100644 --- a/usr/share/byobu/keybindings/f-keys.screen +++ b/usr/share/byobu/keybindings/f-keys.screen @@ -32,10 +32,10 @@ bindkey -k k2 $BYOBU_BACKEND # F2 | Create new window bindkey "^[O1;5Q" eval 'split -v' 'focus down' 'next' 'focus up' 'layout save byobu' 'layout autosave' # ctrl-F2 | vertical split bindkey "^[O1;2Q" eval 'split' 'focus down' 'next' 'focus up' 'layout save byobu' 'layout autosave' # shift-F2 | horizontal split # No ctrl-shift-F2 (new session) in Screen -bindkey -k k3 eval 'prev' 'fit' # F3 | Previous Window -bindkey -k k4 eval 'next' 'fit' # F4 | Next Window -bindkey "^[[1;6D" eval 'prev' 'fit' # ctrl-shift-left | Previous Window -bindkey "^[[1;6C" eval 'next' 'fit' # ctrl-shift-right | Next Window +bindkey -k k3 eval 'prev' 'fit' # F3 | Previous Window +bindkey -k k4 eval 'next' 'fit' # F4 | Next Window +bindkey "^[[1;3D" eval 'prev' 'fit' # alt-left | Previous Window +bindkey "^[[1;3C" eval 'next' 'fit' # alt-right | Next Window # No alt-up (previous session) in Screen # No alt-down (next session) in Screen bindkey "^[O1;2R" focus up # shift-F3 | focus up @@ -46,10 +46,10 @@ bindkey "^[[1;2D" focus up # shift-left | focus up bindkey "^[[1;2C" focus down # shift-right | focus down # No ctrl-shift-F3 (move pane) in Screen # No ctrl-shift-F4 (move pane) in Screen -bindkey "^[[1;5A" resize +1 # ctrl-up | resize +1 -bindkey "^[[1;5B" resize -1 # ctrl-down | resize -1 -bindkey "^[[1;5D" resize -1 # ctrl-left | resize -1 -bindkey "^[[1;5C" resize +1 # ctrl-right | resize +1 +bindkey "^[[1;4A" resize +1 # shift-alt-up | resize +1 +bindkey "^[[1;4B" resize -1 # shift-alt-down | resize -1 +bindkey "^[[1;4D" resize -1 # shift-alt-left | resize -1 +bindkey "^[[1;4C" resize +1 # shift-alt-right | resize +1 register r ":source $BYOBU_CONFIG_DIR/profile^M" # | Goes with F5 definition bindkey -k k5 eval 'process x' 'process r' # F5 | Reload profile bindkey "^[[15;5~" eval 'process x' 'process r' 'stuff ". $BYOBU_PREFIX/bin/byobu-reconnect-sockets^M"' # ctrl-F5 | reconnect gpg/ssh/x sockets diff --git a/usr/share/byobu/keybindings/f-keys.screen.disable b/usr/share/byobu/keybindings/f-keys.screen.disable index a9bb53d8..f0e7a81e 100644 --- a/usr/share/byobu/keybindings/f-keys.screen.disable +++ b/usr/share/byobu/keybindings/f-keys.screen.disable @@ -51,6 +51,8 @@ bindkey "^[O1;5Q" bindkey "^[O1;2Q" bindkey -k k3 bindkey -k k4 +bindkey "^[[1;3D" +bindkey "^[[1;3C" bindkey "^[[1;6D" bindkey "^[[1;6C" bindkey "^[O1;2R" @@ -59,10 +61,10 @@ bindkey "^[[1;2A" bindkey "^[[1;2B" bindkey "^[[1;2D" bindkey "^[[1;2C" -bindkey "^[[1;5A" -bindkey "^[[1;5B" -bindkey "^[[1;5D" -bindkey "^[[1;5C" +bindkey "^[[1;4A" +bindkey "^[[1;4B" +bindkey "^[[1;4D" +bindkey "^[[1;4C" bindkey -k k5 bindkey "^[[15;5~" bindkey "^[[15;6~" diff --git a/usr/share/byobu/keybindings/f-keys.tmux b/usr/share/byobu/keybindings/f-keys.tmux index 0f3707c5..050ebf60 100644 --- a/usr/share/byobu/keybindings/f-keys.tmux +++ b/usr/share/byobu/keybindings/f-keys.tmux @@ -21,6 +21,9 @@ # Add F12 to the prefix list set -g prefix F12 +# Clear the slate +source $BYOBU_PREFIX/share/byobu/keybindings/f-keys.tmux.disable + # Byobu's Keybindings # Documented in: $BYOBU_PREFIX/share/doc/byobu/help.tmux.txt bind-key -n F1 new-window -k -n config byobu-config @@ -31,8 +34,8 @@ bind-key -n S-F2 display-panes \; split-window -v bind-key -n C-S-F2 new-session bind-key -n F3 previous-window bind-key -n F4 next-window -bind-key -n C-S-Left previous-window -bind-key -n C-S-Right next-window +bind-key -n M-Left previous-window +bind-key -n M-Right next-window bind-key -n M-Up choose-session \; send-keys Up \; send-keys Enter bind-key -n M-Down choose-session \; send-keys Down \; send-keys Enter bind-key -n S-F3 display-panes \; select-pane -t :.- @@ -45,10 +48,10 @@ bind-key -n C-F3 display-panes \; swap-pane -s :. -t :.- \; select-pane -t :.- bind-key -n C-F4 display-panes \; swap-pane -s :. -t :.+ \; select-pane -t :.+ bind-key -n C-S-F3 swap-window -t :-1 bind-key -n C-S-F4 swap-window -t :+1 -bind-key -n C-Up resize-pane -U -bind-key -n C-Down resize-pane -D -bind-key -n C-Left resize-pane -L -bind-key -n C-Right resize-pane -R +bind-key -n M-S-Up resize-pane -U +bind-key -n M-S-Down resize-pane -D +bind-key -n M-S-Left resize-pane -L +bind-key -n M-S-Right resize-pane -R bind-key -n F5 source $BYOBU_PREFIX/share/byobu/profiles/tmuxrc bind-key -n S-F5 new-window -k "$BYOBU_PREFIX/lib/byobu/include/cycle-status" \; source $BYOBU_PREFIX/share/byobu/profiles/tmuxrc bind-key -n C-F5 send-keys ". $BYOBU_PREFIX/bin/byobu-reconnect-sockets" \; send-keys Enter diff --git a/usr/share/byobu/keybindings/f-keys.tmux.disable b/usr/share/byobu/keybindings/f-keys.tmux.disable index 65b8e0d8..64b372c7 100644 --- a/usr/share/byobu/keybindings/f-keys.tmux.disable +++ b/usr/share/byobu/keybindings/f-keys.tmux.disable @@ -27,10 +27,14 @@ unbind-key -n S-F2 unbind-key -n C-S-F2 unbind-key -n F3 unbind-key -n F4 +unbind-key -n C-Up +unbind-key -n C-Down +unbind-key -n C-Left +unbind-key -n C-Right unbind-key -n C-S-Left unbind-key -n C-S-Right -unbind-key -n M-Up -unbind-key -n M-Down +unbind-key -n C-S-Up +unbind-key -n C-S-Down unbind-key -n S-F3 unbind-key -n S-F4 unbind-key -n S-Up @@ -41,10 +45,14 @@ unbind-key -n C-F3 unbind-key -n C-F4 unbind-key -n C-S-F3 unbind-key -n C-S-F4 -unbind-key -n C-Up -unbind-key -n C-Down -unbind-key -n C-Left -unbind-key -n C-Right +unbind-key -n M-Up +unbind-key -n M-Down +unbind-key -n M-Left +unbind-key -n M-Right +unbind-key -n S-M-Up +unbind-key -n S-M-Down +unbind-key -n S-M-Left +unbind-key -n S-M-Right unbind-key -n F5 unbind-key -n S-F5 unbind-key -n C-F5 diff --git a/usr/share/doc/byobu/help.tmux.txt b/usr/share/doc/byobu/help.tmux.txt index 7ecc2c1c..d01beb0b 100644 --- a/usr/share/doc/byobu/help.tmux.txt +++ b/usr/share/doc/byobu/help.tmux.txt @@ -2,39 +2,39 @@ Byobu is a suite of enhancements to tmux, as a command line tool providing live system status, dynamic window management, and some convenient keybindings: - F1 * Used by X11 * - Shift-F1 Display this help - F2 Create a new window - Shift-F2 Create a horizontal split - Ctrl-F2 Create a vertical split - Ctrl-Shift-F2 Create a new session - F3/F4 Move focus among windows - Shift-F3/F4 Move focus among splits - Ctrl-F3/F4 Move a split - Ctrl-Shift-F3/F4 Move a window - Alt-Up/Down Move focus among sessions - Shift-Left/Right/Up/Down Move focus among splits - Ctrl-Shift-Left/Right Move focus among windows - Ctrl-Left/Right/Up/Down Resize a split - F5 Reload profile, refresh status - Shift-F5 Toggle through status lines - Ctrl-F5 Reconnect ssh/gpg/dbus sockets - Ctrl-Shift-F5 Change status bar's color randomly - F6 Detach session and then logout - Shift-F6 Detach session and do not logout - Ctrl-F6 Kill split in focus - F7 Enter scrollback history - Alt-PageUp/PageDown Enter and move through scrollback - F8 Change the current window's name - Shift-F8 Toggle through split arrangements - Ctrl-F8 Restore a split-pane layout - Ctrl-Shift-F8 Save the current split-pane layout - F9 Launch byobu-config window - F10 * Used by X11 * - F11 * Used by X11 * - Alt-F11 Expand split to a full window - Shift-F11 Join window into a horizontal split - Ctrl-F11 Join window into a vertical split - F12 Escape sequence - Shift-F12 Toggle on/off Byobu's keybindings - Ctrl-Shift-F12 Modrian squares + F1 * Used by X11 * + Shift-F1 Display this help + F2 Create a new window + Shift-F2 Create a horizontal split + Ctrl-F2 Create a vertical split + Ctrl-Shift-F2 Create a new session + F3/F4 Move focus among windows + Alt-Left/Right Move focus among windows + Alt-Up/Down Move focus among sessions + Shift-Left/Right/Up/Down Move focus among splits + Shift-F3/F4 Move focus among splits + Ctrl-F3/F4 Move a split + Ctrl-Shift-F3/F4 Move a window + Shift-Alt-Left/Right/Up/Down Resize a split + F5 Reload profile, refresh status + Shift-F5 Toggle through status lines + Ctrl-F5 Reconnect ssh/gpg/dbus sockets + Ctrl-Shift-F5 Change status bar's color randomly + F6 Detach session and then logout + Shift-F6 Detach session and do not logout + Ctrl-F6 Kill split in focus + F7 Enter scrollback history + Alt-PageUp/PageDown Enter and move through scrollback + F8 Change the current window's name + Shift-F8 Toggle through split arrangements + Ctrl-F8 Restore a split-pane layout + Ctrl-Shift-F8 Save the current split-pane layout + F9 Launch byobu-config window + F10 * Used by X11 * + F11 * Used by X11 * + Alt-F11 Expand split to a full window + Shift-F11 Join window into a horizontal split + Ctrl-F11 Join window into a vertical split + F12 Escape sequence + Shift-F12 Toggle on/off Byobu's keybindings + Ctrl-Shift-F12 Modrian squares