1
0
mirror of https://github.com/xzeldon/dotfiles-wsl2.git synced 2025-04-07 22:47:09 +03:00
Timofey Gelazoniya 3f162167f9
fix: ensure fish is launched as login shell in first window
The SSH agent wasn't properly initializing in the first tmux window becausefish wasn't being launched as a login shell. This caused the condition status is-login to fail, preventing wsl2-ssh-agent from running.
2025-03-25 18:35:49 +03:00

72 lines
2.8 KiB
Bash

# Use fish as default
set -g default-shell /usr/sbin/fish
# Enable 256-color and true-color (24-bit) support in tmux
set -g default-terminal "screen-256color" # Set terminal type for 256-color support
set -ga terminal-overrides ",*256col*:Tc" # Override to enable true-color for compatible terminals
# General
set -g set-clipboard on # Use system clipboard
set -g detach-on-destroy off # Don't exit from tmux when closing a session
set -g escape-time 0 # Remove delay for exiting insert mode with ESC in Neovim
set -g history-limit 1000000 # Increase history size (from 2,000)
set -g mouse on # Enable mouse support
set -g status-interval 3 # Update the status bar every 3 seconds (default: 15 seconds)
set -g allow-passthrough on # Allow programs in the pane to bypass tmux (e.g. for image preview)
# Set prefix key
unbind C-b # Unbind the default prefix key
set -g prefix C-Space # Set new prefix key to Ctrl+Space
# Refresh tmux config with r
unbind r
bind r source-file ~/.config/tmux/tmux.conf
# New panes in current path
bind c new-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
bind '"' split-window -v -c "#{pane_current_path}"
# Set first window to index 1 (not 0) to map more to the keyboard layout
set-option -g renumber-windows on
set -g base-index 1
setw -g pane-base-index 1
# tpm plugin manager
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'hendrikmi/tmux-cpu-mem-monitor' # CPU and memory info
# Some tweaks to the status bar
set -g status-right ""
set -g window-status-current-style "underscore"
# Status bar
set-option -g status on
set-option -g status-interval 1
set-option -g status-justify centre
set-option -g status-keys vi
set-option -g status-position bottom
set-option -g status-style fg=colour136,bg=colour235
set-option -g status-left-length 35
set-option -g status-left-style default
set-option -g status-left "#[fg=green]#H #[fg=green,bright]#(uname -r | sed 's/-microsoft-standard//')#[default]"
set-option -g status-right-length 140
set-option -g status-right-style default
set-option -g status-right "#[fg=green]CPU: #{cpu -i 3} MEM: #{mem} DISK: #{disk --path /mnt/k -f}#[default] "
set-option -ag status-right "#[fg=blue]%d.%m.%Y"
set-window-option -g window-status-style fg=colour244
set-window-option -g window-status-style bg=default
set-window-option -g window-status-current-style fg=colour166
set-window-option -g window-status-current-style bg=default
# Create a single default session - because a session is created here, tmux
# should be started with "tmux attach" rather than "tmux new"
new -d -s1 -nfish 'fish -l'
set -t1:1 monitor-activity on
set -t1:1 aggressive-resize on
neww -d
neww -d
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'