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