mirror of
https://github.com/kristoferssolo/solorice.git
synced 2025-10-21 20:10:34 +00:00
153 lines
6.6 KiB
Plaintext
153 lines
6.6 KiB
Plaintext
# Set true color
|
|
set -g default-terminal "screen-256color"
|
|
set-option -sa terminal-overrides ",Alacritty*:Tc"
|
|
set-option -sa terminal-overrides ",alacritty*:Tc"
|
|
set-option -sa terminal-overrides ",xterm*:Tc"
|
|
set-option -sa terminal-overrides ",Ghostty*:Tc"
|
|
set-option -sa terminal-overrides ",ghostty*:Tc"
|
|
|
|
set-option -g status-position top
|
|
set-option -sg escape-time 0
|
|
set-option -g focus-events on
|
|
|
|
set -g allow-passthrough on
|
|
set -g visual-activity off
|
|
|
|
set -g mouse on
|
|
|
|
# Disable setatus bar
|
|
set -g status on
|
|
|
|
# Set prefix
|
|
unbind C-b
|
|
unbind C-l
|
|
set -g prefix C-s
|
|
|
|
# Shift-Alt vim keys to switch windows
|
|
bind -n M-H previous-window
|
|
bind -n M-L next-window
|
|
|
|
# Ctrls-Shift-Alt vim keys to switch windows
|
|
# bind -n C-M-H previous-session
|
|
# bind -n C-M-L next-session
|
|
|
|
# Start windows and panes at 1, not 0
|
|
set -g base-index 1
|
|
set -g pane-base-index 1
|
|
set-window-option -g pane-base-index 1
|
|
set-option -g renumber-windows on
|
|
|
|
|
|
# Open panes in current directory
|
|
bind '"' split-window -v -c "#{pane_current_path}"
|
|
bind % split-window -h -c "#{pane_current_path}"
|
|
|
|
bind-key -r i run-shell "tmux neww chtsh"
|
|
bind-key -r f run-shell "tmux neww ~/.local/bin/tmux-sessionizer"
|
|
|
|
|
|
set -g @plugin "tmux-plugins/tpm"
|
|
set -g @plugin "tmux-plugins/tmux-sensible"
|
|
set -g @plugin "christoomey/vim-tmux-navigator"
|
|
set -g @plugin "tmux-plugins/tmux-yank"
|
|
# set -g @plugin "ofirgall/tmux-window-name"
|
|
set -g @plugin "tmux-plugins/tmux-resurrect"
|
|
set -g @plugin "rose-pine/tmux"
|
|
|
|
set -ga update-environment TERM
|
|
set -ga update-environment TERM_PROGRAM
|
|
|
|
# set vi-mode
|
|
set-window-option -g mode-keys vi
|
|
# keybindings
|
|
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
|
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
|
|
bind-key -T copy-mode-vi y send-keys -X copy-selectet-and-cancel
|
|
|
|
|
|
# Rose pine
|
|
set -g @rose_pine_variant 'main' # Options are 'main', 'moon' or 'dawn'
|
|
set -g @rose_pine_host 'on' # Enables hostname in the status bar
|
|
set -g @rose_pine_date_time '' # It accepts the date UNIX command format (man date for info)
|
|
set -g @rose_pine_user 'on' # Turn on the username component in the statusbar
|
|
set -g @rose_pine_directory 'on' # Turn on the current folder component in the status bar
|
|
set -g @rose_pine_bar_bg_disable 'default' # Disables background color, for transparent terminal emulators
|
|
# If @rose_pine_bar_bg_disable is set to 'on', uses the provided value to set the background color
|
|
# It can be any of the on tmux (named colors, 256-color set, `default` or hex colors)
|
|
# See more on http://man.openbsd.org/OpenBSD-current/man1/tmux.1#STYLES
|
|
set -g @rose_pine_bar_bg_disabled_color_option 'default'
|
|
|
|
set -g @rose_pine_only_windows 'on' # Leaves only the window module, for max focus and space
|
|
set -g @rose_pine_disable_active_window_menu 'on' # Disables the menu that shows the active window on the left
|
|
|
|
set -g @rose_pine_default_window_behavior 'on' # Forces tmux default window list behaviour
|
|
set -g @rose_pine_show_current_program 'on' # Forces tmux to show the current running program as window name
|
|
set -g @rose_pine_show_pane_directory 'on' # Forces tmux to show the current directory as window name
|
|
# Previously set -g @rose_pine_window_tabs_enabled
|
|
|
|
# Example values for these can be:
|
|
set -g @rose_pine_left_separator ' > ' # The strings to use as separators are 1-space padded
|
|
set -g @rose_pine_right_separator ' < ' # Accepts both normal chars & nerdfont icons
|
|
set -g @rose_pine_field_separator ' | ' # Again, 1-space padding, it updates with prefix + I
|
|
set -g @rose_pine_window_separator ' - ' # Replaces the default `:` between the window number and name
|
|
|
|
# These are not padded
|
|
set -g @rose_pine_session_icon '' # Changes the default icon to the left of the session name
|
|
set -g @rose_pine_current_window_icon '' # Changes the default icon to the left of the active window name
|
|
set -g @rose_pine_folder_icon '' # Changes the default icon to the left of the current directory folder
|
|
set -g @rose_pine_username_icon '' # Changes the default icon to the right of the hostname
|
|
set -g @rose_pine_hostname_icon '' # Changes the default icon to the right of the hostname
|
|
set -g @rose_pine_date_time_icon '' # Changes the default icon to the right of the date module
|
|
set -g @rose_pine_window_status_separator " " # Changes the default icon that appears between window names
|
|
|
|
# Very beta and specific opt-in settings, tested on v3.2a, look at issue #10
|
|
set -g @rose_pine_prioritize_windows 'on' # Disables the right side functionality in a certain window count / terminal width
|
|
set -g @rose_pine_width_to_hide '80' # Specify a terminal width to toggle off most of the right side functionality
|
|
set -g @rose_pine_window_count '5' # Specify a number of windows, if there are more than the number, do the same as width_to_hide
|
|
|
|
# TokyoNight colors for Tmux
|
|
|
|
# set -g mode-style "fg=#7aa2f7,bg=#3b4261"
|
|
#
|
|
# set -g message-style "fg=#7aa2f7,bg=#3b4261"
|
|
# set -g message-command-style "fg=#7aa2f7,bg=#3b4261"
|
|
#
|
|
# set -g pane-border-style "fg=#3b4261"
|
|
# set -g pane-active-border-style "fg=#7aa2f7"
|
|
#
|
|
# set -g status "on"
|
|
# set -g status-justify "left"
|
|
#
|
|
# set -g status-style "fg=#7aa2f7,bg=#16161e"
|
|
#
|
|
# set -g status-left-length "100"
|
|
# set -g status-right-length "100"
|
|
#
|
|
# set -g status-left-style NONE
|
|
# set -g status-right-style NONE
|
|
#
|
|
# set -g status-left "#[fg=#15161e,bg=#7aa2f7,bold] #S #[fg=#7aa2f7,bg=#16161e,nobold,nounderscore,noitalics]"
|
|
# set -g status-right "#[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#16161e] #{prefix_highlight} #[fg=#3b4261,bg=#16161e,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#3b4261] %H:%M | %d.%m.%Y #[fg=#7aa2f7,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#15161e,bg=#7aa2f7,bold] #h "
|
|
#
|
|
# setw -g window-status-activity-style "underscore,fg=#a9b1d6,bg=#16161e"
|
|
# setw -g window-status-separator ""
|
|
# setw -g window-status-style "NONE,fg=#a9b1d6,bg=#16161e"
|
|
# setw -g window-status-format "#[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]#[default] #I #W #F #[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]"
|
|
# setw -g window-status-current-format "#[fg=#16161e,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#3b4261,bold] #I #W #F #[fg=#3b4261,bg=#16161e,nobold,nounderscore,noitalics]"
|
|
|
|
# tmux-plugins/tmux-prefix-highlight support
|
|
set -g @prefix_highlight_output_prefix "#[fg=#e0af68]#[bg=#16161e]#[fg=#16161e]#[bg=#e0af68]"
|
|
set -g @prefix_highlight_output_suffix ""
|
|
|
|
set -g @resurrect-strategy-nvim 'session'
|
|
set -g @resurrect-capture-pane-contents 'on'
|
|
|
|
|
|
set -g @tmux_window_dir_programs "['nvim', 'vim', 'vi', 'git']"
|
|
set -g @tmux_window_name_ignored_programs "[]"
|
|
set -g @tmux_window_name_max_name_len "20"
|
|
set -g @tmux_window_name_use_tilde "True"
|
|
set -g @tmux_window_name_show_program_args "True"
|
|
|
|
run "~/.config/tmux/plugins/tpm/tpm"
|