home/.tmux.conf (view raw)
1set -g prefix C-q
2set -g set-titles on
3set-option -g set-titles-string "#T"
4unbind-key C-b
5bind-key C-q send-prefix
6set -g update-environment "KEYBOARD_LAYOUT"
7
8bind r source-file ~/.tmux.conf
9
10set-option -g default-terminal xterm-256color
11set -as terminal-overrides '*:Ss=\E[%p1%d q:Se=\E[2 q'
12set escape-time 20
13
14set -g mouse on
15
16set -g base-index 1
17setw -g pane-base-index 1
18
19# pane binds
20bind -n M-n select-pane -D
21bind -n M-e select-pane -U
22bind -n M-y select-pane -L
23bind -n M-o select-pane -R
24
25# window binds
26bind -n C-M-y previous-window
27bind -n C-M-o next-window
28bind-key c split-window -h -c "#{pane_current_path}"
29bind-key v new-window -c "#{pane_current_path}"
30bind-key s choose-session
31bind-key ) swap-window -t +2
32bind-key ( swap-window -t -1
33bind-key [ copy-mode
34
35# pop-up pane to open urls
36bind-key u display-popup -E "firefox -new-tab $(xurls)"
37
38# statusline on top
39set-option -g status-position top
40
41# statusline hide / unhide
42bind -n M-down set -q status off
43bind -n M-up set -q status on
44bind P paste-buffer
45
46bind E command-prompt -p "Command:" \
47 "run \"tmux list-panes -a -F '##{session_name}:##{window_index}.##{pane_index}' \
48 | xargs -I PANE tmux send-keys -t PANE '%1' Enter\""
49
50set-window-option -g allow-rename off
51
52set -g pane-border-style fg=colour11
53set -g pane-active-border-style fg=colour8
54
55set -g status-justify right
56set -g status-right ""
57set -g status-style "bg=colour0"
58set -ag status-style "fg=colour7"
59
60set -g window-status-current-format "#[fg=colour15] #W"
61set -g window-status-format "#[fg=colour8] #W"
62
63set -g status-left-length 100
64set -g status-left "#[fg=colour8]time #[fg=colour15]#(date +"%H:%M") "
65set -ag status-left "#[fg=colour8]date #[fg=colour15]#(date.sh) "
66set -ag status-left "#[fg=colour8]bat #[fg=colour15]#(~/bin/bat -q) "
67set -ag status-left "#[fg=colour8]#(~/bin/np.sh -a) #[fg=colour15]#(~/bin/np.sh -t)"