-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtmux.conf
87 lines (73 loc) · 3.02 KB
/
tmux.conf
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
# -------------------------------------------------------------
# => General
# -------------------------------------------------------------
set -g utf8 on
# zsh as default shell
set -g default-terminal "xterm"
set -g default-command /bin/zsh
set -g default-shell /bin/zsh
# Connect tmux to the OS X clipboard service
set-option -g default-command "reattach-to-user-namespace -l zsh"
# Easier prefix, just like Screen
set -g prefix C-a
bind C-a send-prefix # Sending prefix to other applications
unbind C-b # Free Ctrl-b
set -s escape-time 1 # More responsive keystrokes
set -g base-index 1 # Windows index starts from one
setw -g pane-base-index 1 # Panes index starts from one
setw -g mouse off # Disable auxiliary hand device
set -g default-terminal "screen-256color" # Display colors
setw -g mode-keys vi # Vi mode for keys
set-option -g history-limit 10000 # Pane history limit
# -------------------------------------------------------------
# => Shortcuts
# -------------------------------------------------------------
# Reload configuration
bind r source-file ~/.tmux.conf\; display "Conf Reloaded!"
# Split windows vertically in same directory
bind | split-window -h -c "#{pane_current_path}"
# Split windows horizontally in same directory
bind - split-window -v -c "#{pane_current_path}"
# Remapping pane movement
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Move to the previous/next window
bind -r C-h select-window -t:-
bind -r C-l select-window -t:+
# Remapping pane size increments
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
# Ramapping copy and paste to Vi like
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
#bind -t vi-copy 'v' begin-selection
#bind -t vi-copy 'y' copy-selection
# Copy and paste to Linux clipboard (commented since I'm using OS X now)
#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"
# Pane command sync
bind C-s set-window-option synchronize-panes
# -------------------------------------------------------------
# => Visual
# -------------------------------------------------------------
# Status Bar
set -g status-fg white
set -g status-bg black
setw -g status-style fg=cyan,bg=default
setw -g window-status-current-style fg=white,bg=red,bright
set -g status-left-length 40
set -g status-right-length 80
set -g window-status-format " #I:#W "
set -g window-status-current-format " #I:#W "
set -g status-left "#[fg=yellow] #[fg=white]J-TMUX #[fg=green][#S] #[fg=yellow]#(~/dotfiles/tmux.script.zoomstatus)"
set -g status-right "#[fg=cyan]⁞#[fg=white] \uf8d1 biz-tickets #(~/dotfiles/tmux.script.notion.rb) #[fg=cyan]⁞#[fg=white] tasks #[fg=red]#(~/dotfiles/tmux.script.todoist.rb overdue) #[fg=blue]#(~/dotfiles/tmux.script.todoist.rb today) #[fg=cyan]⁞#[fg=white] #(~/dotfiles/tmux.script.reminders.rb)"
set -g status-interval 20
setw -g monitor-activity on
set -g visual-activity on
set-option -g allow-rename off