You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Per RFC-023, HSL Color Mixer parity ships via `colorequal` (Tier 2, commit `1b5db21`). That covers ~95% of HSL workflow.
This issue tracks the 5% case: photographers who want Lightroom HSL Range slider precision — explicit per-zone falloff control via spline-curve manipulation. `colorequal`'s `smoothing_hue` and `param_size` globals only give global falloff. `colorzones` (mv5, the legacy module) carries 3 explicit per-channel curves with 20 (x, y) anchor nodes each — that's the tool for sliders-precision-matters use cases.
Why deferred
`colorequal` covers the dominant HSL workflow; the gap is real but small.
darktable itself is moving away from `colorzones`. Investing in spline-curve decoding for a deprecated module is asymmetric cost.
The clean ship for this is discrete entries only: capture 4-6 known curves in darktable's GUI (e.g., `hsl_blue_sky_steep` — a curve that aggressively desaturates blue at one specific point), drop them in. No parameterized decoder.
Scope
Capture baselines from darktable GUI — author 4-8 reference `colorzones` dtstyles for common HSL precision moves:
`hsl_blue_sky_steep` (sharp blue desaturation curve)
`hsl_orange_skin_protect` (preserves orange at central hue, attenuates at edges)
Per RFC-023, HSL Color Mixer parity ships via `colorequal` (Tier 2, commit `1b5db21`). That covers ~95% of HSL workflow.
This issue tracks the 5% case: photographers who want Lightroom HSL Range slider precision — explicit per-zone falloff control via spline-curve manipulation. `colorequal`'s `smoothing_hue` and `param_size` globals only give global falloff. `colorzones` (mv5, the legacy module) carries 3 explicit per-channel curves with 20 (x, y) anchor nodes each — that's the tool for sliders-precision-matters use cases.
Why deferred
The clean ship for this is discrete entries only: capture 4-6 known curves in darktable's GUI (e.g., `hsl_blue_sky_steep` — a curve that aggressively desaturates blue at one specific point), drop them in. No parameterized decoder.
Scope
Definition of done
Priority
Lowest of the v1.8.0 Tier 3 set. Easy to defer to v1.9.0 or beyond if real-session feedback doesn't surface the gap.
References