Skip to content

Decode canonical RGB values for indexed palette colors - #121

Closed
vitalivo wants to merge 1 commit into
gookit:masterfrom
vitalivo:fix/indexed-palette-values
Closed

vitalivo wants to merge 1 commit into
gookit:masterfrom
vitalivo:fix/indexed-palette-values

Conversation

@vitalivo

Copy link
Copy Markdown
Contributor

C256ToRgb(16) returns [0, 0, 1] instead of black, and palette entry 244 returns [128, 128, 129] instead of gray. Several RGB keys are deliberately nudged in hexTo256Table to represent duplicate palette colors, so reversing that lookup also reverses those artificial values.

Decode the 6×6×6 color cube and grayscale ramp from their palette indices. Keep the existing mapping for the first 16 colors. The regression test checks every cube/ramp entry against its RGB values.

Validation: the palette test fails before the fix; the full race/coverage suite passes (98.8% main package coverage) with NO_COLOR='' COLORTERM=truecolor TERM=xterm-256color. Vet passes. Staticcheck reports existing unused declarations and a redundant fmt.Sprint outside the changed code.

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.

1 participant