Add a native tmux Module and enable it on neogaia
Configure tmux through home-manager's programs.tmux: the settings it exposes as options (prefix, keyMode, mouse, baseIndex, clock24, escapeTime, historyLimit, terminal) are set as options, and every setting it has no option for is read verbatim from modules/tmux/extra.conf. No tmux plugin manager is used. The generated config is behaviourally identical to the reference, verified by parsing it with a live tmux binary.
This commit is contained in:
49
modules/tmux/extra.conf
Normal file
49
modules/tmux/extra.conf
Normal file
@@ -0,0 +1,49 @@
|
||||
# Copy-mode selections land in the system clipboard via the terminal's own
|
||||
# OSC52 escape sequence.
|
||||
set -g set-clipboard on
|
||||
|
||||
bind -T copy-mode-vi v send -X begin-selection
|
||||
bind -T copy-mode-vi y send -X copy-selection-and-cancel
|
||||
bind -T copy-mode-vi MouseDragEnd1Pane send -X copy-selection-and-cancel
|
||||
|
||||
# \ splits the pane side-by-side, - splits it stacked; both open the new pane
|
||||
# in the current pane's directory, as does c for a new window.
|
||||
unbind %
|
||||
unbind '"'
|
||||
bind \\ split-window -h -c "#{pane_current_path}"
|
||||
bind - split-window -v -c "#{pane_current_path}"
|
||||
bind c new-window -c "#{pane_current_path}"
|
||||
|
||||
bind h select-pane -L
|
||||
bind j select-pane -D
|
||||
bind k select-pane -U
|
||||
bind l select-pane -R
|
||||
|
||||
set -g renumber-windows on
|
||||
|
||||
bind r source-file ~/.config/tmux/tmux.conf \; display-message "tmux.conf reloaded"
|
||||
|
||||
# Advertise RGB (true-color) capability for every terminal type.
|
||||
set -ag terminal-overrides ",*:RGB"
|
||||
|
||||
# monitor-bell flags a background window in the status bar when it rings the
|
||||
# terminal bell while unfocused. bell-action=none suppresses the actual BEL
|
||||
# (no beep or flash); the per-window status highlight is independent of it.
|
||||
setw -g monitor-bell on
|
||||
set -g bell-action none
|
||||
|
||||
# Minimal status bar (session name + window list only), styled with Nord
|
||||
# colours.
|
||||
set -g status-position bottom
|
||||
set -g status-style "bg=#2E3440,fg=#D8DEE9"
|
||||
set -g status-left " #S "
|
||||
set -g status-left-length 20
|
||||
set -g status-right ""
|
||||
setw -g window-status-current-style "bg=#88C0D0,fg=#2E3440,bold"
|
||||
setw -g window-status-current-format " #I:#W "
|
||||
setw -g window-status-format " #I:#W "
|
||||
setw -g window-status-style "fg=#4C566A"
|
||||
setw -g window-status-bell-style "bg=#BF616A,fg=#2E3440,bold"
|
||||
|
||||
set -g pane-border-style "fg=#3B4252"
|
||||
set -g pane-active-border-style "fg=#88C0D0"
|
||||
Reference in New Issue
Block a user