wallust 2.9.0

Generate a 16 color scheme based on an image.
Documentation
# wallust 2.9.*
# -- global space -- #
# values below can be overwritten by command line flags

# How the image is parse, in order to get the colors:
#  * full       - Read and return the whole image pixels (more precision, slower)
#  * resized    - Resizes the image before parsing, mantaining it's aspect ratio
#  * wal        - Uses image magick `convert` to generate the colors, like pywal
#  * thumb      - Faster algo hardcoded to 512x512 (no ratio respected)
#  * fastresize - A much faster resize algo that uses SIMD. For some reason it
#                  fails on some images where `resized` doesn't, for this reason
#                  it does not *replace* but rather it's a new option.
backend = "resized"

# What color space to use to produce and select the most prominent colors:
#  * lab      - Uses Cie L*a*b color space
#  * labmixed - Variant of `lab` that mixes the colors gathered, if not enough
#                colors it fallbacks to usual lab (not recommended in small images)
#  * labfast  - Variant of `lab` that avoids floating arithmetic, thus, faster
#                operations but not that much precise result. Images that work on
#                lab/labmixed could not have "enough colors" for labfast.
color_space = "lab"

# Difference between similar colors, used by the colorspace:
#  1          Not perceptible by human eyes.
#  1 - 2      Perceptible through close observation.
#  2 - 10     Perceptible at a glance.
#  11 - 49    Colors are more similar than opposite
#  100        Colors are exact opposite
threshold = 20

# NOTE: All filters will fill 16 colors (from color0 to color15), 16 color
#       variations are the 'ilusion' of more colors by opaquing color1 to color5.
# Use the most prominent colors in a way that makes sense, a scheme:
#  * dark        - 8 dark colors, dark background and light contrast
#  * dark16      - Same as `dark` but uses the 16 colors trick
#  * harddark    - Same as `dark` with hard hue colors
#  * harddark16  - Harddark with 16 color variation
#  * light       - Light bg, dark fg
#  * light16     - Same as `light` but uses the 16 color trick
#  * softdark    - Variant of softlight, uses the lightest colors and a dark
#                   background (could be interpreted as `dark` inversed)
#  * softdark16  - softdark with 16 color variation
#  * softlight   - Light with soft pastel colors, counterpart of `harddark`
#  * softlight16 - softlight with 16 color variation
filter = "softdark16"

# Ensures a "readable contrast" (OPTIONAL, disabled by default)
# Should only be enables when you notice an unreadable contrast frequently happening
# with your images. The reference color for the contrast is the background color.
#check_contrast = true

# Color saturation, between [1% and 100%] (OPTIONAL, disabled by default)
# usually something higher than 50 increases the saturation and below
# decreases it (on a scheme with strong and vivid colors)
#saturation = 35

# Alpha value for templating, by default 100 (no other use whatsoever)
#alpha = 100

# -- templating -- # (OPTIONAL)
# An `entry` requires two files:
# 1. template: A relative path that points to a file where wallust.toml is located, usually at `~/.config/wallust/`
# 2. target: Absolute path in which to place a file with generated templated values

# OPTIONALLY It can accept `new_engine = true`: This "new engine" difers by using  double brackets like `{{variable}}`
# instead of one like usual, which helps with file formats that use brackets like json. With the `new_engine` enabled
# you can escape and produce a literal `{{` by `{{{{}}`, and for `}}` you escape it with `{{}}}}`.

# This is the most common way of integrating `wallust` generated palette to some program.
# Below a simple example that searches for `config-path/zathurarc` and puts the
# newly created file to `~/.config/zathura/zathurarc` and it uses the `new_engine` flag for double brackets.

# [[entry]]
# template = "zathurarc"
# target = "~/.config/zathura/zathurarc"
# new_engine = true

# REMINDER Variables and methods that can be used with templating:
#  wallpaper:  The full path to the current wallpaper.
#  backend:    Current **backend** being used.
#  colorspace: Current **colorspace** being used.
#  filter:     Current **filter** being used.
#  alpha:      Default to 100, can be modified in the config file or with `--alpha`/`-a`.
#  alpha_dec:  Instead of [0..=100], displays it from 0.00 to 1.00.
#  var:        Output the color in `hex`.
#  var.rgb:    Output the color in `rgb`.
#  var.rgba:   Output the color in `rgba`.
#  var.xrgba:  Output the color in `xrgb`.
#  var.strip:  Output the color in `hex` (without a `#`).
#  var.red:    Output the red value.
#  var.green:  Output the green value.
#  var.blue:   Output the blue value.
#
# Where `var` can be colors from `color0` to `color15`, `background`, `foreground` and `cursor`.