From 83437f5901676cd99ba4cf65cc3cdfc5d6f5c02d Mon Sep 17 00:00:00 2001 From: "Mariano Z." Date: Mon, 27 Oct 2025 19:42:38 -0300 Subject: [PATCH] dev: automated commit - 2025-10-27 19:42:38 --- tmux/.config/tmux/tmux.conf | 44 +---- .../tmux/tmux.conf.backup.20251026_165838 | 154 ++++++++++++++++++ .../tmux/tmux.conf.backup.20251027_115806 | 139 ++++++++++++++++ zsh/.config/zsh/completions/external.zsh | 16 +- 4 files changed, 307 insertions(+), 46 deletions(-) create mode 100644 tmux/.config/tmux/tmux.conf.backup.20251026_165838 create mode 100644 tmux/.config/tmux/tmux.conf.backup.20251027_115806 diff --git a/tmux/.config/tmux/tmux.conf b/tmux/.config/tmux/tmux.conf index e0d320e..ec0728e 100644 --- a/tmux/.config/tmux/tmux.conf +++ b/tmux/.config/tmux/tmux.conf @@ -83,7 +83,7 @@ set -g terminal-overrides ',xterm-256color:Tc' set -g @plugin 'tmux-plugins/tpm' set -g @plugin 'tmux-plugins/tmux-sensible' set -g @plugin 'tmux-plugins/tmux-yank' -set -g @plugin 'catppuccin/tmux#v0.2.0' +set -g @plugin 'uhs-robert/tmux-oasis' set -g @plugin 'tmux-plugins/tmux-battery' # Re-enabled with our fixes set -g @plugin 'MaximilianGaedig/tmux-filter' @@ -93,45 +93,17 @@ set -g @yank_selection_mouse 'clipboard' set -g @yank_selection 'clipboard' set -g @yank_action 'copy-pipe' # or 'copy-pipe-and-cancel' for the default -# Catppuccin Theme Configuration +# Oasis Theme Configuration +# ------------------------- set -g status-position top -set -g @catppuccin_window_left_separator "█" -set -g @catppuccin_window_right_separator "█" -set -g @catppuccin_window_number_position "left" -set -g @catppuccin_window_middle_separator "█ " -set -g @catppuccin_window_default_fill "number" -set -g @catppuccin_window_current_fill "number" -set -g @catppuccin_window_current_text "#W#{?window_zoomed_flag,(🔍),}" -set -g @catppuccin_window_default_text "#W" +set -g @oasis_flavor "twilight" # Twilight Purple variant +# Other options: "night", "midnight", "abyss", "starlight", "desert", "sol", "canyon", "dune", "cactus", "mirage", "lagoon", "rose", "dawn" -# Determine status modules based on hostname -run-shell "if [ $(hostname) = 'fw' ]; then \ - tmux set -g @catppuccin_status_modules_right 'date_time battery session'; \ - else \ - tmux set -g @catppuccin_status_modules_right 'date_time session'; \ +# Battery module - determine if battery is available +run-shell "if [ -d /sys/class/power_supply/BAT* ]; then \ + tmux set -g @status_right_append_section '#{tmux_battery_status_bg}'; \ fi" -set -g @catppuccin_status_left_separator "" -set -g @catppuccin_status_right_separator " " -set -g @catppuccin_status_right_separator_inverse "yes" -set -g @catppuccin_status_fill "all" -set -g @catppuccin_status_connect_separator "yes" -set -g @catppuccin_date_time_text "%Y-%m-%d %H:%M:%S" - -# Rose Pine Color Scheme -set -g @catppuccin_pane_color "#1e1e2e" -set -g @catppuccin_pane_background_color "#181825" -set -g @catppuccin_window_current_color "#eb6f92" -set -g @catppuccin_window_current_background_color "#f5e0dc" -set -g @catppuccin_window_default_color "#ebbcba" -set -g @catppuccin_window_default_background_color "#f5e0dc" -set -g @catppuccin_session_color "#9ccfd8" -set -g @catppuccin_session_background_color "#f5e0dc" -set -g @catppuccin_directory_color "#c4a7e7" -set -g @catppuccin_directory_background_color "#f5e0dc" -set -g @catppuccin_date_time_color "#f6c177" -set -g @catppuccin_date_time_background_color "#f5e0dc" - # Battery Icons (Glyphs) set -g @batt_icon_charge_tier8 '' set -g @batt_icon_charge_tier7 '' diff --git a/tmux/.config/tmux/tmux.conf.backup.20251026_165838 b/tmux/.config/tmux/tmux.conf.backup.20251026_165838 new file mode 100644 index 0000000..e0d320e --- /dev/null +++ b/tmux/.config/tmux/tmux.conf.backup.20251026_165838 @@ -0,0 +1,154 @@ +# ============================================== +# === TMUX Configuration === +# ============================================== + +# General Settings +# ---------------- +set -g prefix C-a # Use CTRL+a as our tmux command prefix +unbind C-b # Unbind default prefix +set -g base-index 1 # Start windows numbering at 1 +setw -g pane-base-index 1 # Start pane numbering at 1 +set -g renumber-windows on # Renumber windows when a window is closed +set -s escape-time 1 # Lower the default tmux delay +set -g mouse on # Enable mouse support +setw -g aggressive-resize on # Only resize screen if smaller screen is active +set -g history-limit 10000 # Store 10k lines of history +set-option -g allow-rename off # Disable automatic window renaming +set-option -s set-clipboard on # Enable clipboard support +setw -g mode-keys vi # Use vi keys in copy mode + + +# Key Bindings +# ------------ +bind r source-file $XDG_CONFIG_HOME/tmux/tmux.conf \; display "tmux reloaded!" # Reload config +bind v split-window -h -c "#{pane_current_path}" # Split vertically +bind s split-window -v -c "#{pane_current_path}" # Split horizontally + +# Vim-like pane navigation +bind h select-pane -L +bind j select-pane -D +bind k select-pane -U +bind l select-pane -R + +# Vim-like pane resizing +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 + +# Vim-like copy mode navigation +bind-key -T copy-mode-vi h send-keys -X cursor-left +bind-key -T copy-mode-vi j send-keys -X cursor-down +bind-key -T copy-mode-vi k send-keys -X cursor-up +bind-key -T copy-mode-vi l send-keys -X cursor-right +bind-key -T copy-mode-vi w send-keys -X next-word +bind-key -T copy-mode-vi b send-keys -X previous-word +bind-key -T copy-mode-vi 0 send-keys -X start-of-line +bind-key -T copy-mode-vi $ send-keys -X end-of-line +bind-key -T copy-mode-vi G send-keys -X history-bottom +bind-key -T copy-mode-vi g send-keys -X history-top +bind-key -T copy-mode-vi / command-prompt -T search -I "#{pane_current_path}" "send -X search-forward \"%%\"" +bind-key -T copy-mode-vi ? command-prompt -T search -I "#{pane_current_path}" "send -X search-backward \"%%\"" +bind-key -T copy-mode-vi n send-keys -X search-again +bind-key -T copy-mode-vi N send-keys -X search-reverse +bind-key -T copy-mode-vi v send-keys -X begin-selection +bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel +bind-key -T copy-mode-vi Escape send-keys -X cancel + +# Move pane to a different window +bind-key m choose-window -F "#{window_index}: #{window_name}" "join-pane -h -t %%" +bind-key M choose-window -F "#{window_index}: #{window_name}" "join-pane -v -t %%" + +# Visual Settings +# --------------- +set -g status-interval 2 +set-option -g visual-activity off +set-option -g visual-bell off +set-option -g visual-silence off +set-window-option -g monitor-activity off +set-option -g bell-action none + +# Terminal Settings +# ----------------- +set -gq allow-passthrough on +set -g visual-activity off + +set -ga update-environment TERM +set -ga update-environment TERM_PROGRAM +set -g default-terminal "tmux-256color" +set -g terminal-overrides ',xterm-256color:Tc' + +# Plugins +# ------- +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' +set -g @plugin 'tmux-plugins/tmux-yank' +set -g @plugin 'catppuccin/tmux#v0.2.0' +set -g @plugin 'tmux-plugins/tmux-battery' # Re-enabled with our fixes +set -g @plugin 'MaximilianGaedig/tmux-filter' + +# Plugin Settings +# --------------- +set -g @yank_selection_mouse 'clipboard' +set -g @yank_selection 'clipboard' +set -g @yank_action 'copy-pipe' # or 'copy-pipe-and-cancel' for the default + +# Catppuccin Theme Configuration +set -g status-position top +set -g @catppuccin_window_left_separator "█" +set -g @catppuccin_window_right_separator "█" +set -g @catppuccin_window_number_position "left" +set -g @catppuccin_window_middle_separator "█ " +set -g @catppuccin_window_default_fill "number" +set -g @catppuccin_window_current_fill "number" +set -g @catppuccin_window_current_text "#W#{?window_zoomed_flag,(🔍),}" +set -g @catppuccin_window_default_text "#W" + +# Determine status modules based on hostname +run-shell "if [ $(hostname) = 'fw' ]; then \ + tmux set -g @catppuccin_status_modules_right 'date_time battery session'; \ + else \ + tmux set -g @catppuccin_status_modules_right 'date_time session'; \ + fi" + +set -g @catppuccin_status_left_separator "" +set -g @catppuccin_status_right_separator " " +set -g @catppuccin_status_right_separator_inverse "yes" +set -g @catppuccin_status_fill "all" +set -g @catppuccin_status_connect_separator "yes" +set -g @catppuccin_date_time_text "%Y-%m-%d %H:%M:%S" + +# Rose Pine Color Scheme +set -g @catppuccin_pane_color "#1e1e2e" +set -g @catppuccin_pane_background_color "#181825" +set -g @catppuccin_window_current_color "#eb6f92" +set -g @catppuccin_window_current_background_color "#f5e0dc" +set -g @catppuccin_window_default_color "#ebbcba" +set -g @catppuccin_window_default_background_color "#f5e0dc" +set -g @catppuccin_session_color "#9ccfd8" +set -g @catppuccin_session_background_color "#f5e0dc" +set -g @catppuccin_directory_color "#c4a7e7" +set -g @catppuccin_directory_background_color "#f5e0dc" +set -g @catppuccin_date_time_color "#f6c177" +set -g @catppuccin_date_time_background_color "#f5e0dc" + +# Battery Icons (Glyphs) +set -g @batt_icon_charge_tier8 '' +set -g @batt_icon_charge_tier7 '' +set -g @batt_icon_charge_tier6 '' +set -g @batt_icon_charge_tier5 '' +set -g @batt_icon_charge_tier4 '' +set -g @batt_icon_charge_tier3 '' +set -g @batt_icon_charge_tier2 '' +set -g @batt_icon_charge_tier1 '' + +# Plugin Manager +set-environment -g TMUX_PLUGIN_MANAGER_PATH "$XDG_DATA_HOME/tmux/plugins" + +# Install TPM if not already installed +if "test ! -d ~/.local/share/tmux/plugins/tpm" \ + "run 'git clone https://github.com/tmux-plugins/tpm ~/.local/share/tmux/plugins/tpm'" + +# Initialize TPM (keep this line at the very bottom of tmux.conf) +run '~/.local/share/tmux/plugins/tpm/tpm' + diff --git a/tmux/.config/tmux/tmux.conf.backup.20251027_115806 b/tmux/.config/tmux/tmux.conf.backup.20251027_115806 new file mode 100644 index 0000000..f28a4d9 --- /dev/null +++ b/tmux/.config/tmux/tmux.conf.backup.20251027_115806 @@ -0,0 +1,139 @@ +# ============================================== +# === TMUX Configuration === +# ============================================== + +# General Settings +# ---------------- +set -g prefix C-a # Use CTRL+a as our tmux command prefix +unbind C-b # Unbind default prefix +set -g base-index 1 # Start windows numbering at 1 +setw -g pane-base-index 1 # Start pane numbering at 1 +set -g renumber-windows on # Renumber windows when a window is closed +set -s escape-time 1 # Lower the default tmux delay +set -g mouse on # Enable mouse support +setw -g aggressive-resize on # Only resize screen if smaller screen is active +set -g history-limit 10000 # Store 10k lines of history +set-option -g allow-rename off # Disable automatic window renaming +set-option -s set-clipboard on # Enable clipboard support +setw -g mode-keys vi # Use vi keys in copy mode + + +# Key Bindings +# ------------ +bind r source-file $XDG_CONFIG_HOME/tmux/tmux.conf \; display "tmux reloaded!" # Reload config +bind v split-window -h -c "#{pane_current_path}" # Split vertically +bind s split-window -v -c "#{pane_current_path}" # Split horizontally + +# Vim-like pane navigation +bind h select-pane -L +bind j select-pane -D +bind k select-pane -U +bind l select-pane -R + +# Vim-like pane resizing +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 + +# Vim-like copy mode navigation +bind-key -T copy-mode-vi h send-keys -X cursor-left +bind-key -T copy-mode-vi j send-keys -X cursor-down +bind-key -T copy-mode-vi k send-keys -X cursor-up +bind-key -T copy-mode-vi l send-keys -X cursor-right +bind-key -T copy-mode-vi w send-keys -X next-word +bind-key -T copy-mode-vi b send-keys -X previous-word +bind-key -T copy-mode-vi 0 send-keys -X start-of-line +bind-key -T copy-mode-vi $ send-keys -X end-of-line +bind-key -T copy-mode-vi G send-keys -X history-bottom +bind-key -T copy-mode-vi g send-keys -X history-top +bind-key -T copy-mode-vi / command-prompt -T search -I "#{pane_current_path}" "send -X search-forward \"%%\"" +bind-key -T copy-mode-vi ? command-prompt -T search -I "#{pane_current_path}" "send -X search-backward \"%%\"" +bind-key -T copy-mode-vi n send-keys -X search-again +bind-key -T copy-mode-vi N send-keys -X search-reverse +bind-key -T copy-mode-vi v send-keys -X begin-selection +bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel +bind-key -T copy-mode-vi Escape send-keys -X cancel + +# Move pane to a different window +bind-key m choose-window -F "#{window_index}: #{window_name}" "join-pane -h -t %%" +bind-key M choose-window -F "#{window_index}: #{window_name}" "join-pane -v -t %%" + +# Visual Settings +# --------------- +set -g status-interval 2 +set-option -g visual-activity off +set-option -g visual-bell off +set-option -g visual-silence off +set-window-option -g monitor-activity off +set-option -g bell-action none + +# Terminal Settings +# ----------------- +set -gq allow-passthrough on +set -g visual-activity off + +set -ga update-environment TERM +set -ga update-environment TERM_PROGRAM +set -g default-terminal "tmux-256color" +set -g terminal-overrides ',xterm-256color:Tc' + +# Plugins +# ------- +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' +set -g @plugin 'tmux-plugins/tmux-yank' +set -g @plugin 'rose-pine/tmux' +set -g @plugin 'tmux-plugins/tmux-battery' # Re-enabled with our fixes +set -g @plugin 'MaximilianGaedig/tmux-filter' + +# Plugin Settings +# --------------- +set -g @yank_selection_mouse 'clipboard' +set -g @yank_selection 'clipboard' +set -g @yank_action 'copy-pipe' # or 'copy-pipe-and-cancel' for the default + +# Rosé Pine Theme Configuration +# ----------------------------- +set -g status-position top +set -g @rose_pine_variant 'main' # Options are 'main', 'moon' or 'dawn' + +# Enable extra modules +set -g @rose_pine_host 'on' # Enables hostname in the status bar +set -g @rose_pine_hostname_short 'on' # Makes the hostname shorter by using tmux's '#h' format +set -g @rose_pine_date_time '%Y-%m-%d %H:%M:%S' # Date/time format +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 'on' # Disables background color, for transparent terminal emulators + +# Battery module - determine if battery is available +run-shell "if [ -d /sys/class/power_supply/BAT* ]; then \ + tmux set -g @rose_pine_status_right_append_section '#{tmux_battery_status_bg}'; \ + fi" + +# Battery Icons (Glyphs) +set -g @batt_icon_charge_tier8 '' +set -g @batt_icon_charge_tier7 '' +set -g @batt_icon_charge_tier6 '' +set -g @batt_icon_charge_tier5 '' +set -g @batt_icon_charge_tier4 '' +set -g @batt_icon_charge_tier3 '' +set -g @batt_icon_charge_tier2 '' +set -g @batt_icon_charge_tier1 '' + +# Optional customization options +# set -g @rose_pine_left_separator ' > ' +# set -g @rose_pine_right_separator ' < ' +# set -g @rose_pine_field_separator ' | ' +set -g @rose_pine_window_separator ' #{?window_zoomed_flag, ,}' # Replaces the default `:` between the window number and name + +# Plugin Manager +set-environment -g TMUX_PLUGIN_MANAGER_PATH "$XDG_DATA_HOME/tmux/plugins" + +# Install TPM if not already installed +if "test ! -d ~/.local/share/tmux/plugins/tpm" \ + "run 'git clone https://github.com/tmux-plugins/tpm ~/.local/share/tmux/plugins/tpm'" + +# Initialize TPM (keep this line at the very bottom of tmux.conf) +run '~/.local/share/tmux/plugins/tpm/tpm' + diff --git a/zsh/.config/zsh/completions/external.zsh b/zsh/.config/zsh/completions/external.zsh index 60d412f..6a81203 100644 --- a/zsh/.config/zsh/completions/external.zsh +++ b/zsh/.config/zsh/completions/external.zsh @@ -17,34 +17,30 @@ for completion_file in ~/.local/share/zsh/*-autocomplete.zsh(N); do fi done -if command -v eza &> /dev/null; then +if command -v eza &> /dev/null; then compdef _ls eza fi -if command -v kubefwd &> /dev/null; then +if command -v kubefwd &> /dev/null; then _lazy_load_completion kubefwd "kubefwd completion zsh" fi -if command -v bombadil &> /dev/null; then +if command -v bombadil &> /dev/null; then _lazy_load_completion bombadil "bombadil generate-completions zsh" fi -if command -v rop &> /dev/null; then +if command -v rop &> /dev/null; then eval "$(rop completion zsh)" fi -if command -v goq &> /dev/null; then +if command -v goq &> /dev/null; then eval "$(goq completion zsh)" fi -if command -v drop &> /dev/null; then +if command -v drop &> /dev/null; then eval "$(drop completion zsh)" fi -if command -v mora &> /dev/null; then - eval "$(mora completion zsh)" -fi - _lazy_load() { local cmd="$1" local loader="$2"