-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.tmux.conf
More file actions
94 lines (74 loc) · 3.11 KB
/
.tmux.conf
File metadata and controls
94 lines (74 loc) · 3.11 KB
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
# Binding
unbind C-b
# set -g prefix `
# bind-key ` send-prefix
set -g prefix2 C-Space
bind-key C-Space send-prefix -2
unbind r
bind r source-file ~/.tmux.conf
unbind-key &
bind-key & kill-window
unbind-key x
bind x kill-pane
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind b switch-client -l
bind j new-session -A -s api-v2 -c ~/dev/workspace/packages/api-v2/ "zsh -i -c 'nvim'"
bind u new-session -A -s admin -c ~/dev/workspace/packages/admin/ "zsh -i -c 'nvim'"
bind m new-session -A -s website -c ~/dev/workspace/packages/website-v2/ "zsh -i -c 'nvim'"
bind h new-session -A -s backend-api -c ~/dev/cleaq/backend-api/ "zsh -i -c 'nvim'"
bind n new-session -A -s frontend-next -c ~/dev/cleaq/frontend-next/ "zsh -i -c 'nvim'"
bind w new-session -A -s workspace -c ~/dev/workspace/ "zsh -i -c 'nvim'"
bind d new-session -A -s dotfiles -c ~/dotfiles/ "zsh -i -c 'nvim'"
bind t new-session -A -s todo -c ~/todo "zsh -i -c 'nvim -O backlog.md doing.md done.md'"
bind e new-session -A -s home -c ~/home
bind C-p popup -E;
bind C-y popup -h 90% -w 90% -E lazygit
bind C-f popup -E "tmux ls | sed 's/:.*//' | fzf | xargs tmux switchc -t"
bind C-e popup -E "~/dotfiles/tmux-menu.sh"
bind C-c split-window -c "#{pane_current_path}" "zsh -ic 'claude; zsh -i'"
bind C-s neww -c "#{pane_current_path}" "zsh -i ~/dotfiles/start-cleaq-backend.sh"
bind C-d neww -c "#{pane_current_path}" zsh -ic 'yarn dev; zsh -i'
bind f run "tmux neww -c '#{pane_current_path}' ~/.local/bin/tmux-sessionizer.sh"
bind-key v neww -c "#{pane_current_path}" "zsh -i ~/dotfiles/search-history.sh"
bind c neww -c "#{pane_current_path}"
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel
# Config
set -g mouse on
set -g mode-keys vi
set-option -sg escape-time 10
set-option -g focus-events on
set-option -g default-terminal "tmux-256color"
set -g base-index 1
setw -g pane-base-index 1
set-option -g update-environment "WAYLAND_DISPLAY"
set -g renumber-windows on
set -g detach-on-destroy off
set -g update-environment "DISPLAY WAYLAND_DISPLAY XDG_RUNTIME_DIR"
# Plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'christoomey/vim-tmux-navigator'
set -g @plugin 'sainnhe/tmux-fzf'
# # Restore nvim session
# set -g @resurrect-strategy-nvim 'session'
# set -g @continuum-boot 'on'
# set -g @continuum-restore 'on'
# Catpuccin
set -g @plugin 'catppuccin/tmux#v2.1.3'
set -g @catppuccin_window_status_style "rounded"
run ~/.tmux/plugins/tmux/catppuccin.tmux
set -g status-right-length 100
set -g status-left-length 100
set -g status-right "#{E:@catppuccin_status_application}"
set -ag status-right "#{E:@catppuccin_status_session}"
set -ag status-right "#{E:@catppuccin_status_uptime}"
set -g @catppuccin_window_text " #W" #{pane_current_path}"
set -g @catppuccin_window_current_text " #W" #{pane_current_path}"
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'
# run-shell ~/.tmux/plugins/tmux-continuum/continuum.tmux