|
|
@@ -0,0 +1,120 @@
|
|
|
+#Prefix is Ctrl-a
|
|
|
+set -g prefix C-a
|
|
|
+bind C-a send-prefix
|
|
|
+unbind C-b
|
|
|
+
|
|
|
+setw -g utf8 on
|
|
|
+setw -g status-utf8 on
|
|
|
+
|
|
|
+# set -g default-command "bash -l"
|
|
|
+set -sg escape-time 1
|
|
|
+set -g base-index 1
|
|
|
+setw -g pane-base-index 1
|
|
|
+
|
|
|
+#Mouse works as expected
|
|
|
+setw -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
|
|
|
+# bind-key c new-window -n 'bash'
|
|
|
+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
|
|
|
+
|
|
|
+bind R source-file ~/.tmux.conf \; display-message "Config reloaded..."
|
|
|
+bind C-n new-session -n 'vim' -s '%%'
|
|
|
+
|
|
|
+# set 256 color
|
|
|
+set -g default-terminal "screen-256color"
|
|
|
+set-window-option -g xterm-keys on
|
|
|
+
|
|
|
+# ----------------------
|
|
|
+# Status Bar
|
|
|
+# -----------------------
|
|
|
+set-option -g status on # turn the status bar on
|
|
|
+set -g utf8 on
|
|
|
+set -g status-utf8 on # set utf-8 for the status bar
|
|
|
+set -g status-interval 5 # set update frequencey (default 15 seconds)
|
|
|
+# set-option -g status-position top # position the status bar at top of screen
|
|
|
+
|
|
|
+# visual notification of activity in other windows
|
|
|
+setw -g monitor-activity on
|
|
|
+set -g visual-activity on
|
|
|
+
|
|
|
+## set color for status bar
|
|
|
+#set-option -g status-bg green #base02
|
|
|
+#set-option -g status-fg black #yellow
|
|
|
+#set-option -g status-attr dim
|
|
|
+
|
|
|
+## set window list colors - red for active and cyan for inactive
|
|
|
+#set-window-option -g window-status-fg brightblue #base0
|
|
|
+#set-window-option -g window-status-bg colour236
|
|
|
+#set-window-option -g window-status-attr dim
|
|
|
+
|
|
|
+#set-window-option -g window-status-current-fg brightred #orange
|
|
|
+#set-window-option -g window-status-current-bg colour236
|
|
|
+#set-window-option -g window-status-current-attr bright
|
|
|
+
|
|
|
+## show host name and IP address on left side of status bar
|
|
|
+#set -g status-left-length 70
|
|
|
+#set -g status-left "#[fg=black]: #S :"
|
|
|
+
|
|
|
+## show session name, window & pane number, date and time on right side of
|
|
|
+## status bar
|
|
|
+#set -g status-right-length 60
|
|
|
+#set -g status-right "#[fg=black]\"#H\" :: %d %b %Y :: %l:%M %p ::"
|
|
|
+
|
|
|
+set -g @tpm_plugins ' \
|
|
|
+ tmux-plugins/tpm \
|
|
|
+ tmux-plugins/tmux-resurrect \
|
|
|
+ tmux-plugins/tmux-copycat \
|
|
|
+ tmux-plugins/tmux-continuum \
|
|
|
+'
|
|
|
+run-shell '~/.tmux/plugins/tpm/tpm'
|
|
|
+run-shell '~/.tmux/plugins/tmux-resurrect/resurrect.tmux'
|
|
|
+
|
|
|
+## Resurrect
|
|
|
+set -g @resurrect-strategy-vim 'session'
|
|
|
+set -g @resurrect-strategy-nvim 'session'
|
|
|
+
|
|
|
+# continuum
|
|
|
+set -g @continuum-save-interval '15'
|
|
|
+set -g @continuum-restore 'on'
|