Difference between revisions of ".tmux.conf"
imported>Pew (Replaced content with "Category:Pending deletion") |
(Undo revision 5782 by [[Special:Contributions/imported>Pew|imported>Pew]] ([[User talk:imported>Pew|talk]])) (Tag: Undo) |
||
Line 1: | Line 1: | ||
− | [[Category: | + | tmux is a BSD-licensed Terminal MUltipleXer. It allows users to run multiple "windows" through a single shell connection, |
+ | and keep applications running when logged out. The default prefix for tmux is Ctl-b, and all other tmux commands are sent | ||
+ | following that prefix. Please read <code>$ man tmux</code> for more info on default keybindings and commands. | ||
+ | |||
+ | == echarlie's vim-like config == | ||
+ | |||
+ | <pre> | ||
+ | set -g prefix C-f | ||
+ | bind C-f send-prefix | ||
+ | unbind C-b | ||
+ | |||
+ | set -sg escape-time 1 | ||
+ | set -g base-index 1 | ||
+ | setw -g pane-base-index 1 | ||
+ | |||
+ | #Mouse works as expected | ||
+ | # set -g mode-mouse on | ||
+ | # set -g mouse-select-pane on | ||
+ | # set -g mouse-resize-pane on | ||
+ | # set -g mouse-select-window on | ||
+ | |||
+ | setw -g monitor-activity on | ||
+ | set -g visual-activity on | ||
+ | |||
+ | set -g mode-keys vi | ||
+ | set -g history-limit 10000 | ||
+ | |||
+ | # y and p as in vim | ||
+ | bind Escape copy-mode | ||
+ | unbind p | ||
+ | bind p paste-buffer | ||
+ | bind -t vi-copy 'v' begin-selection | ||
+ | bind -t vi-copy 'y' copy-selection | ||
+ | bind -t vi-copy 'Space' halfpage-down | ||
+ | bind -t vi-copy 'Bspace' halfpage-up | ||
+ | |||
+ | # extra commands for interacting with the ICCCM clipboard | ||
+ | bind C-c run "tmux save-buffer - | xclip -i -sel clipboard" | ||
+ | bind C-v run "tmux set-buffer \"$(xclip -o -sel clipboard)\"; tmux paste-buffer" | ||
+ | |||
+ | # easy-to-remember split pane commands | ||
+ | #bind | split-window -h | ||
+ | #bind - split-window -v | ||
+ | #unbind '"' | ||
+ | #unbind % | ||
+ | |||
+ | # moving between panes with vim movement keys | ||
+ | bind h select-pane -L | ||
+ | bind j select-pane -D | ||
+ | bind k select-pane -U | ||
+ | bind l select-pane -R | ||
+ | |||
+ | # moving between windows with vim movement keys | ||
+ | bind -r C-h select-window -t :- | ||
+ | bind -r C-l select-window -t :+ | ||
+ | |||
+ | # resize panes with vim movement keys | ||
+ | bind -r H resize-pane -L 5 | ||
+ | bind -r J resize-pane -D 5 | ||
+ | bind -r K resize-pane -U 5 | ||
+ | bind -r L resize-pane -R 5 | ||
+ | set-option -g lock-command vlock | ||
+ | </pre> | ||
+ | |||
+ | [[Category:Scripts]] | ||
+ | [[Category:Howtos]] | ||
+ | [[Category:Software]] |
Revision as of 03:12, 4 January 2019
tmux is a BSD-licensed Terminal MUltipleXer. It allows users to run multiple "windows" through a single shell connection,
and keep applications running when logged out. The default prefix for tmux is Ctl-b, and all other tmux commands are sent
following that prefix. Please read $ man tmux
for more info on default keybindings and commands.
echarlie's vim-like config
set -g prefix C-f bind C-f send-prefix unbind C-b set -sg escape-time 1 set -g base-index 1 setw -g pane-base-index 1 #Mouse works as expected # set -g mode-mouse on # set -g mouse-select-pane on # set -g mouse-resize-pane on # set -g mouse-select-window on setw -g monitor-activity on set -g visual-activity on set -g mode-keys vi set -g history-limit 10000 # y and p as in vim bind Escape copy-mode unbind p bind p paste-buffer bind -t vi-copy 'v' begin-selection bind -t vi-copy 'y' copy-selection bind -t vi-copy 'Space' halfpage-down bind -t vi-copy 'Bspace' halfpage-up # extra commands for interacting with the ICCCM clipboard bind C-c run "tmux save-buffer - | xclip -i -sel clipboard" bind C-v run "tmux set-buffer \"$(xclip -o -sel clipboard)\"; tmux paste-buffer" # easy-to-remember split pane commands #bind | split-window -h #bind - split-window -v #unbind '"' #unbind % # moving between panes with vim movement keys bind h select-pane -L bind j select-pane -D bind k select-pane -U bind l select-pane -R # moving between windows with vim movement keys bind -r C-h select-window -t :- bind -r C-l select-window -t :+ # resize panes with vim movement keys bind -r H resize-pane -L 5 bind -r J resize-pane -D 5 bind -r K resize-pane -U 5 bind -r L resize-pane -R 5 set-option -g lock-command vlock