Commit 7b21f51
Changed files (2)
.config
tmux
.wraith
scripts
.config/tmux/tmux.conf
@@ -0,0 +1,70 @@
+# TERMINAL COMPATIBILITY
+set-option -g default-terminal 'screen-256color'
+set-option -ga terminal-overrides ',xterm-ghostty:Tc'
+set-option -ga terminal-overrides ',xterm-ghostty:RGB'
+
+# Extended keys support for Ghostty
+set -s extended-keys on
+set -as terminal-features 'xterm-ghostty:extkeys'
+
+# General Settings
+set -g mouse on
+set -g history-limit 1000000
+set -g base-index 1
+set -g pane-base-index 1
+set -g renumber-windows on
+set -g escape-time 0
+set -g set-clipboard on
+set -g status-position top
+set -g default-terminal "${TERM}"
+
+# KEY BINDINGS
+unbind C-b
+set -g prefix C-s
+bind C-s send-prefix
+
+unbind r
+bind r source-file ~/.config/tmux/tmux.conf \; display "Config Reloaded!"
+
+unbind %
+unbind '"'
+bind e split-window -h -c "#{pane_current_path}"
+bind o split-window -v -c "#{pane_current_path}"
+
+unbind c
+unbind t
+bind t new-window -c "#{pane_current_path}"
+bind T clock-mode
+
+# Catppuccin theme settings
+set -g @catppuccin_flavor "mocha"
+set -g @catppuccin_status_background "#1e1e2e"
+set -g @catppuccin_window_status_style "rounded"
+
+set -g @catppuccin_window_number_position "left"
+set -g @catppuccin_window_default_fill "number"
+set -g @catppuccin_window_default_text " #T"
+set -g @catppuccin_window_current_fill "number"
+set -g @catppuccin_window_current_text " #T"
+
+set -g @catppuccin_status_left_separator ""
+set -g @catppuccin_status_right_separator ""
+set -g @catppuccin_status_right_separator_inverse "no"
+set -g @catppuccin_status_left_separator_inverse "no"
+set -g @catppuccin_status_fill "icon"
+set -g @catppuccin_status_connect_separator "no"
+
+set -g @catppuccin_date_time_icon " "
+set -g @catppuccin_date_time_text " %I:%M %p"
+
+# PLUGINS
+set -g @plugin 'tmux-plugins/tpm'
+set -g @plugin 'catppuccin/tmux'
+run '~/.config/tmux/plugins/tpm/tpm'
+
+set -g status-left-length 100
+set -g status-right-length 100
+set -g status-left ""
+set -ag status-left "#{?client_prefix,#[bg=#1e1e2e]#[fg=#cdd6f] ⌨ ,}"
+set -g status-right "#(~/.wraith/scripts/tmux-git-status.sh '#{pane_current_path}') "
+set -ag status-right "#{E:@catppuccin_status_date_time}
.wraith/scripts/tmux-git-status.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+CURRENT_DIR="$1"
+
+# Check if we're in a git repo
+cd "$CURRENT_DIR" || exit 1
+if ! git rev-parse --git-dir > /dev/null 2>&1; then
+ echo ""
+ exit 0
+fi
+
+# Get branch name
+BRANCH=$(git symbolic-ref --short HEAD 2>/dev/null || git rev-parse --short HEAD 2>/dev/null)
+
+# Get status counts
+STAGED=$(git diff --cached --numstat 2>/dev/null | wc -l | tr -d ' ')
+MODIFIED=$(git diff --numstat 2>/dev/null | wc -l | tr -d ' ')
+UNTRACKED=$(git ls-files --others --exclude-standard 2>/dev/null | wc -l | tr -d ' ')
+
+OUTPUT="#[fg=#fab387]#[fg=#181825,bg=#fab387]#[fg=#11111b,bg=#fab387] #[fg=#fab387,bg=#292a3b]#[fg=#cdd6f4,bg=#292a3b] ${BRANCH}"
+
+if [ "$STAGED" -gt 0 ] || [ "$MODIFIED" -gt 0 ] || [ "$UNTRACKED" -gt 0 ]; then
+
+ if [ "$STAGED" -gt 0 ]; then
+ OUTPUT+=" #[fg=#a6e3a1,bg=#292a3b]S:${STAGED}"
+ fi
+
+ if [ "$MODIFIED" -gt 0 ]; then
+ OUTPUT+=" #[fg=#f9e2af,bg=#292a3b]M:${MODIFIED}"
+ fi
+
+ if [ "$UNTRACKED" -gt 0 ]; then
+ OUTPUT+=" #[fg=#89b4fa,bg=#292a3b]U:${UNTRACKED}"
+ fi
+fi
+
+OUTPUT+="#[fg=#292a3b,bg=#181825]"
+echo "$OUTPUT"