Created
February 2, 2020 11:15
-
-
Save DawnGuoDev/f44eca4f9c34d7d62571b83d3e391583 to your computer and use it in GitHub Desktop.
Tmux配置文件,修改了prefix、开启了mouse功能、更改了split pane、修改了tmux默认的颜色配置等等,一个较为完全的配置文件。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Based on tmux book written by Brian P. Hogan | |
# c-a - split pane horizontally | |
# c-a | split pane vertically | |
### set the shortcut key | |
# Setting the prefix from C-b to C-a | |
set -g prefix C-a | |
# Free the original Ctrl-b prefix keybinding | |
unbind C-b | |
# Setting the delay between prefix and command | |
set -s escape-time 1 | |
# Ensure that we can send Ctrl-a to other apps | |
bind C-a send-prefix | |
# history buffer - max number of lines for each window | |
set -g history-limit 10000 | |
# Set Terminal Emulator Titles - OFF by default | |
#set -g set-titles on | |
# Set the base index for windows to 1 instead of 0 | |
set -g base-index 1 | |
# Set the base index for panes to 1 instead of 0 | |
setw -g pane-base-index 1 | |
# Switch to last window | |
#unbind l | |
#bind-key C-a last-window | |
# Shift arrow to switch windows | |
#bind -n S-Left previous-window | |
#bind -n S-Right next-window | |
# unbind o | |
# bind-key C-a select-pane | |
# Splitting panes replace % and " | |
bind | split-window -h | |
bind - split-window -v | |
unbind '"' | |
unbind % | |
# moving between panes | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
# Quick pane selection | |
#bind -r C-h select-window -t :- | |
#bind -r C-l select-window -t :+ | |
# Pane resizing | |
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 | |
# the new pane's work path is the pane current path | |
bind '-' split-window -c '#{pane_current_path}' | |
bind '|' split-window -h -c '#{pane_current_path}' | |
# Mouse support | |
# setw -g mode-mouse on | |
# set -g mouse-select-pane off | |
# set -g mouse-resize-pane off | |
# set -g mouse-select-window off | |
# incompatible since tmux 2.1 | |
set -g mouse on | |
# Enable vi keys | |
setw -g mode-keys vi | |
### set the theme | |
# Set the default terminal mode to 256color mode | |
set -g default-terminal "screen-256color" | |
# Enable activity alerts | |
setw -g monitor-activity on | |
set -g visual-activity on | |
# tmux coloring | |
# Set the status line's colors | |
set -g status-fg white | |
set -g status-bg black | |
# Status line left side | |
set -g status-left-length 40 | |
set -g status-left "#[fg=green]Session: #S #[fg=yellow]W#I #[fg=cyan]P#P" | |
# No longer necessary since tmux 2.1 | |
# set -g status-utf8 on | |
# Status line right side | |
# 15% | 25 Oct 14:50 | |
set -g status-right "#[fg=cyan]%d %b %R #[fg=magenta]#H" | |
# Update the status bar every sixty seconds | |
set -g status-interval 60 | |
# Center the window list | |
set -g status-justify centre | |
# Set the color of the window list | |
setw -g window-status-fg cyan | |
setw -g window-status-bg default | |
setw -g window-status-attr dim | |
# Set colors for the active window | |
setw -g window-status-current-fg white | |
setw -g window-status-current-bg yellow | |
setw -g window-status-current-attr bright | |
# Pane colors | |
set -g pane-border-fg green | |
set -g pane-border-bg black | |
set -g pane-active-border-fg white | |
set -g pane-active-border-bg yellow | |
# Command / message line | |
set -g message-fg white | |
set -g message-bg black | |
set -g message-attr bright | |
# Reload the file with Prefix r | |
bind r source-file ~/.tmux.conf \; display "tmux.conf reloaded!" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment