xiwal

Generate terminal color schemes
git clone https://git.ce9e.org/xiwal.git

commit
90de59307fc0b7344d60bf89d04e4c824188562e
parent
fb8dfd700c92ae91985dac5765e02964e510bb3c
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2026-02-19 06:59
update oklab matrices

Those were corrected on 2021-01-25

see https://bottosson.github.io/posts/oklab/#converting-from-linear-srgb-to-oklab

Diffstat

M xiwal/lch.py 12 ++++++------

1 files changed, 6 insertions, 6 deletions


diff --git a/xiwal/lch.py b/xiwal/lch.py

@@ -30,9 +30,9 @@ def _rgb2srgb(c):
   30    30 def rgb2lab(rgb):
   31    31     r, g, b = map(_srgb2rgb, rgb)
   32    32 
   33    -1     l = 0.4121656120 * r + 0.5362752080 * g + 0.0514575653 * b
   34    -1     m = 0.2118591070 * r + 0.6807189584 * g + 0.1074065790 * b
   35    -1     s = 0.0883097947 * r + 0.2818474174 * g + 0.6302613616 * b
   -1    33     l = 0.4122214708 * r + 0.5363325363 * g + 0.0514459929 * b
   -1    34     m = 0.2119034982 * r + 0.6806995451 * g + 0.1073969566 * b
   -1    35     s = 0.0883024619 * r + 0.2817188376 * g + 0.6299787005 * b
   36    36 
   37    37     l_ = l ** (1 / 3)
   38    38     m_ = m ** (1 / 3)
@@ -56,9 +56,9 @@ def lab2rgb(lab):
   56    56     m = m_ ** 3
   57    57     s = s_ ** 3
   58    58 
   59    -1     r = +4.0767245293 * l - 3.3072168827 * m + 0.2307590544 * s
   60    -1     g = -1.2681437731 * l + 2.6093323231 * m - 0.3411344290 * s
   61    -1     b = -0.0041119885 * l - 0.7034763098 * m + 1.7068625689 * s
   -1    59     r = +4.0767416621 * l - 3.3077115913 * m + 0.2309699292 * s
   -1    60     g = -1.2684380046 * l + 2.6097574011 * m - 0.3413193965 * s
   -1    61     b = -0.0041960863 * l - 0.7034186147 * m + 1.7076147010 * s
   62    62 
   63    63     r = max(0, min(1, r))
   64    64     g = max(0, min(1, g))