## Content
1. [Themes](#themes)
2. [Installation](#installation)
3. [Status line themes](#status-line-themes)
1. [Default](#default)
2. [Pill](#pill-shape)
3. [Powerline](#powerline)
4. [Powerline with icons](#powerline-with-icons)
5. [No patched fonts](#no-patched-fonts)
4. [Configuration options](#configuration-options)
1. [Enable window tabs](#enable-window-tabs)
2. [Configure separators](#configure-separator)
3. [Enable date and time](#enable-datetime)
4. [Enable user](#enable-user)
5. [Enable host](#enable-host)
6. [Customize icons](#customize-icons)
## Themes
- ๐ป [Latte](./catppuccin-latte.tmuxtheme)
- ๐ชด [Frappรฉ](./catppuccin-frappe.tmuxtheme)
- ๐บ [Macchiato](./catppuccin-macchiato.tmuxtheme)
- ๐ฟ [Mocha](./catppuccin-mocha.tmuxtheme)
## Installation
In order to have the icons displayed correctly please use / update your favorite patched font or overwrite the defaults - refer to [Customize icons](#customize-icons) section.
If you do not have patched font installed, you can use the [No patched fonts](#no-patched-fonts) status line theme.
### TPM
1. Install [TPM](https://github.com/tmux-plugins/tpm)
2. Add the Catppuccin plugin:
```bash
set -g @plugin 'catppuccin/tmux'
# ...alongside
set -g @plugin 'tmux-plugins/tpm'
```
3. (Optional) Set your preferred flavour, it defaults to `"mocha"`:
```bash
set -g @catppuccin_flavour 'latte' # or frappe, macchiato, mocha
```
### Manual
1. Copy your desired theme's configuration contents into your Tmux config (usually stored at `~/.tmux.conf`)
2. Reload Tmux by either restarting the session or reloading it with `tmux source-file ~/.tmux.conf`
## Overview

This is a diagram on how the theme is split between it's components.
## Configuration options
All flavours support certain levels of customization that match our [Catppuccin
Style Guide][style-guide]. To add these customizations, add any of the following
options to your Tmux configuration.
### Window
#### Set the window left separator:
```sh
set -g @catppuccin_window_left_separator "โ"
```
#### Set the window middle separator:
```sh
set -g @catppuccin_window_middle_separator "โ"
```
#### Set the window right separator:
```sh
set -g @catppuccin_window_right_separator "โ"
```
#### Position the number:
```sh
set -g @catppuccin_window_number_position "left"
```
Values:
- left - the number will be on the left part of the window
- right - the number will be on the right part of the window
#### Enable window status:
```sh
set -g @ccatppuccin_window_status_enable "yes"
```
Values:
- yes - this will enable the window status part
- no - this will disable the window status part
#### Enable window status icons instead of text:
```sh
set -g @catppuccin_window_status_icon_enable "yes"
```
Values:
- yes - this will replace the windows status text with icons
- no - this will keep the windows status in text format
### Override windows status icons
```sh
set -g @catppuccin_icon_window_last "๓ฐฐ"
set -g @catppuccin_icon_window_current "๓ฐฏ"
set -g @catppuccin_icon_window_zoom "๓ฐ"
set -g @catppuccin_icon_window_mark "๓ฐ"
set -g @catppuccin_icon_window_silent "๓ฐ"
set -g @catppuccin_icon_window_activity "๓ฐฒ"
set -g @catppuccin_icon_window_bell "๓ฐ"
```
### Window default
#### Set the window default color fill:
```sh
set -g @catppuccin_window_default_fill "number"
```
Values:
- number - only the number of the window part will have color
- all - the entire window part will have the same color
- none - the entire window part will have no color
#### Override the window default text:
```sh
set -g @catppuccin_window_default_text "#{b:pane_current_path}" # use "#W" for application instead of directory
```
### Window current
#### Set the window current color fill:
```sh
set -g @catppuccin_window_current_fill "number"
```
Values:
- number - only the number of the window part will have color
- all - the entire window part will have the same color
- none - the entire window part will have no color
#### Override the window current text:
```sh
set -g @catppuccin_window_current_text "#{b:pane_current_path}" # use "#W" for application instead of directory
```
#### Set the current directory format
```sh
set -g @catppuccin_window_current_format_directory_text "#{b:pane_current_path}"
```
Use this to overide the way the current directory is displayed.
#### Set the directory format
```sh
set -g @catppuccin_window_format_directory_text "#{b:pane_current_path}"
```
Use this to overide the way the directory is displayed.
### Status
#### Set the status module left separator:
```sh
set -g @catppuccin_status_left_separator "๎ถ"
```
#### Set the status module right separator:
```sh
set -g @catppuccin_status_right_separator "โ"
```
#### Set the status module right separator inverse:
```sh
set -g @catppuccin_status_right_separator_inverse "no"
```
Values:
- yes - the colors will be inverted for the right separator
- no - the colors will not be inverted for the right separator
#### Set the status connect separator:
```sh
set -g @catppuccin_status_connect_separator "yes"
```
Values:
- yes - the background color of the separator will not blend in with the brackground color of tmux
- no - the background color of the separator will blend in with the brackground color of tmux
#### Set the status module color fill:
```sh
set -g @catppuccin_status_color_fill "icon"
```
Values:
- icon - only the icon of the module will have color
- all - the entire module will have the same color
#### Set the module list
```sh
set -g @catppuccin_status_modules" "application session"
```
Provide a list of modules and the order in which you want them to appear in the status.
Available modules:
- application - display the current window running application
- directory - display the basename of the current window path
- session - display the number of tmux sessions running
- user - display the username
- host - display the hostname
- date_time - display the date and time
### Customizing modules
Every module (except the module "session") supports the following overrides:
#### Override the specific module icon
```sh
set -g @catppuccin_[module_name]_icon" "icon"
```
#### Override the specific module color
```sh
set -g @catppuccin_[module_name]_color" "color"
```
#### Override the specific module text
```sh
set -g @catppuccin_[module_name]_text" "text"
```
## Configuration Examples
### Config 1

```sh
set -g @catppuccin_window_right_separator "โย "
set -g @catppuccin_window_number_position "right"
set -g @catppuccin_window_middle_separator " | "
set -g @catppuccin_window_default_fill "none"
set -g @catppuccin_window_current_fill "all"
set -g @catppuccin_status_modules "application session user host date_time"
set -g @catppuccin_status_left_separator "โ"
set -g @catppuccin_date_time_text "%Y-%m-%d %H:%M:%S"
```
### Config 2

```sh
set -g @catppuccin_window_left_separator "๎บโ"
set -g @catppuccin_window_right_separator "โ๎ผย "
set -g @catppuccin_window_number_position "right"
set -g @catppuccin_window_middle_separator " ๎บโ"
set -g @catppuccin_window_default_fill "number"
set -g @catppuccin_window_current_fill "number"
set -g @catppuccin_window_current_text "#{pane_current_path}"
set -g @catppuccin_status_modules "application session date_time"
set -g @catppuccin_status_left_separator "๎ถ"
set -g @catppuccin_status_right_separator " ๎ถ"
set -g @catppuccin_status_right_separator_inverse "yes"
set -g @catppuccin_status_color_fill "all"
set -g @catppuccin_status_connect_separator "no"
```
### Config 3

```sh
set -g @catppuccin_window_left_separator "๎ถ"
set -g @catppuccin_window_right_separator "๎ดย "
set -g @catppuccin_window_icon_position "right"
set -g @catppuccin_window_middle_separator " โ"
set -g @catppuccin_window_default_fill "number"
set -g @catppuccin_window_default_text "#W"
set -g @catppuccin_window_current_fill "number"
set -g @catppuccin_window_current_text "#W"
set -g @catppuccin_status_modules "directory user host session"
set -g @catppuccin_status_left_separator " ๎ถ"
set -g @catppuccin_status_right_separator "๎ด"
set -g @catppuccin_status_right_separator_inverse "no"
set -g @catppuccin_status_color_fill "icon"
set -g @catppuccin_status_connect_separator "no"
set -g @catppuccin_directory_text "#{pane_current_path}"
```
[style-guide]: https://github.com/catppuccin/catppuccin/blob/main/docs/style-guide.md
## ๐ Thanks to
- [Pocco81](https://github.com/catppuccin)
- [vinnyA3](https://github.com/vinnyA3)
- [rogeruiz](https://github.com/rogeruiz)