Enable true color output (closes #705)

Signed-off-by: AnErrupTion <anerruption@disroot.org>
This commit is contained in:
AnErrupTion
2025-03-06 12:47:28 +01:00
parent a766dc2b9c
commit d0ccaa4d69
11 changed files with 134 additions and 92 deletions

View File

@@ -1,33 +1,19 @@
# The color settings in Ly take a digit 0-8 corresponding to:
#define TB_DEFAULT 0x00
#define TB_BLACK 0x01
#define TB_RED 0x02
#define TB_GREEN 0x03
#define TB_YELLOW 0x04
#define TB_BLUE 0x05
#define TB_MAGENTA 0x06
#define TB_CYAN 0x07
#define TB_WHITE 0x08
# The default color varies, but usually it makes the background black and the foreground white.
# You can also combine these colors with the following style attributes using bitwise OR:
#define TB_BOLD 0x0100
#define TB_UNDERLINE 0x0200
#define TB_REVERSE 0x0400
#define TB_ITALIC 0x0800
#define TB_BLINK 0x1000
#define TB_HI_BLACK 0x2000
#define TB_BRIGHT 0x4000
#define TB_DIM 0x8000
# For example, to set the foreground color to red and bold, you would do 0x02 | 0x0100 = 0x0102.
# Note that you must pre-calculate the value because Ly doesn't parse bitwise OR operations in its config.
#
# Moreover, to set the VT color palette, you are encouraged to use another tool such as
# mkinitcpio-colors (https://github.com/evanpurkhiser/mkinitcpio-colors). Note that the color palette defined with
# mkinitcpio-colors takes 16 colors (0-15), only values 0-8 are valid with Ly and these values do not correspond
# exactly. For instance, in defining palettes with mkinitcpio-colors, the order is black, dark red, dark green, brown, dark
# blue, dark purple, dark cyan, light gray, dark gray, bright red, bright green, yellow, bright blue, bright purple, bright
# cyan, and white, indexed in that order 0 through 15. For example, the color defined for white (indexed at 15 in the mkinitcpio
# config) will be used by Ly for fg = 0x0008.
# Ly supports 24-bit true color with styling, which means each color is a 32-bit value.
# The format is 0xSSRRGGBB, where SS is the styling, RR is red, GG is green, and BB is blue.
# Here are the possible styling options:
#define TB_BOLD 0x01000000
#define TB_UNDERLINE 0x02000000
#define TB_REVERSE 0x04000000
#define TB_ITALIC 0x08000000
#define TB_BLINK 0x10000000
#define TB_HI_BLACK 0x20000000
#define TB_BRIGHT 0x40000000
#define TB_DIM 0x80000000
# Programmatically, you'd apply them using the bitwise OR operator (|), but because Ly's
# configuration doesn't support using it, you have to manually compute the color value.
# Note that, if you want to use the default color value of the terminal, you can use the
# special value 0x00000000. This means that, if you want to use black, you *must* use
# the styling option TB_HI_BLACK (the RGB values are ignored when using this option).
# The active animation
# none -> Nothing
@@ -50,7 +36,7 @@ asterisk = *
auth_fails = 10
# Background color id
bg = 0x0000
bg = 0x00000000
# Change the state and language of the big clock
# none -> Disabled (default)
@@ -63,7 +49,7 @@ bigclock = none
blank_box = true
# Border foreground color id
border_fg = 0x0008
border_fg = 0x00FFFFFF
# Title to show at the top of the main box
# If set to null, none will be shown
@@ -89,16 +75,16 @@ clear_password = false
clock = null
# CMatrix animation foreground color id
cmatrix_fg = 0x0003
cmatrix_fg = 0x0000FF00
# Color mixing animation first color id
colormix_col1 = 0x0002
colormix_col1 = 0x00FF0000
# Color mixing animation second color id
colormix_col2 = 0x0005
colormix_col2 = 0x000000FF
# Color mixing animation third color id
colormix_col3 = 0x0001
colormix_col3 = 0x20000000
# Console path
console_dev = /dev/console
@@ -108,14 +94,14 @@ console_dev = /dev/console
default_input = login
# Error background color id
error_bg = 0x0000
error_bg = 0x00000000
# Error foreground color id
# Default is red and bold: TB_RED | TB_BOLD
error_fg = 0x0102
# Default is red and bold
error_fg = 0x11FF0000
# Foreground color id
fg = 0x0008
fg = 0x00FFFFFF
# Remove main box borders
hide_borders = false