question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Beta Testing of new ColorHelper of 3.0

See original GitHub issue

Feel free to try out the current beta and discuss, give feedback,etc.

Instructions

https://facelessuser.github.io/ColorHelper/installation/#install-3.0-beta

Let me know if you run into hiccups or something doesn’t work.

Planned Changes

  • Underlying color object should return a new color instance when applying “fit”.
  • Some underlying object methods should have an “in place” option to modify the current color. “fit” and “mix” are good candidates for this.
  • Clean up and settings for specific file types. Need to set good defaults for them and verify they all still work and/or improve them if they are broken.
  • Minor code cleanup. Particularly in the area of managing the panels.
  • Decide if we want to add any more color spaces.
  • Are there any other custom color classes we should implement now? Or leave that up to the user to create there own?
  • Update documentation.
  • Possibly make a beta release and advertise on Sublime forum to get more testing.
  • Get color dependency on package control.
  • Handle color functions that specify fallback colors: color(display-p3 0 1 0, rgb(0 100 0)). Looks like this is getting dropped from CSS spec 🎊.
  • ColorHelper is meant to find instances of single colors. But some fallbacks are only valid when they are inside a color function. How do we handle those? In this case (color(display-p3 0 1 0, 0 1 0)) the fallback is assumed to be srgb, but we can’t just add a pattern to find random numbers and treat them as colors. The underlying library that handles color is meant to define and manipulate single colors, not to return an array of colors for a single color instance. Basically, we need to decide if we are just going to ignore such instances or provide more complexity to find such colors. Looks like this is getting dropped from CSS spec 🎊.
  • Look into premultiplied mixing of transparent colors.
  • Look into phantom issues on ST3.

Changes (so far)

3.0.0

  • NEW: New supported color spaces: lch, lab, display-p3, rec-2020, xyz,
    prophoto-rgb, a98-rgb, and hsv.
  • NEW: rgb, hsl, and hwb all support the new CSS format rgb(r g b / a).
  • NEW: All instances of blacklist and whitelist are now known as blocklist
    and allowlist respectively.
  • NEW: Outputs when inserting or converting can be controlled in settings file.
  • NEW: Color triggers (what color helper searches for before testing if the text
    is a color) can be configured in settings file. This can allow a user to not trigger
    on certain formats.
  • NEW: If desired, users can provided a custom color class object to use for certain
    files that can augment one or more supported color space’s accepted input and output
    formats.
  • NEW: Improvements to scanning. Scanning will only occur in the viewable viewport.
    Text that is not visible, both vertically or horizontally, will not be scanned until
    it scrolls into view.
  • NEW: New option preview_on_select to show color previews only when the cursor is
    on the color or selecting the color (currently only applied to one selection).
  • NEW: New color edit tool which allows a user to get a live update of the color as
    they alter the coordinates, and allows the user to mix it with one other color. The
    result can be inserted back into the file, or will be handed back to the color picker
    if called from there.
  • NEW: New color contrast tool which allows a user to see the contrast ration and
    see a visual representation of how the two colors contrast. The resulting foreground
    color can be inserted back into the file, or will be handed back to the color picker
    if called from there.
  • NEW: Only one color rule (defined in the settings file) will apply to a given view.
  • NEW: Renamed color_scan option to color_rule.
  • NEW: Colors that our out of gamut will be gamut mapped. On over of the preivew
    (on ST4) it will indicate that it has been gamut mapped. This can be disabled via
    show_out_of_gamut_preview, and instead a fully transparent color swatch with a
    “red-ish” border will be shown (color may vary based on color scheme). On mouse over
    it will indicate that it is out of gamut (on ST4).
  • NEW: Sometimes when dealing with an out of gamut color, due to needing to work in
    a certain color space (contrast tool and color picker only apply spaces easily
    translated to sRGB), ColorHelper will have to gamut map a color. Two forms of gamut
    mapping are provided lch-chroma and clip. preferred_gamut_mapping controlls
    which method is preferred with lch-chroma being the default.
  • NEW: ColorHelper will now gamut map colors in some scenarios, either due to
    necessity, or by user setting.
  • NEW: New generic option is defined which provides a default input and output for
    files with no rules. Users can use the color picker, and other color tools, from any
    file now. Scanning is disabled by default and can be enabled if desired. generic can
    be tweaked to provide whatever fallback experience the user desired.
  • NEW: New command added to force scanning in a file that may have scanning disabled.
    Also can force a file with scanning enabled to be disabled.
  • NEW: Color helper will now recognize transparent.
  • NEW: Color picker rainbow box will adjust based on the saturation of the currently,
    selected color.
  • NEW: Color picker will give a clear indication when you are at the end of a color
    channel.
  • NEW: Provide user_color_rules where user can append rules without overwriting the
    entire rule set. If a rule uses the same name as one of the existing default rules,
    a shallow merge will be done so the values of the top level keys will be overridden
    with the user keys and/or any additional keys will be added.
  • NEW: Smoother behavior of color previews when editing code.
  • REMOVED: Color completion. It mainly got in the way. The palette can be called any
    time the user needs it already.
  • REMOVED: Hex shaped color picker option has been removed.
  • REMOVED: Removed “current file palette”. ColorHelper will no longer scan the entire
    current file and generate a palette. This only worked in a limited number of files and
    added much more complexity.
  • REMOVED: Various options from rules sets. These are now controlled by the color
    class object that is being used. For instance, input and output format of colors in the
    form #AARRGGBB instead of the default #RRGGBBAA would need need to use the new
    example ColorHelper.custom.ahex.ColorAhex custom color object to read in and output
    hex colors with leading alpha channels.
  • FIX: Insert logic issues.
  • FIX: ColorPicker now will always work in the color space of the current mode.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:59 (46 by maintainers)

