summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosh Rahm <rahm@josher.dev>2026-09-09 17:46:57 +0000
committerJosh Rahm <rahm@josher.dev>2026-09-09 17:46:57 +0000
commit544760349eda5992f69c278dafec3b171c80fded (patch)
treede9a9c4b9adce7f29efea27b2cda5fc53b82bb13
parent323c84c462f9ef8f6a8c29190b2d6605b7c236f0 (diff)
downloadtmux-config-544760349eda5992f69c278dafec3b171c80fded.tar.gz
tmux-config-544760349eda5992f69c278dafec3b171c80fded.tar.bz2
tmux-config-544760349eda5992f69c278dafec3b171c80fded.zip
add other hosts.
-rw-r--r--hosts/boson.conf11
-rw-r--r--hosts/photon.conf11
-rw-r--r--hosts/strange.conf12
-rw-r--r--hosts/tachyon.conf11
-rw-r--r--hosts/tmux.conf104
5 files changed, 149 insertions, 0 deletions
diff --git a/hosts/boson.conf b/hosts/boson.conf
new file mode 100644
index 0000000..48f77a6
--- /dev/null
+++ b/hosts/boson.conf
@@ -0,0 +1,11 @@
+# Void Linux forest-green palette for boson.
+
+set -g @theme_bg '#0d1712' # forest black
+set -g @theme_surface '#17251c' # deep pine
+set -g @theme_border '#2e513c' # dark forest border
+set -g @theme_muted '#70917b' # muted sage
+set -g @theme_accent '#478061' # Void green
+set -g @theme_active '#75b58a' # illuminated leaf
+set -g @theme_fg '#c3d4c7' # pale sage
+set -g @theme_bright '#edf4ef' # cool white
+set -g @theme_alert '#9fbd65' # yellow-green alert
diff --git a/hosts/photon.conf b/hosts/photon.conf
new file mode 100644
index 0000000..38a11c9
--- /dev/null
+++ b/hosts/photon.conf
@@ -0,0 +1,11 @@
+# Bright orange palette for photon.
+
+set -g @theme_bg '#1b1009' # ember black
+set -g @theme_surface '#30190d' # smoked orange
+set -g @theme_border '#6e3618' # burnt-orange border
+set -g @theme_muted '#aa7457' # muted copper
+set -g @theme_accent '#ff8700' # bright orange
+set -g @theme_active '#ffb066' # illuminated orange
+set -g @theme_fg '#ffd5b8' # pale peach
+set -g @theme_bright '#fff4ec' # warm white
+set -g @theme_alert '#ff5f00' # hot-orange alert
diff --git a/hosts/strange.conf b/hosts/strange.conf
new file mode 100644
index 0000000..dd68e8e
--- /dev/null
+++ b/hosts/strange.conf
@@ -0,0 +1,12 @@
+# ANSI bright-red palette for strange.
+# Symbolic ANSI colors deliberately follow the outer terminal palette.
+
+set -g @theme_bg 'black'
+set -g @theme_surface 'colour234'
+set -g @theme_border 'red'
+set -g @theme_muted 'colour8'
+set -g @theme_accent 'brightred'
+set -g @theme_active 'brightred'
+set -g @theme_fg 'white'
+set -g @theme_bright 'brightwhite'
+set -g @theme_alert 'brightred'
diff --git a/hosts/tachyon.conf b/hosts/tachyon.conf
new file mode 100644
index 0000000..7e29938
--- /dev/null
+++ b/hosts/tachyon.conf
@@ -0,0 +1,11 @@
+# Bright yellow palette for tachyon.
+
+set -g @theme_bg '#181405' # near-black ochre
+set -g @theme_surface '#2b240a' # smoked gold
+set -g @theme_border '#665313' # dark amber
+set -g @theme_muted '#a69255' # muted brass
+set -g @theme_accent '#ffd75f' # bright yellow
+set -g @theme_active '#ffed87' # illuminated yellow
+set -g @theme_fg '#f7e6a7' # pale gold
+set -g @theme_bright '#fffbe6' # warm white
+set -g @theme_alert '#ffaf00' # amber alert
diff --git a/hosts/tmux.conf b/hosts/tmux.conf
new file mode 100644
index 0000000..969ac53
--- /dev/null
+++ b/hosts/tmux.conf
@@ -0,0 +1,104 @@
+# Shared tmux configuration.
+# Requires tmux 3.2+ and a font containing the Powerline separators.
+
+# Terminal capabilities -------------------------------------------------------
+# TERM inside tmux should describe tmux, not the outer terminal.
+set -g default-terminal "tmux-256color"
+
+# RGB is the official true-colour capability; Tc covers older tmux/terminfo.
+set -as terminal-features ",xterm*:RGB"
+set -as terminal-overrides ",xterm*:Tc"
+
+# extended-keys and escape-time are server options.
+set -s extended-keys always
+set -s escape-time 0
+
+# Prefix ----------------------------------------------------------------------
+# Explicitly remove the old local override so reloading also cleans it up.
+unbind C-a
+set -g prefix C-b
+bind C-b send-prefix
+
+# Prefix-a returns to the last window.
+bind a last-window
+
+# General ---------------------------------------------------------------------
+set -g base-index 1
+setw -g pane-base-index 1
+set -g renumber-windows on
+
+setw -g aggressive-resize on
+setw -g mode-keys vi
+setw -g automatic-rename on
+
+set -g mouse on
+set -g allow-passthrough on
+
+set -g set-titles on
+set -g set-titles-string "#T / #S / #W"
+set -s set-clipboard off
+set -g update-environment "DISPLAY XAUTHORITY WAYLAND_DISPLAY XDG_RUNTIME_DIR DBUS_SESSION_BUS_ADDRESS"
+
+# Activity --------------------------------------------------------------------
+setw -g monitor-activity on
+set -g visual-activity on
+
+# Theme -----------------------------------------------------------------------
+# Fallback colors. A host file may override any of these before styles are set.
+set -g @theme_bg '#17121f'
+set -g @theme_surface '#281f35'
+set -g @theme_border '#4a3a60'
+set -g @theme_muted '#8f80a5'
+set -g @theme_accent '#9d78d0'
+set -g @theme_active '#b99ae5'
+set -g @theme_fg '#d9c8f2'
+set -g @theme_bright '#f5f1fa'
+set -g @theme_alert '#744f91'
+
+# For example, host "charm" loads ~/.config/tmux/hosts/charm.conf.
+# Missing host files are intentionally ignored.
+source-file -qF '~/.config/tmux/hosts/#{host_short}.conf'
+
+set -g status-style 'bg=#{@theme_bg},fg=#{@theme_fg}'
+set -g message-style 'bg=#{@theme_accent},fg=#{@theme_bg},bold'
+set -g message-command-style 'bg=#{@theme_surface},fg=#{@theme_bright},bold'
+set -g mode-style 'bg=#{@theme_accent},fg=#{@theme_bg},bold'
+
+set -g pane-border-style 'fg=#{@theme_border}'
+set -g pane-active-border-style 'fg=#{@theme_active},bold'
+set -g pane-border-status off
+
+set -g window-status-style 'fg=#{@theme_muted},bg=#{@theme_bg}'
+set -g window-status-activity-style 'fg=#{@theme_bright},bg=#{@theme_border},bold'
+set -g window-status-bell-style 'fg=#{@theme_bright},bg=#{@theme_alert},bold'
+
+# Status bar ------------------------------------------------------------------
+set -g status on
+set -g status-position bottom
+set -g status-interval 1
+set -g status-justify centre
+set -g status-left-length 80
+set -g status-right-length 80
+
+# Host and kernel flow from bright glass into the dark bar.
+set -g status-left '#[fg=#{@theme_bg},bg=#{@theme_accent},bold] #H #[fg=#{@theme_accent},bg=#{@theme_surface},nobold]#[fg=#{@theme_fg},bg=#{@theme_surface}] #(uname -r) #[fg=#{@theme_surface},bg=#{@theme_bg}]'
+
+# Uptime and clock flow back toward the bright glass accent.
+set -g status-right '#[fg=#{@theme_surface},bg=#{@theme_bg}]#[fg=#{@theme_fg},bg=#{@theme_surface}] #(uptime -p 2>/dev/null | sed "s/^up //") #[fg=#{@theme_accent},bg=#{@theme_surface}]#[fg=#{@theme_bg},bg=#{@theme_accent},bold] %a %I:%M:%S %p │ %Y-%m-%d '
+
+set -g window-status-separator ""
+set -g window-status-format '#[fg=#{@theme_muted},bg=#{@theme_bg}] #I:#W '
+set -g window-status-current-format '#[fg=#{@theme_bg},bg=#{@theme_active},bold] #I:#W #[fg=#{@theme_active},bg=#{@theme_bg},nobold]'
+
+# Pane and window bindings ----------------------------------------------------
+bind -r h select-pane -L
+bind -r j select-pane -D
+bind -r k select-pane -U
+bind -r l select-pane -R
+
+bind c new-window -c "#{pane_current_path}"
+bind '"' split-window -c "#{pane_current_path}"
+bind % split-window -h -c "#{pane_current_path}"
+
+# Reload ----------------------------------------------------------------------
+bind r source-file ~/.tmux.conf \; display-message "Config reloaded"