wez / wezterm

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
https://wezfurlong.org/wezterm/
Other
17.81k stars 798 forks source link

Multiplexing through SSH does not respect local theme for panes #1845

Closed sclu1034 closed 2 years ago

sclu1034 commented 2 years ago

What Operating System(s) are you seeing this problem on?

Linux X11

WezTerm version

wezterm 20220409-070819-7977fe7e

Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?

Yes, and I updated the version box above to show the version of the nightly that I tried

Describe the bug

When connecting to a remote machine via multiplexing, the pane uses, what I assume to be, the default dark theme (black background, green cursor). It does not use the local theme config. The tab bar, however, does use the local colors.

To Reproduce

Configuration


-- Gruvbox Light
local colors = {
    red="#cc241d",
    green="#98971a",
    yellow="#d79921",
    blue="#458588",
    purple="#b16286",
    aqua="#689d6a",
    orange="#d65d0e",
    gray="#928374",

    dark_red="#9d0006",
    dark_green="#79740a",
    dark_yellow="#b57614",
    dark_blue="#076678",
    dark_purple="#8f3f71",
    dark_aqua="#427b58",
    dark_orange="#af3a03",
    dark_gray="#7c6f64",

    bg0_h="#f9f5d7",
    bg0="#fbf1c7",
    bg0_s="#f2e5bc",
    bg1="#ebdbb2",
    bg2="#d5c4a1",
    bg3="#bdae93",
    bg4="#a89984",

    fg0="#282828",
    fg1="#3c3836",
    fg2="#504945",
    fg3="#665c54",
    fg4="#7c6f64",
}

return {
    color_scheme = "Gruvbox Light Soft",
    color_schemes = {
        ["Gruvbox Light Soft"] = {
            background = colors.bg0_s,
            foreground = colors.fg1,
            cursor_bg = colors.fg1,
            cursor_border = colors.bg0_s,
            cursor_fg = colors.bg0_s,

            ansi = {
                colors.fg0,
                colors.red,
                colors.green,
                colors.yellow,
                colors.blue,
                colors.purple,
                colors.aqua,
                colors.orange,
            },
            brights = {
                colors.fg4,
                colors.dark_red,
                colors.dark_green,
                colors.dark_yellow,
                colors.dark_blue,
                colors.dark_purple,
                colors.dark_aqua,
                colors.dark_orange,
            },

            dead_key_cursor = colors.orange,
        },
    },
    colors = {
        tab_bar = {
            -- The color of the strip that goes along the top of the window
            background = colors.bg1,

            -- The active tab is the one that has focus in the window
            active_tab = {
                -- The color of the background area for the tab
                bg_color = colors.blue,
                -- The color of the text for the tab
                fg_color = colors.bg0_s,

                -- Specify whether you want "Half", "Normal" or "Bold" intensity for the
                -- label shown for this tab.
                -- The default is "Normal"
                intensity = "Normal",

                -- Specify whether you want "None", "Single" or "Double" underline for
                -- label shown for this tab.
                -- The default is "None"
                underline = "None",

                -- Specify whether you want the text to be italic (true) or not (false)
                -- for this tab.    The default is false.
                italic = false,

                -- Specify whether you want the text to be rendered with strikethrough (true)
                -- or not for this tab.  The default is false.
                strikethrough = false,
            },

            -- Inactive tabs are the tabs that do not have focus
            inactive_tab = {
                bg_color = colors.bg4,
                fg_color = colors.fg2,
            },

            -- You can configure some alternate styling when the mouse pointer
            -- moves over inactive tabs
            inactive_tab_hover = {
                bg_color = colors.bg4,
                fg_color = colors.fg2,
            },
        },
    },
}

Expected Behavior

I'd expect WezTerm run on the local machine to always use the locally defined color scheme. It does so with wezterm ssh but not with wezterm connect.

Logs

No response

Anything else?

No response

wez commented 2 years ago

Take a look at: https://github.com/wez/wezterm/issues/1268#issuecomment-951562027

closing this as a duplicate of #1268

github-actions[bot] commented 1 year ago

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.