-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtmux.conf
More file actions
138 lines (104 loc) · 3.85 KB
/
tmux.conf
File metadata and controls
138 lines (104 loc) · 3.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# remap prefix to Control + a
set -g prefix C-a
# bind 'C-a C-a' to type 'C-a'
bind C-a send-prefix
unbind C-b
# enable mouse usage
set -g mouse on
# Fix pbcopy/pbpaste and other programs that break due to being attached to the root namespace instead of the user namespace
# See: https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard
set -g default-command "reattach-to-user-namespace -l ${SHELL}"
# Ensure 256-color $TERM is set
set -g default-terminal "screen-256color"
# Set window base-index to mimic keyboard top-row number key order
set -g base-index 1
# Use vim keybindings in copy mode
setw -g mode-keys vi
# Setup 'v' to begin selection as in Vim
bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send -X copy-pipe-and-cancel "pbcopy"
# Update default copy bindings to also use copy-pipe
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi C-j send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi A send-keys -X append-pipe-and-cancel "pbcopy"
# Switch panes using Alt-arrow without prefix
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
# Clear scrollback history and redraw screen with <prefix>
bind -n C-k send-keys -R \; clear-history
set -sg escape-time 0
# Design/Theme settings {
# from http://www.hamvocke.com/blog/a-guide-to-customizing-your-tmux-conf/ ###
# panes {
set -g pane-border-style fg=black
set -g pane-active-border-style fg=brightred
# }
## Status bar design
# status line {
set -g status-justify left
set -g status-style fg=colour12,bg=default
set -g status-interval 2
# }
# messaging {
set -g message-style fg=black,bg=yellow
set -g message-command-style fg=blue,bg=black
# }
# window mode {
setw -g mode-style fg=colour0,bg=colour6
# }
# window status {
setw -g window-status-format " #F#I:#W#F "
setw -g window-status-current-format " #F#I:#W#F "
setw -g window-status-format "#[fg=magenta]#[bg=black] #I #[bg=cyan]#[fg=colour8] #W "
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=colour8] #I #[fg=colour8]#[bg=colour14] #W "
setw -g window-status-current-style fg=colour11,bg=colour0,dim
setw -g window-status-style fg=black,bg=green,reverse
# }
# Info on left (I don't have a session display for now)
#set -g status-left ""
# loud or quiet? {
set-option -g visual-activity off
set-option -g visual-bell off
set-option -g visual-silence off
set-window-option -g monitor-activity off
set-option -g bell-action none
# }
set -g default-terminal "screen-256color"
# The modes {
setw -g clock-mode-colour colour135
setw -g mode-style fg=colour196,bg=colour238,bold
# }
# The panes {
set -g pane-border-style fg=colour238,bg=colour235
set -g pane-active-border-style fg=colour51,bg=colour236
# }
# The statusbar {
set -g status-position bottom
set -g status-style fg=colour137,bg=colour234,dim
set -g status-left ''
set -g status-right ''
set -g status-right-length 50
set -g status-left-length 20
setw -g window-status-current-style fg=colour81,bg=colour238,bold
setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '
setw -g window-status-style fg=colour138,bg=colour235,none
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
setw -g window-status-bell-style fg=colour255,bg=colour1,bold
# }
# The messages {
set -g message-style fg=colour232,bg=colour166,bold
# }
# }
# Plugins {
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @resurrect-strategy-vim 'session'
set -g @resurrect-strategy-nvim 'session'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-restore 'on'
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run -b '~/.tmux/plugins/tpm/tpm'
# }