Fix: Transparent status background support with rounded and slanted styles by jerek · Pull Request #577 · catppuccin/tmux · GitHub
Skip to content

Fix: Transparent status background support with rounded and slanted styles - #577

Open
jerek wants to merge 3 commits into
catppuccin:mainfrom
jerek:transparent-status-background-support
Open

jerek wants to merge 3 commits into
catppuccin:mainfrom
jerek:transparent-status-background-support

Conversation

@jerek

@jerek jerek commented Dec 31, 2025 •

Copy link
Copy Markdown

This is actually two fixes, which address issue #409. This PR is also an alternative to pr #568.

  • Always use the status bg color as an actual background color (as opposed to a foreground color), so that terminals can make its color transparent and it works in rounded and slanted styles.
  • Set the default bg color when @catppuccin_status_background is set to 'none', so that it works in rounded and slanted styles.

Details

The configuration documentation says to set @catppuccin_status_background to none to make the status bar transparent, but this doesn't work in the rounded or slanted window status styles. Attempting to work around the problem by setting it to the background color that the terminal is making transparent also doesn't work for the rounded or slanted styles.

These two similar issues have different causes:

  1. While terminals can have a particular color chosen as the one to make transparent, it only works on background colors, and the existing configuration was using the status background color as a foreground color.
    • This PR's fix: Change the usage of @catppuccin_status_background's value to only apply it as a background color, which allows users to set it to a background color that their terminal will make transparent.
  2. Setting @catppuccin_status_background to none doesn't work due to how it internally sets @_ctp_status_bg to 'none', which isn't valid for tmux. In the tmux man page the value 'none' is referenced for clearing all formatting, but not as a valid value for a particular property like bg or fg. Instead, the man page has an example of 'default' being used for that.
    • This PR's fix: When the user sets @catppuccin_status_background to 'none', set the value of @_ctp_status_bg to 'default' instead of 'none', which tmux handles correctly.

I tested the changes in Wezterm primarily, but also checked that it works in Kitty and Ghostty.

Comparison Screenshots

Before — background set to 'none'
image

Before — background set to terminal's transparent background color
image

After — either transparency method
image

After — non-transparent colors still work as expected, as shown here
image

…ke its color transparent

The [configuration documentation](https://github.com/catppuccin/tmux/blob/8b0b9150f9d7dee2a4b70cdb50876ba7fd6d674a/docs/reference/configuration.md#status-line) says to set `@catppuccin_status_background` to `none` to make the status bar transparent, but this doesn't work in the rounded or slanted window status styles. Terminals can have a particular color chosen as the one to make transparent, but this only works on background colors, and the existing configuration was using the status background color as a foreground color.
This changes the usage of `@catppuccin_status_background`'s value to only apply it as a background color, which allows users to set it to a background color that their terminal will make transparent.
… set to 'none'

The [configuration documentation](https://github.com/catppuccin/tmux/blob/8b0b9150f9d7dee2a4b70cdb50876ba7fd6d674a/docs/reference/configuration.md#status-line) says to set `@catppuccin_status_background` to `none` to make the status bar transparent, but this doesn't work in the rounded or slanted window status styles, because of how it internally sets `@_ctp_status_bg` to 'none'. In the tmux man page the value 'none' is referenced for clearing all formatting, but not as a valid value for a particular property like `bg` or `fg`. Instead, the man page has an example of 'default' being used for that.
This changes the value of `@_ctp_status_bg` to be set to 'default' instead of 'none', when the user sets `@catppuccin_status_background` to 'none', so that the setting works in the rounded and slanted window status styles.
@jerek
jerek force-pushed the transparent-status-background-support branch from d0e1569 to 4508c1d Compare January 1, 2026 17:55
@Pawel-Parma

Copy link
Copy Markdown

…ncy, when the number position option is changed
@jerek

jerek commented Mar 27, 2026

Copy link
Copy Markdown
Author

@Pawel-Parma Fixed!

image

@Pawel-Parma

Copy link
Copy Markdown

Thanks, hope it will be merged soon

@Rutger505

Rutger505 commented Mar 31, 2026 •

Copy link
Copy Markdown

Hi! I am also running into this issue and i tried using this branch, but I still seem to get those same edges when using Ghostty. See the screenshot:
image

Here is my config (or check the full config file here):

set -g @plugin 'jerek/catppuccin-tmux-fixed-transparency'

set -g @catppuccin_flavor "mocha"

set -g @catppuccin_window_status_style "rounded"

set -g status-position top
set -g status-left "#{E:@catppuccin_status_session} "
set -g status-right "#{E:@catppuccin_status_application}"

run '~/.local/share/tmux/plugins/tpm/tpm'

set -g status-bg default
set -g status-style bg=default

@Pawel-Parma

Copy link
Copy Markdown

@Rutger505 you need to manually specify the branch to the one with fixes:

set -g @plugin 'jerek/catppuccin-tmux-fixed-transparency#transparent-status-background-support'

I additionally had to remove manually the repo cloned by tpm and install it again

@Rutger505

Copy link
Copy Markdown

@Pawel-Parma I see, I did not catch that. But even now when switching to the branch i still have the same edges. Here is my config:

set -g @plugin 'jerek/catppuccin-tmux-fixed-transparency#transparent-status-background-support'
set -g @catppuccin_status_connect_separator "no"

set -g @catppuccin_status_left_separator  ""
set -g @catppuccin_status_right_separator ""

set -g @catppuccin_window_status_style "rounded"
set -g @catppuccin_window_default_text " #W"
set -g @catppuccin_window_current_text " #W#{?window_zoomed_flag, 󰁌 ,}"
set -g @catppuccin_window_text " #W"

set -g status-position top
set -g status-left "#{E:@catppuccin_status_session} "
set -g status-right "#{E:@catppuccin_status_application}"

run '~/.local/share/tmux/plugins/tpm/tpm'

set -g status-bg default
set -g status-style bg=default

I have fully removed the catppuccin directories and reinstalled them but still the same outcome:
image

@Pawel-Parma

Pawel-Parma commented Apr 1, 2026 •

Copy link
Copy Markdown

@Rutger505 you need to set:

set -g @catppuccin_status_background "none"

And I think you can then remove this:

set -g status-bg default
set -g status-style bg=default

@Rutger505

Copy link
Copy Markdown

Works like a charm now thank you!

@jerek

jerek commented Apr 10, 2026

Copy link
Copy Markdown
Author

Ah, yeah, the whole "none" vs "default" thing is a bit confusing. It seems like the usage of "none" here is a keyword specific to the Catppuccin theme for Tmux, which activates its transparency features.

Maybe "transparent" would be clearer? Though that's outside the scope of this fix anyway.

@phucisstupid

phucisstupid commented Apr 18, 2026 •

Copy link
Copy Markdown

@Pawel-Parma Fixed!

image

how you config tmux to show both directory name and running program?

@jerek

jerek commented Apr 19, 2026

Copy link
Copy Markdown
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants