chore: clean up dotfiles and add gitignore whitelist

Switch to whitelist-based .gitignore to only track essential configs:
nvim, yazi, kitty, zsh, ideavim, karabiner, tmux, scripts, starship.
Remove history, compiled files, and plugin dirs from tracking.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Thomas Naderer
2026-03-11 12:57:14 +01:00
parent 61b1e3d2a9
commit d8a20d620a
32 changed files with 1471 additions and 2868 deletions

View File

@@ -0,0 +1,22 @@
# This tmux statusbar config was created by tmuxline.vim
# on Sun, 01 Mar 2026
# Reworked: Tokyo Night Moon — readable, transparent, not loud
set -g status-justify "centre"
set -g status "on"
set -g status-left-style "none"
set -g message-command-style "fg=#c8d3f5,bg=default"
set -g status-right-style "none"
set -g pane-active-border-style "fg=#82aaff"
set -g status-style "none,bg=default"
set -g message-style "fg=#c8d3f5,bg=default"
set -g pane-border-style "fg=#3b4261"
set -g status-right-length "100"
set -g status-left-length "100"
setw -g window-status-activity-style "underscore,fg=#444a73,bg=default"
setw -g window-status-separator ""
setw -g window-status-style "none,fg=#636da6,bg=default"
set -g status-left "#[fg=#636da6,bg=default] #S #[fg=default,bg=default,nobold,nounderscore,noitalics]"
set -g status-right "#[fg=default,bg=default,nobold,nounderscore,noitalics]#[fg=#636da6,bg=default] %H:%M #[fg=default,bg=default,nobold,nounderscore,noitalics]#[fg=#636da6,bg=default] %d %b "
setw -g window-status-format "#[fg=default,bg=default,nobold,nounderscore,noitalics]#[fg=#636da6,bg=default] #I #W#{?window_zoomed_flag, [Z],} #[fg=default,bg=default,nobold,nounderscore,noitalics]"
setw -g window-status-current-format "#[fg=#2d3f76,bg=default,nobold,nounderscore,noitalics]#[fg=#c8d3f5,bg=#2d3f76] #I #W#{?window_zoomed_flag, [Z],} #[fg=#2d3f76,bg=default,nobold,nounderscore,noitalics]"

View File

@@ -1,5 +1,22 @@
# This tmux statusbar config was created by tmuxline.vim
# on Sun, 01 Mar 2026
# Reworked: Catppuccin Mocha — readable, transparent, not loud
set -g status-style fg=colour#3b4261,bg=colour#1e2030
set -g window-status-current-style fg=colour#828bb8,bg=colour#1e2030
set -g status-justify "centre"
set -g status "on"
set -g status-left-style "none"
set -g message-command-style "fg=#cdd6f4,bg=default"
set -g status-right-style "none"
set -g pane-active-border-style "fg=#cba6f7"
set -g status-style "none,bg=default"
set -g message-style "fg=#cdd6f4,bg=default"
set -g pane-border-style "fg=#313244"
set -g status-right-length "100"
set -g status-left-length "100"
setw -g window-status-activity-style "none,fg=#45475a,bg=default"
setw -g window-status-separator ""
setw -g window-status-style "none,fg=#6c7086,bg=default"
set -g status-left "#[fg=#6c7086,bg=default] #S #[fg=default,bg=default,nobold,nounderscore,noitalics]"
set -g status-right "#[fg=default,bg=default,nobold,nounderscore,noitalics]#[fg=#6c7086,bg=default] %H:%M #[fg=default,bg=default,nobold,nounderscore,noitalics]#[fg=#6c7086,bg=default] %d %b "
setw -g window-status-format "#[fg=default,bg=default,nobold,nounderscore,noitalics]#[fg=#6c7086,bg=default] #I #W#{?window_zoomed_flag, 󰁌,} #[fg=default,bg=default,nobold,nounderscore,noitalics]"
setw -g window-status-current-format "#[fg=#313244,bg=default,nobold,nounderscore,noitalics]#[fg=#b4befe,bg=#313244] #I #W#{?window_zoomed_flag, 󰁌,} #[fg=#313244,bg=default,nobold,nounderscore,noitalics]"

View File

@@ -37,8 +37,9 @@ set -g renumber-windows on
# Increase scrollback buffer size
set -g history-limit 10000
# Enable automatic renaming for nerd font icons
set-option -g allow-rename on
# Let tmux auto-name unnamed windows, but keep manual names sticky.
# `allow-rename` lets shells/apps overwrite names via terminal title escapes.
set-option -g allow-rename off
set-option -g automatic-rename on
# Reduce escape time for neovim
@@ -134,6 +135,7 @@ set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'tmux-plugins/tmux-copycat'
set -g @plugin 'sainnhe/tmux-fzf'
set -g @plugin 'laktak/extrakto'
set -g @plugin 'wfxr/tmux-fzf-url'
@@ -190,6 +192,9 @@ source-file ~/.config/tmux/themes/tmuxline.tmux
# KEYBINDINGS
# ============================================
# Clear stale bindings removed from older config revisions
unbind /
# Three-way toggle: top → bottom → hidden → top
bind b if -F "#{==:#{status},off}" \
"set -g status on ; set -g status-position top ; set -g pane-border-status top" \
@@ -200,5 +205,8 @@ bind b if -F "#{==:#{status},off}" \
# Reload config
bind r source-file ~/.config/tmux/tmux.conf \; display-message "󰑓 Config reloaded!"
# SessionX in window mode on demand
bind O run-shell 'old_mode="$(tmux show-option -gqv @sessionx-window-mode)"; tmux set-option -g @sessionx-window-mode on; ~/.config/tmux/plugins/tmux-sessionx/sessionx.tmux >/dev/null 2>&1; ~/.config/tmux/plugins/tmux-sessionx/scripts/sessionx.sh; if [ -n "$old_mode" ]; then tmux set-option -g @sessionx-window-mode "$old_mode"; else tmux set-option -gu @sessionx-window-mode; fi; ~/.config/tmux/plugins/tmux-sessionx/sessionx.tmux >/dev/null 2>&1'
# Initialize TMUX plugin manager (keep this line at the very bottom)
run '~/.config/tmux/plugins/tpm/tpm'