diff options
-rw-r--r-- | .github/workflows/workflow.yml | 34 | ||||
-rw-r--r-- | README.md | 82 | ||||
-rw-r--r-- | manifest.json | 3 | ||||
-rw-r--r-- | previews/ayu-dark.svg | 30 | ||||
-rw-r--r-- | previews/ayu-light.svg | 28 | ||||
-rw-r--r-- | previews/ayu-mirage.svg | 30 | ||||
-rw-r--r-- | previews/github-dark-dimmed.svg | 22 | ||||
-rwxr-xr-x | scripts/make_preview_image.lua | 79 |
8 files changed, 217 insertions, 91 deletions
diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml new file mode 100644 index 0000000..4117b73 --- /dev/null +++ b/.github/workflows/workflow.yml @@ -0,0 +1,34 @@ +name: Update README + +on: + push: + branches: [master] + +jobs: + reorganize: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Generate table with `lpm` + run: | + wget https://github.com/lite-xl/lite-xl-plugin-manager/releases/download/latest/lpm.x86_64-linux -O lpm && chmod +x lpm + # Unstub all stubs so we can make proper previews. + ./lpm --userdir . init . && ./lpm --userdir . color install "*" && ./lpm purge --userdir . + ./lpm exec scripts/make_preview_image.lua + perl -pi -e 'exit(0) if $_ =~ m/^\-\-\-/' README.md + echo "---" >> README.md + echo -e "\n## Dark\n" >> README.md + echo "| Theme | Preview" >> README.md + echo "| :------------------------------------------------------------ | :----------------------------------------------------" >> README.md + ./lpm table manifest.json --type color --tag "dark" | tail -n +3 | perl -pe '($w) = $_ =~ m/`([^`]+)`/; $_ =~ s/$/ \!\[$w\_preview\](previews\/$w.svg)/ if $w' >> README.md + echo -e "\n## Light\n" >> README.md + echo "| Theme | Preview" >> README.md + echo "| :------------------------------------------------------------ | :----------------------------------------------------" >> README.md + ./lpm table manifest.json --type color --tag "light" | tail -n +3 | perl -pe '($w) = $_ =~ m/`([^`]+)`/; $_ =~ s/$/ \!\[$w\_preview\](previews\/$w.svg)/ if $w' >> README.md + if ! git diff --exit-code -s README.md; then + git config --global user.name "Github Actions" && git config --global user.email "<>" + git add README.md previews + git commit -m '[CI] Updated README.md.' + git push + fi + @@ -25,46 +25,48 @@ embedded in the table.* ## Dark -Theme | Preview -------|----------------------------------------- -[`betelgeuse`](colors/betelgeuse.lua?raw=1) | ![betelgeuse_preview](previews/betelgeuse.svg) -[`cold_lime`](colors/cold_lime.lua?raw=1) | ![cold_lime_preview](previews/cold_lime.svg) -[`c0mfy`](colors/c0mfy.lua?raw=1) | ![c0mfy_preview](previews/c0mfy.svg) -[`dracula`](colors/dracula.lua?raw=1) | ![dracula_preview](previews/dracula.svg) -[`duorand`](colors/duorand.lua?raw=1) | ![duorand_preview](previews/duorand.svg) -[`duotone`](colors/duotone.lua?raw=1) | ![duotone_preview](previews/duotone.svg) -[`everforest`](colors/everforest.lua?raw=1) | ![everforest_preview](previews/everforest.svg) -[`github_dark`](colors/github_dark.lua?raw=1) | ![github_dark_preview](previews/github_dark.svg) -[`github-dark-dimmed`](colors/github-dark-dimmed.lua?raw=1) | ![duotone_preview](previews/github-dark-dimmed.svg) -[`gruvbox_dark`](colors/gruvbox_dark.lua?raw=1) | ![gruvbox_dark_preview](previews/gruvbox_dark.svg) -[`jb-fleet`](colors/jb-fleet.lua?raw=1) | ![jb-fleet_preview](previews/jb-fleet.svg) -[`jellybeans`](colors/jellybeans.lua?raw=1) | ![jellybeans_preview](previews/jellybeans.svg) -[`liqube`](colors/liqube.lua?raw=1) | ![liqube_preview](previews/liqube.svg) -[`mariana`](colors/mariana.lua?raw=1) | ![mariana_preview](previews/mariana.svg) -[`monodark`](colors/monodark.lua?raw=1) | ![monodark_preview](previews/monodark.svg) -[`monokai`](colors/monokai.lua?raw=1) | ![monokai_preview](previews/monokai.svg) -[`monokai-pro-classic`](colors/monokai-pro-classic.lua?raw=1) | ![monokai-pro-classic_preview](previews/monokai-pro-classic.svg) -[`nord`](colors/nord.lua?raw=1) | ![nord_preview](previews/nord.svg) -[`onedark`](colors/onedark.lua?raw=1) | ![onedark_preview](previews/onedark.svg) -[`only_dark`](colors/only_dark.lua?raw=1) | ![only_dark_preview](previews/only_dark.svg) -[`plasma`](colors/plasma.lua?raw=1) | ![plasma_preview](previews/plasma.svg) -[`rose-pine-moon`](colors/rose-pine-moon.lua?raw=1)| ![rose_pine_review](previews/rose-pine-moon.svg) -[`rose-pine`](colors/rose-pine.lua?raw=1)| ![rose_pine_review](previews/rose-pine.svg) -[`solarized_dark`](colors/solarized_dark.lua?raw=1) | ![solarized_dark_preview](previews/solarized_dark.svg) -[`synthwave`](colors/synthwave.lua?raw=1) | ![synthwave_preview](previews/synthwave.svg) -[`tokyo-night`](colors/tokyo-night.lua?raw=1) | ![tokyo-night_preview](previews/tokyo-night.svg) -[`vscode-dark`](colors/vscode-dark.lua?raw=1) | ![vscode-dark_preview](previews/vscode-dark.svg) -[`winter`](colors/winter.lua?raw=1) | ![winter_preview](previews/winter.svg) -[`zenburn`](colors/zenburn.lua?raw=1) | ![zenburn_preview](previews/zenburn.svg) +| Theme | Preview +| :------------------------------------------------------------ | :---------------------------------------------------- +| [`abyss`](colors/abyss.lua?raw=1) | ![abyss_preview](previews/abyss.svg) +| [`ayu-dark`](https://github.com/juliardi/lite-xl-ayu-theme.git)\* | ![ayu-dark_preview](previews/ayu-dark.svg) +| [`ayu-mirage`](https://github.com/juliardi/lite-xl-ayu-theme.git)\* | ![ayu-mirage_preview](previews/ayu-mirage.svg) +| [`betelgeuse`](colors/betelgeuse.lua?raw=1) | ![betelgeuse_preview](previews/betelgeuse.svg) +| [`c0mfy`](colors/c0mfy.lua?raw=1) | ![c0mfy_preview](previews/c0mfy.svg) +| [`cold_lime`](colors/cold_lime.lua?raw=1) | ![cold_lime_preview](previews/cold_lime.svg) +| [`dracula`](colors/dracula.lua?raw=1) | ![dracula_preview](previews/dracula.svg) +| [`duorand`](colors/duorand.lua?raw=1) | ![duorand_preview](previews/duorand.svg) +| [`duotone`](colors/duotone.lua?raw=1) | ![duotone_preview](previews/duotone.svg) +| [`everforest`](colors/everforest.lua?raw=1) | ![everforest_preview](previews/everforest.svg) +| [`github-dark-dimmed`](colors/github-dark-dimmed.lua?raw=1) | ![github-dark-dimmed_preview](previews/github-dark-dimmed.svg) +| [`github_dark`](colors/github_dark.lua?raw=1) | ![github_dark_preview](previews/github_dark.svg) +| [`gruvbox_dark`](colors/gruvbox_dark.lua?raw=1) | ![gruvbox_dark_preview](previews/gruvbox_dark.svg) +| [`jb-fleet`](colors/jb-fleet.lua?raw=1) | ![jb-fleet_preview](previews/jb-fleet.svg) +| [`jellybeans`](colors/jellybeans.lua?raw=1) | ![jellybeans_preview](previews/jellybeans.svg) +| [`liqube`](colors/liqube.lua?raw=1) | ![liqube_preview](previews/liqube.svg) +| [`mariana`](colors/mariana.lua?raw=1) | ![mariana_preview](previews/mariana.svg) +| [`monodark`](colors/monodark.lua?raw=1) | ![monodark_preview](previews/monodark.svg) +| [`monokai`](colors/monokai.lua?raw=1) | ![monokai_preview](previews/monokai.svg) +| [`monokai-pro-classic`](colors/monokai-pro-classic.lua?raw=1) | ![monokai-pro-classic_preview](previews/monokai-pro-classic.svg) +| [`nord`](colors/nord.lua?raw=1) | ![nord_preview](previews/nord.svg) +| [`onedark`](colors/onedark.lua?raw=1) | ![onedark_preview](previews/onedark.svg) +| [`only_dark`](colors/only_dark.lua?raw=1) | ![only_dark_preview](previews/only_dark.svg) +| [`plasma`](colors/plasma.lua?raw=1) | ![plasma_preview](previews/plasma.svg) +| [`rose-pine`](colors/rose-pine.lua?raw=1) | ![rose-pine_preview](previews/rose-pine.svg) +| [`rose-pine-moon`](colors/rose-pine-moon.lua?raw=1) | ![rose-pine-moon_preview](previews/rose-pine-moon.svg) +| [`synthwave`](colors/synthwave.lua?raw=1) | ![synthwave_preview](previews/synthwave.svg) +| [`tokyo-night`](colors/tokyo-night.lua?raw=1) | ![tokyo-night_preview](previews/tokyo-night.svg) +| [`vscode-dark`](colors/vscode-dark.lua?raw=1) | ![vscode-dark_preview](previews/vscode-dark.svg) +| [`winter`](colors/winter.lua?raw=1) | ![winter_preview](previews/winter.svg) +| [`zenburn`](colors/zenburn.lua?raw=1) | ![zenburn_preview](previews/zenburn.svg) ## Light -Theme | Preview -------|----------------------------------------- -[`github`](colors/github.lua?raw=1) | ![github_preview](previews/github.svg) -[`gruvbox_light`](colors/gruvbox_light.lua?raw=1) | ![gruvbox_light_preview](previews/gruvbox_light.svg) -[`moe`](colors/moe.lua?raw=1) | ![moe_preview](previews/moe.svg) -[`rose-pine-dawn`](colors/rose-pine-dawn.lua?raw=1)| ![rose_pine_review](previews/rose-pine-dawn.svg) -[`solarized_light`](colors/solarized_light.lua?raw=1) | ![solarized_light_preview](previews/solarized_light.svg) -[`solarobj`](colors/solarobj.lua?raw=1) | ![solarobj_preview](previews/solarobj.svg) - +| Theme | Preview +| :------------------------------------------------------------ | :---------------------------------------------------- +| [`ayu-light`](https://github.com/juliardi/lite-xl-ayu-theme.git)\* | ![ayu-light_preview](previews/ayu-light.svg) +| [`github`](colors/github.lua?raw=1) | ![github_preview](previews/github.svg) +| [`gruvbox_light`](colors/gruvbox_light.lua?raw=1) | ![gruvbox_light_preview](previews/gruvbox_light.svg) +| [`moe`](colors/moe.lua?raw=1) | ![moe_preview](previews/moe.svg) +| [`rose-pine-dawn`](colors/rose-pine-dawn.lua?raw=1) | ![rose-pine-dawn_preview](previews/rose-pine-dawn.svg) +| [`solarized_light`](colors/solarized_light.lua?raw=1) | ![solarized_light_preview](previews/solarized_light.svg) +| [`solarobj`](colors/solarobj.lua?raw=1) | ![solarobj_preview](previews/solarobj.svg) diff --git a/manifest.json b/manifest.json index ff98624..bfb83c1 100644 --- a/manifest.json +++ b/manifest.json @@ -14,6 +14,7 @@ { "id": "ayu-dark", "remote": "https://github.com/juliardi/lite-xl-ayu-theme.git:33a514527d4870480554771c273e667eb6418873", + "type": "color", "tags": [ "dark" ] @@ -21,6 +22,7 @@ { "id": "ayu-light", "remote": "https://github.com/juliardi/lite-xl-ayu-theme.git:33a514527d4870480554771c273e667eb6418873", + "type": "color", "tags": [ "light" ] @@ -28,6 +30,7 @@ { "id": "ayu-mirage", "remote": "https://github.com/juliardi/lite-xl-ayu-theme.git:33a514527d4870480554771c273e667eb6418873", + "type": "color", "tags": [ "dark" ] diff --git a/previews/ayu-dark.svg b/previews/ayu-dark.svg new file mode 100644 index 0000000..b7b3895 --- /dev/null +++ b/previews/ayu-dark.svg @@ -0,0 +1,30 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="16" shape-rendering="crispEdges"> +<rect x="0.0" width="7.1428571428571" height="16" fill="rgb(16, 20, 28)"></rect> +<rect x="7.1428571428571" width="7.1428571428571" height="16" fill="rgb(24, 28, 37)"></rect> +<rect x="14.285714285714" width="7.1428571428571" height="16" fill="rgb(28, 33, 40)"></rect> +<rect x="21.428571428571" width="7.1428571428571" height="16" fill="rgb(34, 38, 46)"></rect> +<rect x="28.571428571429" width="7.1428571428571" height="16" fill="rgb(37, 41, 47)"></rect> +<rect x="35.714285714286" width="7.1428571428571" height="16" fill="rgb(53, 57, 63)"></rect> +<rect x="42.857142857143" width="7.1428571428571" height="16" fill="rgb(187, 0, 0)"></rect> +<rect x="50.0" width="7.1428571428571" height="16" fill="rgb(72, 72, 79)"></rect> +<rect x="57.142857142857" width="7.1428571428571" height="16" fill="rgb(82, 82, 89)"></rect> +<rect x="64.285714285714" width="7.1428571428571" height="16" fill="rgb(92, 99, 112)"></rect> +<rect x="71.428571428571" width="7.1428571428571" height="16" fill="rgb(28, 124, 156)"></rect> +<rect x="78.571428571429" width="7.1428571428571" height="16" fill="rgb(131, 131, 143)"></rect> +<rect x="85.714285714286" width="7.1428571428571" height="16" fill="rgb(114, 184, 134)"></rect> +<rect x="92.857142857143" width="7.1428571428571" height="16" fill="rgb(255, 102, 102)"></rect> +<rect x="100.0" width="7.1428571428571" height="16" fill="rgb(255, 143, 64)"></rect> +<rect x="107.14285714286" width="7.1428571428571" height="16" fill="rgb(170, 217, 76)"></rect> +<rect x="114.28571428571" width="7.1428571428571" height="16" fill="rgb(240, 113, 113)"></rect> +<rect x="121.42857142857" width="7.1428571428571" height="16" fill="rgb(57, 186, 230)"></rect> +<rect x="128.57142857143" width="7.1428571428571" height="16" fill="rgb(230, 180, 80)"></rect> +<rect x="135.71428571429" width="7.1428571428571" height="16" fill="rgb(242, 150, 104)"></rect> +<rect x="142.85714285714" width="7.1428571428571" height="16" fill="rgb(255, 169, 77)"></rect> +<rect x="150.0" width="7.1428571428571" height="16" fill="rgb(255, 180, 84)"></rect> +<rect x="157.14285714286" width="7.1428571428571" height="16" fill="rgb(172, 182, 191)"></rect> +<rect x="164.28571428571" width="7.1428571428571" height="16" fill="rgb(191, 189, 182)"></rect> +<rect x="171.42857142857" width="7.1428571428571" height="16" fill="rgb(147, 221, 250)"></rect> +<rect x="178.57142857143" width="7.1428571428571" height="16" fill="rgb(204, 202, 223)"></rect> +<rect x="185.71428571429" width="7.1428571428571" height="16" fill="rgb(225, 225, 230)"></rect> +<rect x="192.85714285714" width="7.1428571428571" height="16" fill="rgb(255, 255, 255)"></rect> +</svg>
\ No newline at end of file diff --git a/previews/ayu-light.svg b/previews/ayu-light.svg new file mode 100644 index 0000000..eab30f0 --- /dev/null +++ b/previews/ayu-light.svg @@ -0,0 +1,28 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="16" shape-rendering="crispEdges"> +<rect x="0.0" width="7.6923076923077" height="16" fill="rgb(92, 97, 102)"></rect> +<rect x="7.6923076923077" width="7.6923076923077" height="16" fill="rgb(28, 124, 156)"></rect> +<rect x="15.384615384615" width="7.6923076923077" height="16" fill="rgb(134, 179, 0)"></rect> +<rect x="23.076923076923" width="7.6923076923077" height="16" fill="rgb(3, 109, 214)"></rect> +<rect x="30.769230769231" width="7.6923076923077" height="16" fill="rgb(119, 119, 119)"></rect> +<rect x="38.461538461538" width="7.6923076923077" height="16" fill="rgb(120, 123, 128)"></rect> +<rect x="46.153846153846" width="7.6923076923077" height="16" fill="rgb(124, 129, 134)"></rect> +<rect x="53.846153846154" width="7.6923076923077" height="16" fill="rgb(114, 184, 134)"></rect> +<rect x="61.538461538462" width="7.6923076923077" height="16" fill="rgb(138, 145, 153)"></rect> +<rect x="69.230769230769" width="7.6923076923077" height="16" fill="rgb(250, 141, 62)"></rect> +<rect x="76.923076923077" width="7.6923076923077" height="16" fill="rgb(255, 102, 102)"></rect> +<rect x="84.615384615385" width="7.6923076923077" height="16" fill="rgb(240, 113, 113)"></rect> +<rect x="92.307692307692" width="7.6923076923077" height="16" fill="rgb(255, 170, 51)"></rect> +<rect x="100.0" width="7.6923076923077" height="16" fill="rgb(85, 180, 212)"></rect> +<rect x="107.69230769231" width="7.6923076923077" height="16" fill="rgb(237, 147, 102)"></rect> +<rect x="115.38461538462" width="7.6923076923077" height="16" fill="rgb(242, 174, 73)"></rect> +<rect x="123.07692307692" width="7.6923076923077" height="16" fill="rgb(255, 119, 119)"></rect> +<rect x="130.76923076923" width="7.6923076923077" height="16" fill="rgb(255, 169, 77)"></rect> +<rect x="138.46153846154" width="7.6923076923077" height="16" fill="rgb(188, 188, 188)"></rect> +<rect x="146.15384615385" width="7.6923076923077" height="16" fill="rgb(188, 193, 198)"></rect> +<rect x="153.84615384615" width="7.6923076923077" height="16" fill="rgb(204, 204, 204)"></rect> +<rect x="161.53846153846" width="7.6923076923077" height="16" fill="rgb(147, 221, 250)"></rect> +<rect x="169.23076923077" width="7.6923076923077" height="16" fill="rgb(220, 220, 220)"></rect> +<rect x="176.92307692308" width="7.6923076923077" height="16" fill="rgb(236, 236, 236)"></rect> +<rect x="184.61538461538" width="7.6923076923077" height="16" fill="rgb(252, 252, 252)"></rect> +<rect x="192.30769230769" width="7.6923076923077" height="16" fill="rgb(255, 255, 255)"></rect> +</svg>
\ No newline at end of file diff --git a/previews/ayu-mirage.svg b/previews/ayu-mirage.svg new file mode 100644 index 0000000..def7694 --- /dev/null +++ b/previews/ayu-mirage.svg @@ -0,0 +1,30 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="16" shape-rendering="crispEdges"> +<rect x="0.0" width="7.1428571428571" height="16" fill="rgb(33, 38, 51)"></rect> +<rect x="7.1428571428571" width="7.1428571428571" height="16" fill="rgb(36, 41, 54)"></rect> +<rect x="14.285714285714" width="7.1428571428571" height="16" fill="rgb(49, 54, 67)"></rect> +<rect x="21.428571428571" width="7.1428571428571" height="16" fill="rgb(52, 52, 68)"></rect> +<rect x="28.571428571429" width="7.1428571428571" height="16" fill="rgb(72, 72, 79)"></rect> +<rect x="35.714285714286" width="7.1428571428571" height="16" fill="rgb(68, 73, 86)"></rect> +<rect x="42.857142857143" width="7.1428571428571" height="16" fill="rgb(82, 82, 89)"></rect> +<rect x="50.0" width="7.1428571428571" height="16" fill="rgb(221, 0, 51)"></rect> +<rect x="57.142857142857" width="7.1428571428571" height="16" fill="rgb(84, 89, 118)"></rect> +<rect x="64.285714285714" width="7.1428571428571" height="16" fill="rgb(92, 99, 112)"></rect> +<rect x="71.428571428571" width="7.1428571428571" height="16" fill="rgb(28, 124, 156)"></rect> +<rect x="78.571428571429" width="7.1428571428571" height="16" fill="rgb(131, 131, 143)"></rect> +<rect x="85.714285714286" width="7.1428571428571" height="16" fill="rgb(114, 184, 134)"></rect> +<rect x="92.857142857143" width="7.1428571428571" height="16" fill="rgb(255, 102, 102)"></rect> +<rect x="100.0" width="7.1428571428571" height="16" fill="rgb(240, 113, 113)"></rect> +<rect x="107.14285714286" width="7.1428571428571" height="16" fill="rgb(255, 169, 77)"></rect> +<rect x="114.28571428571" width="7.1428571428571" height="16" fill="rgb(242, 158, 116)"></rect> +<rect x="121.42857142857" width="7.1428571428571" height="16" fill="rgb(92, 207, 230)"></rect> +<rect x="128.57142857143" width="7.1428571428571" height="16" fill="rgb(255, 173, 102)"></rect> +<rect x="135.71428571429" width="7.1428571428571" height="16" fill="rgb(255, 204, 102)"></rect> +<rect x="142.85714285714" width="7.1428571428571" height="16" fill="rgb(255, 209, 115)"></rect> +<rect x="150.0" width="7.1428571428571" height="16" fill="rgb(188, 186, 207)"></rect> +<rect x="157.14285714286" width="7.1428571428571" height="16" fill="rgb(213, 255, 128)"></rect> +<rect x="164.28571428571" width="7.1428571428571" height="16" fill="rgb(204, 202, 194)"></rect> +<rect x="171.42857142857" width="7.1428571428571" height="16" fill="rgb(147, 221, 250)"></rect> +<rect x="178.57142857143" width="7.1428571428571" height="16" fill="rgb(184, 207, 230)"></rect> +<rect x="185.71428571429" width="7.1428571428571" height="16" fill="rgb(225, 225, 230)"></rect> +<rect x="192.85714285714" width="7.1428571428571" height="16" fill="rgb(255, 255, 255)"></rect> +</svg>
\ No newline at end of file diff --git a/previews/github-dark-dimmed.svg b/previews/github-dark-dimmed.svg index b68bb2c..8a689c0 100644 --- a/previews/github-dark-dimmed.svg +++ b/previews/github-dark-dimmed.svg @@ -1,12 +1,12 @@ -<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="16" shape-rendering="crispEdges"> -<rect x="0.0" width="20.0" height="16" fill="rgb(34, 39, 46)"></rect> -<rect x="20.0" width="20.0" height="16" fill="rgb(45, 51, 59)"></rect> -<rect x="40.0" width="20.0" height="16" fill="rgb(68, 76, 86)"></rect> -<rect x="60.0" width="20.0" height="16" fill="rgb(46, 76, 119)"></rect> -<rect x="80.0" width="20.0" height="16" fill="rgb(118, 131, 144)"></rect> -<rect x="100.0" width="20.0" height="16" fill="rgb(244, 112, 103)"></rect> -<rect x="120.0" width="20.0" height="16" fill="rgb(108, 182, 255)"></rect> -<rect x="140.0" width="20.0" height="16" fill="rgb(173, 186, 199)"></rect> -<rect x="160.0" width="20.0" height="16" fill="rgb(150, 208, 255)"></rect> -<rect x="180.0" width="20.0" height="16" fill="rgb(220, 189, 251)"></rect> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="16" shape-rendering="crispEdges"> +<rect x="0.0" width="20.0" height="16" fill="rgb(34, 39, 46)"></rect> +<rect x="20.0" width="20.0" height="16" fill="rgb(45, 51, 59)"></rect> +<rect x="40.0" width="20.0" height="16" fill="rgb(68, 76, 86)"></rect> +<rect x="60.0" width="20.0" height="16" fill="rgb(46, 76, 119)"></rect> +<rect x="80.0" width="20.0" height="16" fill="rgb(118, 131, 144)"></rect> +<rect x="100.0" width="20.0" height="16" fill="rgb(244, 112, 103)"></rect> +<rect x="120.0" width="20.0" height="16" fill="rgb(108, 182, 255)"></rect> +<rect x="140.0" width="20.0" height="16" fill="rgb(173, 186, 199)"></rect> +<rect x="160.0" width="20.0" height="16" fill="rgb(150, 208, 255)"></rect> +<rect x="180.0" width="20.0" height="16" fill="rgb(220, 189, 251)"></rect> </svg>
\ No newline at end of file diff --git a/scripts/make_preview_image.lua b/scripts/make_preview_image.lua index 6bcaac8..d1d48be 100755 --- a/scripts/make_preview_image.lua +++ b/scripts/make_preview_image.lua @@ -1,51 +1,50 @@ #!/usr/bin/lua -local filename = ... -local name = filename:match("([^\\/]+)%..*$") - - --- get colors -local text = io.open(filename):read("*a") -local colors = {} -for r, g, b in text:gmatch("#(%x%x)(%x%x)(%x%x)") do - r = tonumber(r, 16) - g = tonumber(g, 16) - b = tonumber(b, 16) - table.insert(colors, { r, g, b }) -end +for i, filename in ipairs({ ... }) do + local name = filename:match("([^\\/]+)%..*$") + + -- get colors + local text = io.open(filename):read("*a") + local colors = {} + for r, g, b in text:gmatch("#(%x%x)(%x%x)(%x%x)") do + r = tonumber(r, 16) + g = tonumber(g, 16) + b = tonumber(b, 16) + table.insert(colors, { r, g, b }) + end -table.sort(colors, function(a, b) - return a[1] + a[2] + a[3] < b[1] + b[2] + b[3] -end) + table.sort(colors, function(a, b) + return a[1] + a[2] + a[3] < b[1] + b[2] + b[3] + end) -local function eq(a, b) - return a[1] == b[1] and a[2] == b[2] and a[3] == b[3] -end - -local prev = {} -for i = #colors, 1, -1 do - if eq(colors[i], prev) then - table.remove(colors, i) - else - prev = colors[i] + local function eq(a, b) + return a[1] == b[1] and a[2] == b[2] and a[3] == b[3] end -end + local prev = {} + for i = #colors, 1, -1 do + if eq(colors[i], prev) then + table.remove(colors, i) + else + prev = colors[i] + end + end ---generate svg file -local w = 200 -local h = 16 -local fp = io.open("previews/" .. name .. ".svg", "wb") -fp:write('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="'..w..'" height="'..h..'" shape-rendering="crispEdges"> \n') + --generate svg file + local w = 200 + local h = 16 + local fp = io.open("previews/" .. name .. ".svg", "wb") -for i = 1, #colors do - local width = w/#colors - local r, g, b = table.unpack(colors[i]) - local rect = '<rect x="'..(i-1)*width..'" width="'..width..'" height="'..h..'" fill="rgb('..r..', '..g..', '..b..')"></rect> \n' - fp:write(rect) -end + fp:write('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="'..w..'" height="'..h..'" shape-rendering="crispEdges"> \n') -fp:write('</svg>') -fp:close() + for i = 1, #colors do + local width = w/#colors + local r, g, b = table.unpack(colors[i]) + local rect = '<rect x="'..(i-1)*width..'" width="'..width..'" height="'..h..'" fill="rgb('..r..', '..g..', '..b..')"></rect> \n' + fp:write(rect) + end + fp:write('</svg>') + fp:close() +end |