-
-
Save samoshkin/05e65f7f1c9b55d3fc7690b59d678734 to your computer and use it in GitHub Desktop.
bind -T root F12 \ | |
set prefix None \;\ | |
set key-table off \;\ | |
set status-style "fg=$color_status_text,bg=$color_window_off_status_bg" \;\ | |
set window-status-current-format "#[fg=$color_window_off_status_bg,bg=$color_window_off_status_current_bg]$separator_powerline_right#[default] #I:#W# #[fg=$color_window_off_status_current_bg,bg=$color_window_off_status_bg]$separator_powerline_right#[default]" \;\ | |
set window-status-current-style "fg=$color_dark,bold,bg=$color_window_off_status_current_bg" \;\ | |
if -F '#{pane_in_mode}' 'send-keys -X cancel' \;\ | |
refresh-client -S \;\ | |
bind -T off F12 \ | |
set -u prefix \;\ | |
set -u key-table \;\ | |
set -u status-style \;\ | |
set -u window-status-current-style \;\ | |
set -u window-status-current-format \;\ | |
refresh-client -S | |
wg_is_keys_off="#[fg=$color_light,bg=$color_window_off_indicator]#([ $(tmux show-option -qv key-table) = 'off' ] && echo 'OFF')#[default]" | |
set -g status-right "$wg_is_keys_off #{sysstat_cpu} | #{sysstat_mem} | #{sysstat_loadavg} | $wg_user_host" |
I have 4-time nested tmux session (Because of my work, I have to ssh 3 time to move between networks).
Completely unrelated to tmux, but have you heard of the ProxyJump setting of OpenSSH, @Delt-A ?
For instance, if you have machines named Bastion, Firewall, and Gateway, and Devbox, you set it up ~/.ssh/config
like this:
Host bastion
Hostname bastion.mywork.com
Host firewall
Hostname firewall.lan
ProxyJump bastion
Host gateway
Hostname gateway.inner
ProxyJump bastion,firewall
Host devbox
Hostname devbox.lan
ProxyJump bastion,firewall,gateway
Now you should be able to connect any of these 4 hosts by name, just by typing ssh devbox
or the like. I hope you have key-based authentication, so you won't have to type in your password 4 times. You can also override per-host port numbers or usernames, if needed.
If you need multiple sessions at the target machine, you could use tmux
, or you could do SSH connection multiplexing. To enable, add this to ~/.ssh/config
:
Host *
ControlPath ~/.ssh/%C.sock
ControlMaster auto
ControlPersist 10m
ServerAliveInterval 1
ServerAliveCountMax 3
This plugin might be helpful too, it allows you to suspend the local Tmux session: https://github.com/MunifTanjim/tmux-suspend
Folks interested in a shorter
wg_is_keys_off
might be interested in the following:wg_is_keys_off="#{?#{==:#(tmux show-option -qv key-table),off},#[reverse]OFF,}"