Ukiyo for tmux
Multi-theme tmux status bar with Kanagawa, Dracula Tokyo Night, Catppuccin, Bru, and Jozi City Nights color schemes.
Forked from dracula/tmux.
To activate the theme add the following line to your .tmux.conf.
set -g @plugin 'Nybkox/tmux-ukiyo'
For advanced instructions look at INSTALL.md or check official instructions of dracula/tmux. Just replace all dracula occurrences with ukiyo.
Configuration and options can be found at draculatheme.com/tmux.
Just replace all dracula occurrences with ukiyo.
Select a theme using @ukiyo-theme with format theme/variant. Press prefix+T for interactive menu.
You can change the menu keybinding or disable it using @ukiyo-menu-key:
set -g @ukiyo-menu-key "M" # Change to prefix+M
set -g @ukiyo-menu-key "none" # Disable the menu keybinding
set -g @ukiyo-menu-key "" # Same as "none"# Kanagawa variants
set -g @ukiyo-theme "kanagawa/wave" # default dark
set -g @ukiyo-theme "kanagawa/dragon" # darker
set -g @ukiyo-theme "kanagawa/lotus" # light
# Tokyo Night variants
set -g @ukiyo-theme "tokyonight/moon" # default
set -g @ukiyo-theme "tokyonight/storm"
set -g @ukiyo-theme "tokyonight/night" # darker
# Catppuccin variants
set -g @ukiyo-theme "catppuccin/mocha" # default dark
set -g @ukiyo-theme "catppuccin/macchiato" # medium dark
set -g @ukiyo-theme "catppuccin/frappe" # muted dark
set -g @ukiyo-theme "catppuccin/latte" # light
# Nord
set -g @ukiyo-theme "nord/default"
# Gruvbox variants
set -g @ukiyo-theme "gruvbox/dark" # Dark
set -g @ukiyo-theme "gruvbox/light" # Light
# Rose Pine variants
set -g @ukiyo-theme "rose-pine/main" # Default dark
set -g @ukiyo-theme "rose-pine/moon" # Dark, more muted
set -g @ukiyo-theme "rose-pine/dawn" # Light
# Solarized variants
set -g @ukiyo-theme "solarized/dark" # Dark
set -g @ukiyo-theme "solarized/light" # Light
# OneDark variants
set -g @ukiyo-theme "onedark/dark" # Dark
set -g @ukiyo-theme "onedark/darker" # Darker
set -g @ukiyo-theme "onedark/cool" # Cool (bluer tones)
set -g @ukiyo-theme "onedark/deep" # Deepest background
set -g @ukiyo-theme "onedark/warm" # Warm tones
set -g @ukiyo-theme "onedark/warmer" # Warmer tones
# Bru variants
set -g @ukiyo-theme "bru/espresso" # default dark
set -g @ukiyo-theme "bru/latte" # light
# Jozi City Nights variants
set -g @ukiyo-theme "jozi-city-nights/nights" # default dark, synthwave
set -g @ukiyo-theme "jozi-city-nights/midnight" # darker backgrounds
set -g @ukiyo-theme "jozi-city-nights/morning" # light
# Legacy format still works
set -g @ukiyo-theme "wave" # same as kanagawa/waveIf you want to preserve your emulator background / foreground for window:
set -g @ukiyo-ignore-window-colors true| Variant | Description |
|---|---|
| default | Arctic, cool blue-grey |
| Variant | Description |
|---|---|
| dark | Retro groove, dark theme |
| light | Retro groove, light theme |
| Variant | Description |
|---|---|
| main | Default dark theme |
| moon | Dark, more muted |
| dawn | Light mode |
| Variant | Description |
|---|---|
| dark | Low contrast, precision colors |
| light | Low contrast, precision colors |
| Variant | Description |
|---|---|
| dark | Standard dark |
| darker | Lower contrast |
| cool | Bluer tones |
| deep | Deepest background |
| warm | Warmer tones |
| warmer | Even warmer tones |
| Variant | Description |
|---|---|
| wave | Default dark theme |
| dragon | Darker variant |
| lotus | Light theme |
| Variant | Description |
|---|---|
| moon | Default, softer colors |
| storm | Original dark theme |
| night | Darker backgrounds |
Muted storm backdrop, neon synthwave accents.
| Variant | Description |
|---|---|
| nights | Default dark β Tokyo Nightβstyle storm |
| midnight | Darker backgrounds |
| morning | Light variant |
-
Create
themes/<theme-name>/palette.shwith raw color definitions (hex values). -
Create one variant file per variant (e.g.
themes/<theme-name>/dark.sh) mapping palette colors to the semantic names listed under Custom Colors (text,bg_bar,bg_pane,highlight,selection,info,accent,notice,error,muted,alert). -
Register the default variant in
themes/loader.shinsideget_default_variant():<theme-name>) echo "<default-variant>" ;;
-
Add the theme to
menu_items/colors.shin two places:-
Append a row to the
FAMILIESarray:"<theme-name>|<menu-key>|<Display Label>"(pick an unused key letter). -
Add a case branch to
get_variants()listing the variants asvariant-id:Label:<theme-name>) printf '%s\n' "dark:Dark" "light:Light" ;;
-
The two-level themes menu (prefix + T β Themes) will then show the new family with a submenu of its variants. Active selections are marked with *.
Override any semantic color via @ukiyo-color-<name>. Accepts hex values or color variable names from the palette.
# Override with hex colors
set -g @ukiyo-color-accent "#00ff00"
set -g @ukiyo-color-bg-bar "#1a1a2e"
# Or use palette color names
set -g @ukiyo-color-accent "spring_green"
set -g @ukiyo-color-alert "samurai_red"
# Mix theme colors (e.g., use dragon colors in wave theme)
set -g @ukiyo-theme "wave"
set -g @ukiyo-color-bg-bar "dragon_black_4"Available semantic colors:
| Name | Role |
|---|---|
text |
Primary text/foreground |
bg-bar |
Status bar background |
bg-pane |
Window/pane background |
highlight |
Active element highlight |
selection |
Selected/focused element |
info |
Informational status |
accent |
Primary accent (VCS, success) |
notice |
Attention items (CPU, weather) |
error |
Error states |
muted |
Secondary status (battery) |
alert |
Prefix/alert active state |
The Kanagawa theme for tmux also supports an extended list of colors from the Kaganawa color palette. Below, you'll find a detailed list of these extra colors available.
Extended Color Palette
For complete color lists, see themes/kanagawa/palette.sh and themes/tokyonight/palette.sh.
- Support for powerline
- Day, date, time, timezone
- Current location based on network with temperature and forecast icon (if available)
- Network connection status, bandwidth and SSID
- SSH session user, hostname and port of active tmux pane
- Git branch and status
- Battery percentage and AC power connection status
- Refresh rate control
- CPU usage (percentage or load average)
- RAM usage (system and/or tmux server)
- GPU usage
- Disk usage
- Custom status texts from external scripts
- GPU VRAM usage
- GPU power draw
- Color code based on whether a prefix is active or not
- List of windows with the current window highlighted
- When prefix is enabled, a smiley face turns from green to yellow
- When charging, 'AC' is displayed
- If forecast information is available, a β, β, β, or β unicode character corresponding with the forecast is displayed alongside the temperature
- Info if the Panes are synchronized
- Spotify playback (needs the tool spotify-tui installed)
- Music Player Daemon status (needs the tool mpc installed)
- Playerctl, get current track metadata
- Current kubernetes context
- Countdown to tmux-continuum save
- Current working directory of tmux pane
- OpenConnect VPN connection status
Compatible with macOS and Linux. Tested on tmux 3.1b FreeBSD compatibility is in development



