#dotfiles

Ghostty, tmux and zsh, set up the way I use them. One command on a fresh machine — it installs Ghostty too if it isn't there.

terminal
Ghostty with the snappy theme, following the system's light and dark mode, in Maple Mono NF CN so Chinese and icons share one font; frosted glass that survives Ctrl+Enter fullscreen on both systems
shell
zsh with inline suggestions: → takes the grey text, Tab completes as usual, up-arrow filters history by what you've already typed
tmux
one key, Alt+m, opens a menu of everything and closes it again, so there is nothing to memorise; Alt+h/j/k/l moves between panes, Alt+Shift+arrows resizes the one you're in, Alt+←/→ switches windows; sessions come back after a reboot. On a Mac, Option is Alt
claude
window numbers change colour with Claude Code's state — running, waiting on you, done; after a reboot each pane picks its conversation back up

It opens a menu: the terminal setup, the Claude Code status line and tmux colours, the keyboard panel, and on GNOME the desktop look. Pick with space, start with Enter. Safe to run again: it skips whatever is already installed and backs up anything it replaces.

installbash
$curl -fsSL https://xiaweiliu.com/dotfiles/install.sh | bash

Configs are symlinked from ~/.dotfiles, so editing the repo edits the live setup. theme-preview ranks every installed Ghostty theme by contrast and renders a sample of each, for when a theme looks good but reads badly.