wallust_themes

Crates.iowallust_themes
lib.rswallust_themes
version1.0.0
sourcesrc
created_at2024-02-02 22:24:37.803356
updated_at2024-02-02 22:24:37.803356
descriptionEmbeded colorschemes in an array of u32s.
homepagehttps://codeberg.org/explosion-mental/wallust-themes
repositoryhttps://codeberg.org/explosion-mental/wallust-themes
max_upload_size
id1124774
size150,393
(explosion-mental)

documentation

README

wallust-themes - built in colorschemes for wallust

This is a simple crate that stores consts colorschemes in arrays (slices). Indexing in either of COLS_VALUE or COLS_KEY will result in the array values (see the spec) or the name of the colorscheme, that's why they both have the same len()ght.

NOTE: COLS_VALUE and COLS_KEY will have the same LEN as the number of files in colorschemes/.

Spec

COLS_VALUE will always store the variables in this order (starting with index 0):

  1. color0
  2. color1
  3. color2
  4. color3
  5. color4
  6. color5
  7. color6
  8. color7
  9. color8
  10. color9
  11. color10
  12. color11
  13. color12
  14. color13
  15. color14
  16. color15
  17. background
  18. foreground
  19. cursor

Making a total of 19 items. Each one of them is a u32 number that represents [u8; 3] and can be decoded by .to_le_bytes()

Example

Remember that COLS_VALUE is an array (quantity of coloschemes/) that contains arrays (19 u32s, as defined above) itself.

use wallust_themes::COLS_VALUE;
let some_color = COLS_VALUE[0][0]; //random color
// a (alpha) will always be 0, since we don't use RGBA, but RGB
let [b, g, r, a] = some_color.to_le_bytes();

New Themes

If you feel like a very well known colorscheme is missing, you should request it's addition with a json file following this format:

{
  "colors": {
    "color0": "#090300",
    "color1": "#db2d20",
    "color10": "#01a252",
    "color11": "#fded02",
    "color12": "#01a0e4",
    "color13": "#a16a94",
    "color14": "#b5e4f4",
    "color15": "#f7f7f7",
    "color2": "#01a252",
    "color3": "#fded02",
    "color4": "#01a0e4",
    "color5": "#a16a94",
    "color6": "#b5e4f4",
    "color7": "#a5a2a2",
    "color8": "#5c5855",
    "color9": "#db2d20"
  },
  "special": {
    "background": "#090300",
    "cursor": "#db2d20",
    "foreground": "#a5a2a2"
  }
}
Commit count: 0

cargo fmt