github_iconTop GitHub Comments

3reactions
facelessusercommented, Oct 2, 2020

Updates have been made to both the plugin and the underlying color library. To upgrade to the latest beta, one must fetch the latest coloraide dependency, and fetch the latest plugin on the feature/next branch.

At this point, I think I’m going to run the plugin through some testing and probably start looking towards maybe a public beta. I think everything is in place now. I think I’ve refactored enough now as well. Maybe I’ll do some more in the future, but I need a break 🙂.

2reactions
facelessusercommented, Mar 11, 2021

We are poised for release! I’ve spent the last number of days (when I had a chance) getting things as stable as possible. There will be a few bug fixes in the next release, which will be the final 3.0 release.

  • Had a small bug when reading a ST color-mod blend when the space was specified as hsl.
  • Small issue with color panel rendering with some related panels in the color picker.

All of these will be fixed tomorrow.

We’ll see how the greater audience responds. I’m expecting some flack on why certain things were removed, but that is the price of me moving forward with this project. Some buggy things had to go.

Read more comments on GitHub >

github_iconTop Results From Across the Web

ColorHelper 3.0 Beta - Plugin Announcements - Sublime Forum
It's been a long time coming, but the ColorHelper 3.0 Beta is now ... The new ColorHelper supports more color formats and more...
Read more >
How to sign up for Genshin Impact 3.0 Beta testing
Beta testers will get an early chance to explore the new region of Sumeru and test the new upcoming characters that are yet...
Read more >
Genshin Impact 3.0 Beta Test: How & Where To Sign Up
Genshin Impact 3.0 Beta testing will begin soon and sign-ups are live now, but applicants only have a limited time to attempt to...
Read more >
Beta - Wyze Forum
Topic Replies Views Activity Wyze vacuum firmware 1.6.173 · firmware 25 1010 December 17, 2022 Wyze Switch Firmware Beta Test 12/12/2022 8 150 December 17,...
Read more >
IAB Tech Lab Launches Phase Two of OpenRTB 3.0 Public ...
IAB Tech Lab Launches Phase Two of OpenRTB 3.0 Public Comment, Releasing Tech Specifications & Kicking-Off Beta Tests.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found