mirror of
https://github.com/RGBCube/Site
synced 2025-07-29 12:07:47 +00:00
dump: add dump
This commit is contained in:
parent
fae392d3af
commit
1a27c2d337
13 changed files with 247 additions and 64 deletions
115
deno.lock
generated
115
deno.lock
generated
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "4",
|
||||
"version": "5",
|
||||
"specifiers": {
|
||||
"jsr:@davidbonnet/astring@1.8.6": "1.8.6",
|
||||
"jsr:@luca/esbuild-deno-loader@0.11.1": "0.11.1",
|
||||
|
@ -223,31 +223,49 @@
|
|||
]
|
||||
},
|
||||
"@tailwindcss/oxide-android-arm64@4.1.7": {
|
||||
"integrity": "sha512-IWA410JZ8fF7kACus6BrUwY2Z1t1hm0+ZWNEzykKmMNM09wQooOcN/VXr0p/WJdtHZ90PvJf2AIBS/Ceqx1emg=="
|
||||
"integrity": "sha512-IWA410JZ8fF7kACus6BrUwY2Z1t1hm0+ZWNEzykKmMNM09wQooOcN/VXr0p/WJdtHZ90PvJf2AIBS/Ceqx1emg==",
|
||||
"os": ["android"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"@tailwindcss/oxide-darwin-arm64@4.1.7": {
|
||||
"integrity": "sha512-81jUw9To7fimGGkuJ2W5h3/oGonTOZKZ8C2ghm/TTxbwvfSiFSDPd6/A/KE2N7Jp4mv3Ps9OFqg2fEKgZFfsvg=="
|
||||
"integrity": "sha512-81jUw9To7fimGGkuJ2W5h3/oGonTOZKZ8C2ghm/TTxbwvfSiFSDPd6/A/KE2N7Jp4mv3Ps9OFqg2fEKgZFfsvg==",
|
||||
"os": ["darwin"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"@tailwindcss/oxide-darwin-x64@4.1.7": {
|
||||
"integrity": "sha512-q77rWjEyGHV4PdDBtrzO0tgBBPlQWKY7wZK0cUok/HaGgbNKecegNxCGikuPJn5wFAlIywC3v+WMBt0PEBtwGw=="
|
||||
"integrity": "sha512-q77rWjEyGHV4PdDBtrzO0tgBBPlQWKY7wZK0cUok/HaGgbNKecegNxCGikuPJn5wFAlIywC3v+WMBt0PEBtwGw==",
|
||||
"os": ["darwin"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"@tailwindcss/oxide-freebsd-x64@4.1.7": {
|
||||
"integrity": "sha512-RfmdbbK6G6ptgF4qqbzoxmH+PKfP4KSVs7SRlTwcbRgBwezJkAO3Qta/7gDy10Q2DcUVkKxFLXUQO6J3CRvBGw=="
|
||||
"integrity": "sha512-RfmdbbK6G6ptgF4qqbzoxmH+PKfP4KSVs7SRlTwcbRgBwezJkAO3Qta/7gDy10Q2DcUVkKxFLXUQO6J3CRvBGw==",
|
||||
"os": ["freebsd"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"@tailwindcss/oxide-linux-arm-gnueabihf@4.1.7": {
|
||||
"integrity": "sha512-OZqsGvpwOa13lVd1z6JVwQXadEobmesxQ4AxhrwRiPuE04quvZHWn/LnihMg7/XkN+dTioXp/VMu/p6A5eZP3g=="
|
||||
"integrity": "sha512-OZqsGvpwOa13lVd1z6JVwQXadEobmesxQ4AxhrwRiPuE04quvZHWn/LnihMg7/XkN+dTioXp/VMu/p6A5eZP3g==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["arm"]
|
||||
},
|
||||
"@tailwindcss/oxide-linux-arm64-gnu@4.1.7": {
|
||||
"integrity": "sha512-voMvBTnJSfKecJxGkoeAyW/2XRToLZ227LxswLAwKY7YslG/Xkw9/tJNH+3IVh5bdYzYE7DfiaPbRkSHFxY1xA=="
|
||||
"integrity": "sha512-voMvBTnJSfKecJxGkoeAyW/2XRToLZ227LxswLAwKY7YslG/Xkw9/tJNH+3IVh5bdYzYE7DfiaPbRkSHFxY1xA==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"@tailwindcss/oxide-linux-arm64-musl@4.1.7": {
|
||||
"integrity": "sha512-PjGuNNmJeKHnP58M7XyjJyla8LPo+RmwHQpBI+W/OxqrwojyuCQ+GUtygu7jUqTEexejZHr/z3nBc/gTiXBj4A=="
|
||||
"integrity": "sha512-PjGuNNmJeKHnP58M7XyjJyla8LPo+RmwHQpBI+W/OxqrwojyuCQ+GUtygu7jUqTEexejZHr/z3nBc/gTiXBj4A==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"@tailwindcss/oxide-linux-x64-gnu@4.1.7": {
|
||||
"integrity": "sha512-HMs+Va+ZR3gC3mLZE00gXxtBo3JoSQxtu9lobbZd+DmfkIxR54NO7Z+UQNPsa0P/ITn1TevtFxXTpsRU7qEvWg=="
|
||||
"integrity": "sha512-HMs+Va+ZR3gC3mLZE00gXxtBo3JoSQxtu9lobbZd+DmfkIxR54NO7Z+UQNPsa0P/ITn1TevtFxXTpsRU7qEvWg==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"@tailwindcss/oxide-linux-x64-musl@4.1.7": {
|
||||
"integrity": "sha512-MHZ6jyNlutdHH8rd+YTdr3QbXrHXqwIhHw9e7yXEBcQdluGwhpQY2Eku8UZK6ReLaWtQ4gijIv5QoM5eE+qlsA=="
|
||||
"integrity": "sha512-MHZ6jyNlutdHH8rd+YTdr3QbXrHXqwIhHw9e7yXEBcQdluGwhpQY2Eku8UZK6ReLaWtQ4gijIv5QoM5eE+qlsA==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"@tailwindcss/oxide-wasm32-wasi@4.1.7": {
|
||||
"integrity": "sha512-ANaSKt74ZRzE2TvJmUcbFQ8zS201cIPxUDm5qez5rLEwWkie2SkGtA4P+GPTj+u8N6JbPrC8MtY8RmJA35Oo+A==",
|
||||
|
@ -258,17 +276,26 @@
|
|||
"@napi-rs/wasm-runtime",
|
||||
"@tybys/wasm-util",
|
||||
"tslib"
|
||||
]
|
||||
],
|
||||
"cpu": ["wasm32"]
|
||||
},
|
||||
"@tailwindcss/oxide-win32-arm64-msvc@4.1.7": {
|
||||
"integrity": "sha512-HUiSiXQ9gLJBAPCMVRk2RT1ZrBjto7WvqsPBwUrNK2BcdSxMnk19h4pjZjI7zgPhDxlAbJSumTC4ljeA9y0tEw=="
|
||||
"integrity": "sha512-HUiSiXQ9gLJBAPCMVRk2RT1ZrBjto7WvqsPBwUrNK2BcdSxMnk19h4pjZjI7zgPhDxlAbJSumTC4ljeA9y0tEw==",
|
||||
"os": ["win32"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"@tailwindcss/oxide-win32-x64-msvc@4.1.7": {
|
||||
"integrity": "sha512-rYHGmvoHiLJ8hWucSfSOEmdCBIGZIq7SpkPRSqLsH2Ab2YUNgKeAPT1Fi2cx3+hnYOrAb0jp9cRyode3bBW4mQ=="
|
||||
"integrity": "sha512-rYHGmvoHiLJ8hWucSfSOEmdCBIGZIq7SpkPRSqLsH2Ab2YUNgKeAPT1Fi2cx3+hnYOrAb0jp9cRyode3bBW4mQ==",
|
||||
"os": ["win32"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"@tailwindcss/oxide@4.1.7": {
|
||||
"integrity": "sha512-5SF95Ctm9DFiUyjUPnDGkoKItPX/k+xifcQhcqX5RA85m50jw1pT/KzjdvlqxRja45Y52nR4MR9fD1JYd7f8NQ==",
|
||||
"dependencies": [
|
||||
"detect-libc",
|
||||
"tar"
|
||||
],
|
||||
"optionalDependencies": [
|
||||
"@tailwindcss/oxide-android-arm64",
|
||||
"@tailwindcss/oxide-darwin-arm64",
|
||||
"@tailwindcss/oxide-darwin-x64",
|
||||
|
@ -280,10 +307,9 @@
|
|||
"@tailwindcss/oxide-linux-x64-musl",
|
||||
"@tailwindcss/oxide-wasm32-wasi",
|
||||
"@tailwindcss/oxide-win32-arm64-msvc",
|
||||
"@tailwindcss/oxide-win32-x64-msvc",
|
||||
"detect-libc",
|
||||
"tar"
|
||||
]
|
||||
"@tailwindcss/oxide-win32-x64-msvc"
|
||||
],
|
||||
"scripts": true
|
||||
},
|
||||
"@tybys/wasm-util@0.9.0": {
|
||||
"integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==",
|
||||
|
@ -329,31 +355,48 @@
|
|||
"integrity": "sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w=="
|
||||
},
|
||||
"jiti@2.4.2": {
|
||||
"integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="
|
||||
"integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==",
|
||||
"bin": true
|
||||
},
|
||||
"lightningcss-darwin-arm64@1.30.1": {
|
||||
"integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="
|
||||
"integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==",
|
||||
"os": ["darwin"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"lightningcss-darwin-x64@1.30.1": {
|
||||
"integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="
|
||||
"integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==",
|
||||
"os": ["darwin"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"lightningcss-freebsd-x64@1.30.1": {
|
||||
"integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="
|
||||
"integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==",
|
||||
"os": ["freebsd"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"lightningcss-linux-arm-gnueabihf@1.30.1": {
|
||||
"integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="
|
||||
"integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["arm"]
|
||||
},
|
||||
"lightningcss-linux-arm64-gnu@1.30.1": {
|
||||
"integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="
|
||||
"integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"lightningcss-linux-arm64-musl@1.30.1": {
|
||||
"integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="
|
||||
"integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"lightningcss-linux-x64-gnu@1.30.1": {
|
||||
"integrity": "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="
|
||||
"integrity": "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"lightningcss-linux-x64-musl@1.30.1": {
|
||||
"integrity": "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="
|
||||
"integrity": "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==",
|
||||
"os": ["linux"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"lightningcss-wasm@1.30.1": {
|
||||
"integrity": "sha512-KJTnKEn0REV6DoJzxG0m5EKVEFA1CVE1isDYpXjsuqWXwLKFPJtA9Z9BSzPZJwAZFN2KaUzy+IWGP59p5bm2sA==",
|
||||
|
@ -362,15 +405,21 @@
|
|||
]
|
||||
},
|
||||
"lightningcss-win32-arm64-msvc@1.30.1": {
|
||||
"integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="
|
||||
"integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==",
|
||||
"os": ["win32"],
|
||||
"cpu": ["arm64"]
|
||||
},
|
||||
"lightningcss-win32-x64-msvc@1.30.1": {
|
||||
"integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="
|
||||
"integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==",
|
||||
"os": ["win32"],
|
||||
"cpu": ["x64"]
|
||||
},
|
||||
"lightningcss@1.30.1": {
|
||||
"integrity": "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==",
|
||||
"dependencies": [
|
||||
"detect-libc",
|
||||
"detect-libc"
|
||||
],
|
||||
"optionalDependencies": [
|
||||
"lightningcss-darwin-arm64",
|
||||
"lightningcss-darwin-x64",
|
||||
"lightningcss-freebsd-x64",
|
||||
|
@ -413,7 +462,8 @@
|
|||
"mdurl",
|
||||
"punycode.js",
|
||||
"uc.micro"
|
||||
]
|
||||
],
|
||||
"bin": true
|
||||
},
|
||||
"mdurl@2.0.0": {
|
||||
"integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w=="
|
||||
|
@ -431,7 +481,8 @@
|
|||
]
|
||||
},
|
||||
"mkdirp@3.0.1": {
|
||||
"integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg=="
|
||||
"integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==",
|
||||
"bin": true
|
||||
},
|
||||
"napi-wasm@1.1.3": {
|
||||
"integrity": "sha512-h/4nMGsHjZDCYmQVNODIrYACVJ+I9KItbG+0si6W/jSjdA9JbWDoU4LLeMXVcEQGHjttI2tuXqDrbGF7qkUHHg=="
|
||||
|
@ -698,6 +749,7 @@
|
|||
"https://deno.land/x/lume@v3.0.2/plugins/minify_html.ts": "f8a817bc43107389d0ce4ce9a048ced06c001407da34e9e2b8ef7a19db90c933",
|
||||
"https://deno.land/x/lume@v3.0.2/plugins/modify_urls.ts": "9c1b7cc856038d46b64f395065d2852f9b4af94ef9a41c2e9e3021d448b1d3b6",
|
||||
"https://deno.land/x/lume@v3.0.2/plugins/modules.ts": "4e177c0ffe972b9deef10db2bf0ae52b405418af4dbac03db9e7ffbd6a3ec6ae",
|
||||
"https://deno.land/x/lume@v3.0.2/plugins/nav.ts": "505b2140d35c992e05b471f34e7b9f38ddd1cd13d588eb9fb3622ce59592ccac",
|
||||
"https://deno.land/x/lume@v3.0.2/plugins/paginate.ts": "6a1a9a24d0fabed2f722a6a6f29d98559219c69475685034181816e82d367f2e",
|
||||
"https://deno.land/x/lume@v3.0.2/plugins/redirects.ts": "5ae50e20bc32b0e8836920148b25ea3ae057a209b62691a67471fa4a52e6507a",
|
||||
"https://deno.land/x/lume@v3.0.2/plugins/resolve_urls.ts": "910dbccd25fcacacc72d577a3df37c5f3cc4adce0ec52b2fc8903863c2e2afae",
|
||||
|
@ -737,6 +789,7 @@
|
|||
"https://deno.land/x/vento@v1.13.0/src/loader.ts": "d6033a30c127fe942190c887c0b6673366e54887079f3f0f73d8ba0aeca9176c",
|
||||
"https://deno.land/x/vento@v1.13.0/src/tokenizer.ts": "127ddad02054f63b8b646e4dfbf555e1e34e9b8dcbd58d86b3729a4de95abd27",
|
||||
"https://deno.land/x/vento@v1.13.0/src/transformer.ts": "9ff70c554b3889151745b5f7117bc5c02b889e6e16ca53e5b8c1fa6b767fb451",
|
||||
"https://deno.land/x/xml@6.0.4/_types.ts": "a7435282a7a775d80f8528aeec49996192c47fef8a8f616a1b216792424dc125",
|
||||
"https://deno.land/x/xml@6.0.4/mod.ts": "b59e5c0dd9fe7ed597c21c39aacf089aa82fe5c5eaad3f411a43a9c104359f4e",
|
||||
"https://deno.land/x/xml@6.0.4/parse.ts": "1302c75d8fd40df39310bb8ae6716302f0b77c61c607437dc023d3d792a0df54",
|
||||
"https://deno.land/x/xml@6.0.4/stringify.ts": "0e2f79798d413c5386bf5de90bbe9901f99951ceae484050a8ef89e2b4da9dd0",
|
||||
|
|
23
site.ts
23
site.ts
|
@ -1,16 +1,17 @@
|
|||
import lume from "lume/mod.ts";
|
||||
import extractDate from "lume/plugins/extract_date.ts";
|
||||
import codeHighlight from "lume/plugins/code_highlight.ts";
|
||||
import redirects from "lume/plugins/redirects.ts";
|
||||
import tailwindcss from "lume/plugins/tailwindcss.ts";
|
||||
import lightningcss from "lume/plugins/lightningcss.ts";
|
||||
import resolveUrls from "lume/plugins/resolve_urls.ts";
|
||||
import slugifyUrls from "lume/plugins/slugify_urls.ts";
|
||||
import checkUrls from "lume/plugins/check_urls.ts";
|
||||
import inline from "lume/plugins/inline.ts";
|
||||
import codeHighlight from "lume/plugins/code_highlight.ts";
|
||||
import extractDate from "lume/plugins/extract_date.ts";
|
||||
import feed from "lume/plugins/feed.ts";
|
||||
import inline from "lume/plugins/inline.ts";
|
||||
import lightningcss from "lume/plugins/lightningcss.ts";
|
||||
// import minifyHtml from "lume/plugins/minify_html.ts";
|
||||
import nav from "lume/plugins/nav.ts";
|
||||
import redirects from "lume/plugins/redirects.ts";
|
||||
import resolveUrls from "lume/plugins/resolve_urls.ts";
|
||||
import sitemap from "lume/plugins/sitemap.ts";
|
||||
import minifyHtml from "lume/plugins/minify_html.ts";
|
||||
import slugifyUrls from "lume/plugins/slugify_urls.ts";
|
||||
import tailwindcss from "lume/plugins/tailwindcss.ts";
|
||||
|
||||
const siteName = "RGBCube";
|
||||
const siteDescription =
|
||||
|
@ -173,10 +174,12 @@ site.use(checkUrls({
|
|||
throw: true,
|
||||
}));
|
||||
|
||||
site.use(nav());
|
||||
|
||||
site.use(feed({
|
||||
output: ["/blog.rss", "/blog.json"],
|
||||
|
||||
query: "type=article unlisted!=true",
|
||||
query: "url^=/blog/ url!=/blog/ unlisted!=true",
|
||||
sort: "date=asc",
|
||||
limit: Infinity,
|
||||
|
||||
|
|
19
site/404.vto
19
site/404.vto
|
@ -31,13 +31,14 @@ prevent_zoom: true
|
|||
<a class="size-[100%] bg-black hover:bg-[olive]" href={{ "/" |> url(true) }}></a>
|
||||
{{ /set }}
|
||||
|
||||
{{ set cube_face_front = cube_face }}
|
||||
{{ set cube_face_back = cube_face }}
|
||||
{{ set cube_face_left = cube_face }}
|
||||
{{ set cube_face_right = cube_face }}
|
||||
{{ set cube_face_top = cube_face }}
|
||||
{{ set cube_face_bottom = cube_face }}
|
||||
{{ include "cube.vto" {
|
||||
cube_face_front: cube_face,
|
||||
cube_face_back: cube_face,
|
||||
cube_face_left: cube_face,
|
||||
cube_face_right: cube_face,
|
||||
cube_face_top: cube_face,
|
||||
cube_face_bottom: cube_face,
|
||||
|
||||
{{ set cube_size = "5rem" }}
|
||||
{{ set cube_last = true }}
|
||||
{{ include "cube.vto" }}
|
||||
cube_size: "5rem",
|
||||
cube_last: true,
|
||||
} }}
|
||||
|
|
7
site/_includes/dump.vto
Normal file
7
site/_includes/dump.vto
Normal file
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
layout: text.vto
|
||||
---
|
||||
|
||||
{{ content }}
|
||||
|
||||
{{ include "map.vto" { url } }}
|
70
site/_includes/map.vto
Normal file
70
site/_includes/map.vto
Normal file
|
@ -0,0 +1,70 @@
|
|||
{{ function process(entry, toplevel = false) }}
|
||||
<div class="relative p-4{{ if !toplevel }} my-4 md:mx-8{{ /if }} border-1 bg-white dark:bg-black">
|
||||
{{ if entry.data.title }}
|
||||
<a
|
||||
class="
|
||||
reset
|
||||
|
||||
absolute inset-0
|
||||
p-4
|
||||
|
||||
bg-white hover:bg-[pink]
|
||||
dark:bg-black dark:hover:bg-[olive]
|
||||
|
||||
{{ if entry.data.url == url }}
|
||||
border-2 border-dashed border-black dark:border-white
|
||||
{{ /if }}
|
||||
"
|
||||
style="margin:0" href="{{ entry.data.url }}"
|
||||
>{{ entry.data.mapTitle ?? entry.data.title |> md }}</a>
|
||||
<div class="invisible">{{ entry.data.mapTitle ?? entry.data.title |> md }}</div>
|
||||
{{ else }}
|
||||
{{> const content = entry.data.basename.replace(/-/g, " ").replace(/\b\w/g, (char) => char.toUpperCase()) }}
|
||||
<p
|
||||
class="
|
||||
absolute inset-0
|
||||
p-4
|
||||
|
||||
bg-[repeating-linear-gradient(-45deg,transparent_0rem,transparent_1rem,#ddd_1rem,#ddd_2rem)]
|
||||
dark:bg-[repeating-linear-gradient(-45deg,transparent_0rem,transparent_1rem,#222_1rem,#222_2rem)]
|
||||
"
|
||||
style="
|
||||
margin:0;
|
||||
"
|
||||
>{{ content }}</p>
|
||||
<div class="invisible">{{ content }}</div>
|
||||
{{ /if }}
|
||||
|
||||
{{ if entry.children && entry.children.length > 0 }}
|
||||
<ul>
|
||||
{{ for child of entry.children }}
|
||||
<li class="reset">
|
||||
{{ process(child) }}
|
||||
</li>
|
||||
{{ /for }}
|
||||
</ul>
|
||||
{{ /if }}
|
||||
</div>
|
||||
{{ /function }}
|
||||
|
||||
{{> const sharedPrefix = (x, y) => {
|
||||
const length = Math.min(x.length, y.length);
|
||||
|
||||
let prefix = "";
|
||||
|
||||
for (let index = 0; index < length; index++) {
|
||||
if (x[index] === y[index]) {
|
||||
prefix += x[index];
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return prefix;
|
||||
} }}
|
||||
|
||||
{{> const anchorUrls = search.pages("mapAnchor=true").map((page) => page.url) }}
|
||||
{{> const shared = anchorUrls.map((anchorUrl) => sharedPrefix(anchorUrl, url)) }}
|
||||
{{> const longest = shared.reduce((longest, current) => current.length > longest.length ? current : longest) }}
|
||||
|
||||
{{ process(nav.menu(longest), toplevel = true) }}
|
|
@ -24,6 +24,7 @@ layout: default.vto
|
|||
<a class="{{ style }}" href="/">home</a>
|
||||
<a class="{{ style }}" href="/about/">about</a>
|
||||
<a class="{{ style }}" href="/blog/">blog</a>
|
||||
<a class="{{ style }}" href="/dump/">dump</a>
|
||||
<a class="{{ style }}" href="/contact/">contact</a>
|
||||
</div>
|
||||
</nav>
|
||||
|
@ -35,14 +36,15 @@ layout: default.vto
|
|||
<ol id="footnotes"></ol>
|
||||
</div>
|
||||
|
||||
<footer class="flex justify-center text-sm wrap-anywhere mt-auto p-1.5 pb-2 border-t-4 border-x-4">
|
||||
<footer class="flex justify-center text-sm wrap-anywhere mt-auto p-1.5 pb-2 border-t-4 border-x-4 border-black dark:border-white">
|
||||
Copyright © {{ Temporal.Now.plainDateISO().year }}
|
||||
|
||||
<a draggable="false" class="flex items-center pl-2" href="/" alt="RGBCube">
|
||||
{{ set cube_size = "0.75rem" }}
|
||||
{{ set cube_small = true }}
|
||||
{{ set cube_last = true }}
|
||||
{{ include "rgbcube.vto" }}
|
||||
{{ include "rgbcube.vto" {
|
||||
cube_size: "0.75rem",
|
||||
cube_small: true,
|
||||
cube_last: true,
|
||||
} }}
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
|
|
|
@ -164,7 +164,7 @@ html, body {
|
|||
}
|
||||
}
|
||||
|
||||
a {
|
||||
a:not(.reset) {
|
||||
@apply m-0;
|
||||
|
||||
* {
|
||||
|
@ -256,7 +256,7 @@ html, body {
|
|||
}
|
||||
}
|
||||
|
||||
li {
|
||||
li:not(.reset) {
|
||||
@apply relative pl-4;
|
||||
|
||||
ul &::before {
|
||||
|
|
|
@ -18,13 +18,13 @@ Blog Articles
|
|||
|
||||
<style>ul * { overflow-wrap:anywhere !important; }</style>
|
||||
<ul>
|
||||
{{ for article of search.pages("type=article unlisted!=true", "order=asc date=desc")}}
|
||||
{{ for entry of search.pages("url^=/blog/ unlisted!=true", "order=asc date=desc")}}
|
||||
<li class="flex">
|
||||
<a id="matrix" class="text-right font-mono" style="margin-right:calc(var(--spacing)*2)" href="{{ article.url }}">
|
||||
{{ article.date.toISOString().slice(2, 10).replaceAll("-", " ") }}
|
||||
<a id="matrix" class="text-right font-mono" style="margin-right:calc(var(--spacing)*2)" href="{{ entry.url }}">
|
||||
{{ entry.date.toISOString().slice(2, 10).replaceAll("-", " ") }}
|
||||
</a>
|
||||
|
||||
{{ article.title |> md }}
|
||||
{{ entry.title |> md }}
|
||||
</li>
|
||||
{{ /for }}
|
||||
</ul>
|
||||
|
|
|
@ -2,5 +2,6 @@ export default {
|
|||
layout: "text.vto",
|
||||
type: "article",
|
||||
|
||||
title: null,
|
||||
description: null,
|
||||
};
|
||||
|
|
12
site/dump.vto
Normal file
12
site/dump.vto
Normal file
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
layout: dump.vto
|
||||
title: D U M P
|
||||
mapTitle: RAMBLINGS OF A MADMAN
|
||||
mapAnchor: true
|
||||
---
|
||||
|
||||
<h1>Info and Thought Dumps</h1>
|
||||
|
||||
<p>Here is where I store all my random thoughts and grievences, and perhaps the nice stuff I encounter.</p>
|
||||
|
||||
<p>Nothing here is blog-post tier good, so do not expect very high quality.</p>
|
7
site/dump/_data.ts
Normal file
7
site/dump/_data.ts
Normal file
|
@ -0,0 +1,7 @@
|
|||
export default {
|
||||
layout: "dump.vto",
|
||||
type: "article",
|
||||
|
||||
title: null,
|
||||
description: null,
|
||||
};
|
22
site/dump/go/iterators.md
Normal file
22
site/dump/go/iterators.md
Normal file
|
@ -0,0 +1,22 @@
|
|||
---
|
||||
title: Go's iterators suit the moronic language
|
||||
date: 2025-06-07
|
||||
---
|
||||
|
||||
Just had to deal with Go iterators and I can say that they fit the language
|
||||
well.
|
||||
|
||||
They're push iterators. It's as if you're just appending items to an array.
|
||||
Actually much easier to explain.
|
||||
|
||||
They compile down to nonlocal returns to try to keep it fast, but of course it's
|
||||
still slower than a state machine. The case for every single thing in Go really.
|
||||
|
||||
And when you know slightly more than a single lick of programming, the design
|
||||
and implementation of them looks very obviously moronic and catered to
|
||||
beginners.
|
||||
|
||||
Some people were arguing that this approach makes it more "functional" but
|
||||
that's very far from the truth. Push iterators are very imperative, pull
|
||||
iterators (`Iterator::next`, which returns `Option<T>`) are actual functional,
|
||||
correct and fast way to do it.
|
|
@ -29,6 +29,10 @@ prevent_zoom: true
|
|||
<a draggable="false" class="{{ style }}" href="/about/">about</a>
|
||||
{{ /set }}
|
||||
|
||||
{{ set cube_face_back }}
|
||||
<a draggable="false" class="{{ style }}" href="/dump/">dump</a>
|
||||
{{ /set }}
|
||||
|
||||
{{ set cube_face_top }}
|
||||
<a draggable="false" class="{{ style }}" href="https://github.com/RGBCube">github</a>
|
||||
{{ /set }}
|
||||
|
@ -41,6 +45,7 @@ prevent_zoom: true
|
|||
<a draggable="false" class="{{ style }}" href="/blog/">blog</a>
|
||||
{{ /set }}
|
||||
|
||||
{{ set cube_size = "5rem" }}
|
||||
{{ set cube_last = true }}
|
||||
{{ include "rgbcube.vto" }}
|
||||
{{ include "rgbcube.vto" {
|
||||
cube_size: "5rem",
|
||||
cube_last: true,
|
||||
} }}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue