mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-06-04 15:51:15 -03:00
Add italics, dim, reverse video to set_color (#3650)
* Add italics and dim modifier to set_color * update documentation for set_color * add reverse mode to set_color * Use standout mode as fallback for reverse mode * Apply patch from @Darkshadow2 adding additional modes
This commit is contained in:
committed by
Aaron Gyes
parent
834fdf8666
commit
b22842a52f
@@ -21,15 +21,18 @@ The following options are available:
|
||||
- `-b`, `--background` *COLOR* sets the background color.
|
||||
- `-c`, `--print-colors` prints a list of the 16 named colors.
|
||||
- `-o`, `--bold` sets bold mode.
|
||||
- `-d`, `--dim` sets dim mode.
|
||||
- `-i`, `--italics` sets italics mode.
|
||||
- `-r`, `--reverse` sets reverse mode.
|
||||
- `-u`, `--underline` sets underlined mode.
|
||||
|
||||
Using the *normal* keyword will reset foreground, background, and all formatting back to default.
|
||||
Using the *normal* keyword will reset foreground, background, and all formatting back to default.
|
||||
|
||||
\subsection set_color-notes Notes
|
||||
|
||||
1. Using the *normal* keyword will reset both background and foreground colors to whatever is the default for the terminal.
|
||||
2. Setting the background color only affects subsequently written characters. Fish provides no way to set the background color for the entire terminal window. Configuring the window background color (and other attributes such as its opacity) has to be done using whatever mechanisms the terminal provides.
|
||||
3. Some terminals use the `--bold` escape sequence to switch to a brighter color set rather than increasing the weight of text.
|
||||
3. Some terminals use the `--bold` escape sequence to switch to a brighter color set rather than increasing the weight of text.
|
||||
4. `set_color` works by printing sequences of characters to *stdout*. If used in command substitution or a pipe, these characters will also be captured. This may or may not be desirable. Checking the exit code of `isatty stdout` before using `set_color` can be useful to decide not to colorize output in a script.
|
||||
|
||||
\subsection set_color-example Examples
|
||||
@@ -50,3 +53,5 @@ If terminfo reports 256 color support for a terminal, support will always be ena
|
||||
Many terminals support 24-bit (i.e., true-color) color escape sequences. This includes modern xterm, Gnome Terminal, Konsole, and iTerm2. Fish attempts to detect such terminals through various means in `config.fish` You can explicitly force that support via `set fish_term24bit 1`.
|
||||
|
||||
The `set_color` command uses the terminfo database to look up how to change terminal colors on whatever terminal is in use. Some systems have old and incomplete terminfo databases, and may lack color information for terminals that support it. Fish will assume that all terminals can use the [ANSI X3.64](https://en.wikipedia.org/wiki/ANSI_escape_code) escape sequences if the terminfo definition indicates a color below 16 is not supported.
|
||||
|
||||
Support for italics, dim, reverse, and other modes is not guaranteed in all terminal emulators. Fish attempts to determine if the terminal supports these modes even if the terminfo database may not be up-to-date.
|
||||
|
||||
Reference in New Issue
Block a user