Skip to content

make fish default theme ansi-only #9913

@CosmicToast

Description

@CosmicToast

Fish version: 3.6.1
Using foot on linux and iterm2 on macos.

The default fish theme features exactly two custom (non-ANSI) colors:

  • the 555 on fish_color_autosuggestion
  • the B3A06D on fish_pager_color_description

ANSI themes are usually made in such a way as to have the colors work together.
No guarantees can be made as to the actual details otherwise, including (for example) the foreground and background colors.
For instance, B3A06D could be completely unreadable in a theme whose background color is brown-tinted, despite the yellow for that theme having adequate contrast against the background.
Consequently, if you set one custom color, it is generally advisable to have all the colors be custom.

Furthermore, given how ANSI themes work, these are potential accessibility problems.
For example, before 03b23dd I had difficulties with fish_color_command, having to consistently change it to be able to read the text at all.

Exclusively using named colors in these last two spots would thus make the default fish theme fully ANSI-compatible, and therefore more accessible (user-side ANSI theme notwithstanding).

The requested change is to simply remove the "555" from fish_color_autosuggestion and the B3A06D from fish_pager_color_description, always using the terminal's named colors.
If users want something specific, they should be able to simply set it, or use a different theme that is holistically cohesive.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions