2,665 bytes added ,  13 September 2023
m
→‎keyboard shortcuts: add config menu & toggle UTF-8 keys
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
= keyboard shortcuts =
= keyboard shortcuts =


<code>F9</code> - Configuration menu
I haven't had time to differentiate between when tmux or screen is used here.  I've just continued to add this page over time without considering when I'm using screen or tmux and whether or not I have the function keys disabled for whatever reason. Some may not work due to some specific configuration idiosyncrasy with your distribution or the package.  Some keybindings are definitely deprecated or no longer valid, but I've kept them here because I haven't been able to check against the "official" version yet.  Use at your discretion.


<code>Alt + F5</code> - Toggle UTF-8
== Basic ==
 
<code>F2</code> or <code>Ctrl + a + c</code> - Create a new session
 
<code>F3</code> or <code>Ctrl + a + a</code> - Go back to the previous session
 
<code>F4</code> or <code>Ctrl + a + n</code> - Go to the next session
 
<code>F7</code> or <code>Ctrl + a + [</code> - Scrollback/search mode (Press Enter to exit)
 
<code>F8</code> or <code>Ctrl + a + A</code> - Rename the screen
 
<code>F9</code> or <code>Ctrl + a + @</code> - Configuration menu
 
== Utility ==
 
<code>F5</code> or <code>Ctrl + a + R</code> - Refresh all status notifications
 
<code>F6</code> or <code>Ctrl + a + d</code> - Detach from the session and logout
 
<code>Ctrl + a</code> <<code>0</code>-<code>9</code>> - Switch to screen #0-9 (quick toggle)
 
<code>Ctrl + a</code> <code>"</code> - View a list of the current screens, which will allow you to select one from the list
 
<code>Ctrl + a</code> <code>\</code> - Kill all of the sessions and terminate
 
<code>Ctrl + a</code> <code>~</code> - Copy buffer into an editor
 
== Split window management ==
 
<code>Shift + F2</code> or <code>Ctrl + a</code> <code>|</code> - Split window horizontally
 
<code>Ctrl + F2</code> or <code>Ctrl + a</code> <code>S</code> or <code>Ctrl + a</code> <code>%</code> - Split window vertically
 
<code>Shift + F5</code> - Collapse all splits
 
<code>Ctrl + a</code> <code>Tab</code> - Focus on the next window
 
<code>Ctrl + a</code> <code>X</code> - Close the current window
 
<code>Ctrl + a</code> <code>:resize +N</code> - Increase the height
 
<code>Ctrl + a</code> <code>:resize -N</code> - Decrease the height
 
<code>Ctrl + a</code> <code>:resize N</code> - Set height
 
<code>Ctrl + a</code> <code>:resize =</code> - Make all windows equally high
 
<code>Ctrl + a</code> <code>:resize max</code> - Maximize the height
 
<code>Ctrl + a</code> <code>:resize min</code> - Minimize the height
 
== Miscellaneous ==
 
<code>Ctrl + a</code> <code>x</code> - Lock the terminal
 
<code>Ctrl + a</code> <code>d</code> - Detach the whole screen session and fork to the background. Very useful for remote sessions you want to leave open. The command "screen -r" will resume your screen session.
 
<code>Ctrl + a</code> <code>Esc</code> - Scroll up through your command line "history" and see what output you previously got. Hitting <Escape> again cancels it.
 
<code>Ctrl + a</code> <code>:help</code> - Show screen keybindings (if using screen)
 
<code>Ctrl + a + !</code> - Toggle f-key keybindings on
 
<code>Ctrl + a + $</code> - Show detailed status
 
== Possibly deprecated ==


<code>Ctrl+a</code> <code>|</code> - Split screen horizontally
<code>Shift + F3</code> - Focus on next split


<code>Ctrl+a</code> <code>%</code> - Split screen vertically
<code>Shift + F4</code> - Focus on previous split


<code>Ctrl+a</code> <code>:resize-pane -L 20</code> - Resize increase left of current window pane by 20 units (other available ones are -D, -R, -U)
<code>Shift + F6</code> - Detach from the session, but do not logout


<code>Ctrl+a</code> <code>Tab</code> - Next to the next screen in a split screen
<code>Ctrl + a</code> <code>:resize-pane -L 20</code> - Resize increase left of current window pane by 20 units (other available ones are -D, -R, -U)


<code>Ctrl+a</code> <code>c</code> - Create a new window
<code>Ctrl + a</code> <code>:clear-history</code> - clear history in the viewing buffer


C-a A - Rename the screen


C-a C-a - Go back to the previous window
== Untested ==


C-a <0-9> - Switch to screen #0-9 (quick toggle)
<code>Alt + F5</code> - Toggle UTF-8


C-a " - View a list of the current screens, which will allow you to select one from the list
<code>Ctrl + F5</code> - Reconnect any SSH/GPG sockets or agents


C-a ' - Enter a screen number to switch to (slower version of C-a <0-9>)


C-a d - Detach the whole screen session and fork to the background. Very useful for remote sessions you want to leave open. The command "screen -r" will resume your screen session.
=== Nested remote session ===


C-a <Escape> - Scroll up through your command line "history" and see what output you previously got. Hitting <Escape> again cancels it.
<code>Shift+F12</code> - Toggle the outer byobu's keybindings on or off


<span class="package">Ctrl</span>+<span class="package">a</span> <span class="package">:</span> <span class="package">clear-history</span> - clear history in the viewing buffer
<code>Ctrl+a</code> <code>a</code> <code>c</code> - Create a new session


== links ==
= Links =


* https://gist.github.com/devhero/7b9a7281db0ac4ba683f (added on 2019-05-29)
* http://aperiodic.net/screen/quick_reference
* http://aperiodic.net/screen/quick_reference
* https://gist.github.com/jshaw/5255721
* https://gist.github.com/jshaw/5255721
== Terminal Multiplexers ==
* https://linuxcommand.org/lc3_adv_termmux.php
* [[Screen]]