-
Notifications
You must be signed in to change notification settings - Fork 0
/
.tmux.conf
117 lines (87 loc) · 3.3 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
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
# __ ___
# /\ \__ /'___\
# \ \ ,_\ ___ ___ __ __ __ _ ___ ___ ___ /\ \__/
# \ \ \/ /' __` __`\/\ \/\ \/\ \/'\ /'___\ / __`\ /' _ `\ \ ,__\
# __\ \ \_/\ \/\ \/\ \ \ \_\ \/> </ __/\ \__//\ \L\ \/\ \/\ \ \ \_/
# /\_\\ \__\ \_\ \_\ \_\ \____//\_/\_\/\_\ \____\ \____/\ \_\ \_\ \_\
# \/_/ \/__/\/_/\/_/\/_/\/___/ \//\/_/\/_/\/____/\/___/ \/_/\/_/\/_/
#
# @zanderhavgaard ~ https://github.com/zanderhavgaard/dotfiles
# === settings ===
# set update interval for statusline
set -s status-interval 5
# decrease timeout for pressing esacpe
set -sg escape-time 10
# count index of windows from 1 instead of 0
set -g base-index 1
# reorder windows with `:move-window -r`
# increase scroll back history lines
set -g history-limit 100000
# enable mouse mode
set -g mouse on
# sane scrolling
# set -g terminal-overrides 'xterm*:smcup@:rmcup@'
# enable utf-8
setw -gq utf8 on
# use 256 color mode
set -g default-terminal "tmux-256color"
# set -g default-terminal "screen-256color"
# set -g default-terminal "xterm-256color"
set-option -ga terminal-overrides ",xterm-256color:Tc"
# vi mode?
setw -g mode-keys vi
set -g status-keys vi
# === keybinds ===
# remap prefix from 'C-b' to 'C-a'
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf
# split panes using b & v and open split on same path as parent
bind b split-window -h -c "#{pane_current_path}"
bind v split-window -v -c "#{pane_current_path}"
unbind '"'
unbind %
# 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
# switch panes using Alt + vim-keys without prefix
bind -n M-h select-pane -L
bind -n M-l select-pane -R
bind -n M-k select-pane -U
bind -n M-j select-pane -D
# === tmux plugin manager ===
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
# theme
# set -g @plugin 'tmux-plugins/tmux-sensible'
# set -g @plugin 'jimeh/tmux-themepack'
# set -g @themepack 'basic'
# set -g @plugin 'dracula/tmux'
set -g @plugin 'o0th/tmux-nova'
# automatically save and restore tmux sessions
# set -g @plugin 'tmux-plugins/tmux-resurrect'
# set -g @plugin 'tmux-plugins/tmux-continuum'
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'
# === nova theme settings ==-
set -g @nova-rows 0
set -g @nova-pane-justify "centre"
set -g @nova-pane "#I#{?pane_in_mode, #{pane_mode},} #W#{?window_zoomed_flag, (zoom),}"
set -g @nova-segment-mode "#{?client_prefix,prefix,tmux}"
set -g @nova-segment-whoami "#(whoami)@#h"
set -g @nova-segment-time "#(date -u +\"%H:%M\")"
set -g @nova-segment-mode-colors "#9ACD68 #141A1F"
set -g @nova-segment-whoami-colors "#282C36 #CB96FF"
set -g @nova-segments-0-left "mode"
set -g @nova-segments-0-right "time whoami"
set -g "@nova-pane-active-border-style" "#6B859E"
set -g "@nova-pane-border-style" "#282C36"
set -g "@nova-status-style-bg" "#282C36"
set -g "@nova-status-style-fg" "#efefef"
set -g "@nova-status-style-active-bg" "#282C36"
set -g "@nova-status-style-active-fg" "#7DBEFF"
set -g "@nova-status-style-double-bg" "#282C36"