summaryrefslogtreecommitdiffstats
path: root/clerk_fzf/tmux.clerk
blob: 5468707d079a64406433aaf83edb8a592d30b62d (plain)
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
###########################
#  Configuration
###########################
# set titles
set -g set-titles on
set -g set-titles-string '#T'

# use 256 term for pretty colors
set -g default-terminal "screen-256color"

# increase scroll-back history
set -g history-limit 5000

# use vim key bindings
setw -g mode-keys vi

# disable mouse
#setw -g mode-mouse off

# decrease command delay (increases vim responsiveness)
set -sg escape-time 1

# increase repeat time for repeatable commands
set -g repeat-time 1000

# start window index at 1
set -g base-index 1

# start pane index at 1
setw -g pane-base-index 1

# highlight window when it has new activity
#setw -g monitor-activity on
#set -g visual-activity on

# re-number windows when one is closed
set -g renumber-windows on

###########################
#  Key Bindings
###########################

# tmux prefix
unbind C-b
set -g prefix C-a

# create 'v' alias for selecting text
bind-key -t vi-copy v begin-selection

# paste
unbind C-p
bind C-p paste-buffer

# window splitting
unbind %
bind | split-window -h
unbind '"'
bind - split-window -v

# resize panes
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

# quickly switch panes
unbind ^J
bind ^J select-pane -t :.+

# force a reload of the config file
unbind r
bind r source-file ~/.tmux.conf \; display "Reloaded!"

###########################
# Status Bar
###########################
set-option -g status-position top

# enable UTF-8 support in status bar
#set -g status-utf8 on

# set refresh interval for status bar
set -g status-interval 30

# center the status bar
set -g status-justify centre

# show session, window, pane in left status bar
set -g status-left-length 40
set -g status-left ''
set -g status-right ''

###########################
# Colors
###########################

# color status bar
set -g status-bg colour235
#set -g status-fg white

#set -g status-bg default
set -g status-fg default
setw -g window-status-current-bg default
setw -g window-status-current-fg default
setw -g window-status-current-attr dim
setw -g window-status-bg default
setw -g window-status-fg white
setw -g window-status-attr bright
setw -g window-status-format ' #[fg=colour243,bold]#W '
setw -g window-status-current-format ' #[fg=yellow,bold]#[bg=colour235]#W '

# set color of active pane
#set -g pane-border-fg colour235
#set -g pane-border-bg black
#set -g pane-active-border-fg green
#set -g pane-active-border-bg black

bind-key -n F1 findw albums
bind-key -n F2 findw tracks
bind-key -n F3 findw latest
bind-key -n F4 findw queue
bind-key -n F5 run-shell 'mpc prev --quiet'
bind-key -n F6 run-shell 'mpc toggle --quiet'
bind-key -n F7 run-shell 'mpc stop --quiet'
bind-key -n F8 run-shell 'mpc next --quiet'
bind-key -n S-F12 run-shell 'clerk_fzf --create-caches'
bind-key -n F12 run-shell 'clerk_update'
bind-key -n F9 run-shell 'clerk_fzf --random_album'
bind-key -n F10 run-shell 'clerk_fzf --random_tracks'
bind-key -n C-h run-shell 'clerk_help'