hadalized 0.4.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- hadalized/__init__.py +1 -0
- hadalized/__main__.py +6 -0
- hadalized/base.py +137 -0
- hadalized/cache.py +121 -0
- hadalized/cli/__init__.py +1 -0
- hadalized/cli/main.py +221 -0
- hadalized/color.py +595 -0
- hadalized/config.py +442 -0
- hadalized/const.py +6 -0
- hadalized/convert.py.bak +1903 -0
- hadalized/homedirs.py +69 -0
- hadalized/options.py +134 -0
- hadalized/palette.py +133 -0
- hadalized/templates/colors.html +21 -0
- hadalized/templates/config.toml +15 -0
- hadalized/templates/generic.txt +1 -0
- hadalized/templates/item.html +1 -0
- hadalized/templates/lua_module.lua +6 -0
- hadalized/templates/model_dump.json +1 -0
- hadalized/templates/neovim.lua +24 -0
- hadalized/templates/neovim_palette.lua +7 -0
- hadalized/templates/palette.html +53 -0
- hadalized/templates/palette_info.json +1 -0
- hadalized/templates/palette_test.toml +10 -0
- hadalized/templates/starship-all.toml +98 -0
- hadalized/templates/starship.toml +233 -0
- hadalized/templates/wezterm.toml +45 -0
- hadalized/web.py +168 -0
- hadalized/writer.py +243 -0
- hadalized-0.4.0.dist-info/METADATA +79 -0
- hadalized-0.4.0.dist-info/RECORD +33 -0
- hadalized-0.4.0.dist-info/WHEEL +4 -0
- hadalized-0.4.0.dist-info/entry_points.txt +4 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: hadalized
|
|
3
|
+
Version: 0.4.0
|
|
4
|
+
Summary: Hadalized color theme builder.
|
|
5
|
+
Author: Shawn O'Hare
|
|
6
|
+
Author-email: Shawn O'Hare <shawn@shawnohare.com>
|
|
7
|
+
Requires-Dist: coloraide>=6.2
|
|
8
|
+
Requires-Dist: cyclopts>=4.5.0
|
|
9
|
+
Requires-Dist: jinja2>=3.1.6
|
|
10
|
+
Requires-Dist: loguru>=0.7.3
|
|
11
|
+
Requires-Dist: luadata>=1.0.5
|
|
12
|
+
Requires-Dist: pydantic>=2.12.5
|
|
13
|
+
Requires-Dist: pydantic-settings>=2.12.0
|
|
14
|
+
Requires-Dist: tomli-w>=1.2.0
|
|
15
|
+
Requires-Dist: xdg-base-dirs>=6.0.2
|
|
16
|
+
Requires-Python: >=3.14
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
|
|
19
|
+
# hadalized color theme build
|
|
20
|
+
|
|
21
|
+
Python package with CLI to build hadalized-style application themes.
|
|
22
|
+
|
|
23
|
+
## Introduction
|
|
24
|
+
|
|
25
|
+
The application can build any theme conforming to the hadalized `Palette`
|
|
26
|
+
schema for any application with a `BuildConfig` and appropriate theme
|
|
27
|
+
template.
|
|
28
|
+
|
|
29
|
+
The builtin [hadalized color palettes](./src/hadalized/colors.py)
|
|
30
|
+
are defined as oklch color values. Application theme templates are rendered
|
|
31
|
+
with the appropriate color type (e.g., hex values for neovim). Under the hood
|
|
32
|
+
the `coloraide` python package is used to transform between colorspaces and fit
|
|
33
|
+
to gamuts.
|
|
34
|
+
|
|
35
|
+
Creating a theme builder arises from the desire to use the OKLCH color space
|
|
36
|
+
as the basis for any application color theme. When developing the palette, it
|
|
37
|
+
quickly becomes tedius to manually convert oklch values to their hex
|
|
38
|
+
equivalents.
|
|
39
|
+
|
|
40
|
+
The builder primarily targets the neovim colorscheme files in
|
|
41
|
+
[hadalized.nvim](https://github.com/shawnohare/hadalized.nvim), as that is
|
|
42
|
+
the editor we primarily use.
|
|
43
|
+
|
|
44
|
+
## Example CLI Usage
|
|
45
|
+
|
|
46
|
+
Assuming `uv` is installed,
|
|
47
|
+
|
|
48
|
+
```sh
|
|
49
|
+
uv run --exact hadalized build --out="build"
|
|
50
|
+
```
|
|
51
|
+
will produce rendered theme files for all builtin applications in `./build`.
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
## Development
|
|
55
|
+
|
|
56
|
+
Assuming `uv` and `just` are installed
|
|
57
|
+
|
|
58
|
+
```sh
|
|
59
|
+
uv sync --locked
|
|
60
|
+
source .venv/bin/evaluate
|
|
61
|
+
# make changes
|
|
62
|
+
just fmt
|
|
63
|
+
just check
|
|
64
|
+
just test
|
|
65
|
+
# commit changes
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Roadmap / TODOs
|
|
69
|
+
|
|
70
|
+
- [ ] Add to pypi.
|
|
71
|
+
- [ ] Consider removing the "in-memory" cache functionality.
|
|
72
|
+
- [ ] (A) Add ability to map named colors such as `red` to an abstracted name
|
|
73
|
+
such as `color1`, similar to `base16`. Use these abstracted names color theme
|
|
74
|
+
templates. This might be painful to work with in practice, as one has to keep
|
|
75
|
+
the mapping in their head.
|
|
76
|
+
- [ ] (B) As an extension of (A), consider lightweight pandoc inspired features
|
|
77
|
+
where an intermediate and generic theme can be defined and referenced in
|
|
78
|
+
editor templates. For example, allow a user to define `integer = "blue"` and
|
|
79
|
+
reference `theme.integer` to color neovim `Integer` highlight groups.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
hadalized/__init__.py,sha256=TONfRyEtBmXampFTazJpmuIFCVPYFuq2kSCuM5lr7cI,69
|
|
2
|
+
hadalized/__main__.py,sha256=UYGIn3SXJUqFVRsToVTqCegwbf2loBt0nt3ItL_EPzc,135
|
|
3
|
+
hadalized/base.py,sha256=SugF54vnXKqeBARp3tfUWq2GaP19n2107l2Owy-a9sk,3823
|
|
4
|
+
hadalized/cache.py,sha256=KilJxCJr_kQac4trATwj2ZL3oozKFIKB7jOF0jvcOu4,3497
|
|
5
|
+
hadalized/cli/__init__.py,sha256=yWUjHt53STm83fgGKYLfVMkKH6MlnBs31c_329zmPXI,58
|
|
6
|
+
hadalized/cli/main.py,sha256=UXelf13h67v6l4RF41dYwvHUpFUV-G6Rt3VqM4bVL6Q,6473
|
|
7
|
+
hadalized/color.py,sha256=_7YFK-1O8wTLoPfm2TChPumkSgF7Fmj4ki8wZ1EVwhE,18350
|
|
8
|
+
hadalized/config.py,sha256=Cd4UvXzAOzENWAYVwKMpY_nnkYfcty8cMlv20t9pk4g,13603
|
|
9
|
+
hadalized/const.py,sha256=NUgLn7rL65TeD1v-VNqOiXL_db08t7kmZvGAltKLBgQ,121
|
|
10
|
+
hadalized/convert.py.bak,sha256=1STK9AiERfu1lIz8jGXulOSFpSQAV_CSRNV9ntv1B4E,61970
|
|
11
|
+
hadalized/homedirs.py,sha256=bf6VNgibWfz3i6VnQN5ETJ4bvZHd3z8NDFoXhUMgQ5o,1285
|
|
12
|
+
hadalized/options.py,sha256=j6YaCYAr49rnoSaQeX5rvhXO78mIjlp5xJ44yotvDCw,5261
|
|
13
|
+
hadalized/palette.py,sha256=Dv3sdp3iQSpxvAa-_C68RU89nHuuERfzC4wSrm4vjgg,3796
|
|
14
|
+
hadalized/templates/colors.html,sha256=c0k-Yjsk-vLC1KkOB-UjS8oY6VfeERQCl5tOfmSvGR4,331
|
|
15
|
+
hadalized/templates/config.toml,sha256=FIST26ciOHeEGhkTKKO9PKgLItQ5dU3QZnhfMHDh8E8,368
|
|
16
|
+
hadalized/templates/generic.txt,sha256=ArDfKDr-vV1_X3jWN1Bd4RovcYkwhUs-C5e6wVkk1Tk,9
|
|
17
|
+
hadalized/templates/item.html,sha256=S1SljeL_iF8tnUtbon4GiRH0H2yYiKBpJuI1Ptg4gNU,78
|
|
18
|
+
hadalized/templates/lua_module.lua,sha256=WZWcc68tyKj9l_ozD--ZHbJ-EQc8_ljTuLGaIc7h6lk,82
|
|
19
|
+
hadalized/templates/model_dump.json,sha256=fYcezxCsOiS43te2k00Bw3H7jIdCeTC-4yUP9R2SXls,35
|
|
20
|
+
hadalized/templates/neovim.lua,sha256=YJn_1Wl7nBJYNT5aeRiCPkpLXO-Z9TpxAf731XgxLf4,831
|
|
21
|
+
hadalized/templates/neovim_palette.lua,sha256=WWtpS_ToWnSBQ1AzqMJPBOYs7PNotZbLn_5DQBiJHjo,192
|
|
22
|
+
hadalized/templates/palette.html,sha256=mlBehbJMyI3YHHgLdgaawaZuSOvX-qGso-dbY1huPnA,1229
|
|
23
|
+
hadalized/templates/palette_info.json,sha256=cjY9oayQAzQpT57CvuTHt1UFESGAiKl6wHrEmRsD1Gg,38
|
|
24
|
+
hadalized/templates/palette_test.toml,sha256=HDMWl-7lPQmwP1c_213-WXqHeRsVz7bb5lHlYdOy0M4,219
|
|
25
|
+
hadalized/templates/starship-all.toml,sha256=d5spMQQp2T1g8526fKspcZL6ZaUfGX8JDVYG-1zPEM8,938
|
|
26
|
+
hadalized/templates/starship.toml,sha256=ICfu1-g2iCRSKlM8RaQgSA3s45HtvbdAhp0-xHae1P4,4383
|
|
27
|
+
hadalized/templates/wezterm.toml,sha256=cAmC9KgznqsMgxRqJtgPps8qTkARssGZQQ_Owe2paxU,1151
|
|
28
|
+
hadalized/web.py,sha256=y-uC_YRsiMLH_pbspBwylb38sfkJTFnnwi0mcJk5JBk,9283
|
|
29
|
+
hadalized/writer.py,sha256=TmLcg_THIjhUtLZIzdDc5S_J4jtioPM8D73pbqOvcj0,7239
|
|
30
|
+
hadalized-0.4.0.dist-info/WHEEL,sha256=fAguSjoiATBe7TNBkJwOjyL1Tt4wwiaQGtNtjRPNMQA,80
|
|
31
|
+
hadalized-0.4.0.dist-info/entry_points.txt,sha256=xW8UcWDpBlfl2QXeNfwimkL3LgR8zBEBdcP5bq5i3cM,83
|
|
32
|
+
hadalized-0.4.0.dist-info/METADATA,sha256=DFaSuuki8cFN26Q7nLKcU0fHlcbtbxR9defHZgseCGU,2537
|
|
33
|
+
hadalized-0.4.0.dist-info/RECORD,,
|