forked from remote/pelican
Compare commits
1 commit
| Author | SHA1 | Date | |
|---|---|---|---|
| 864410bb0d |
21 changed files with 125 additions and 1640 deletions
|
|
@ -19,12 +19,6 @@ keep it useful for others. Amongst other things, I:
|
|||
Adapt Pelican's `publishconf.py` for local development.
|
||||
E.g. `RELATIVE_URLS = False`
|
||||
|
||||
### Install Tailwind 3 (for now)
|
||||
|
||||
```shell
|
||||
npm install -D tailwindcss@3
|
||||
```
|
||||
|
||||
### Install Tailwind CSS Typography plugin
|
||||
|
||||
Typography enables sane defaults for longer texts. In this case, we use it for
|
||||
|
|
|
|||
12
package-lock.json
generated
12
package-lock.json
generated
|
|
@ -6,7 +6,7 @@
|
|||
"": {
|
||||
"devDependencies": {
|
||||
"@tailwindcss/typography": "^0.5.15",
|
||||
"tailwindcss": "^3.4.19"
|
||||
"tailwindcss": "^3.4.17"
|
||||
}
|
||||
},
|
||||
"node_modules/@alloc/quick-lru": {
|
||||
|
|
@ -1324,9 +1324,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/tailwindcss": {
|
||||
"version": "3.4.19",
|
||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.19.tgz",
|
||||
"integrity": "sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==",
|
||||
"version": "3.4.17",
|
||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.17.tgz",
|
||||
"integrity": "sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
|
|
@ -1338,7 +1338,7 @@
|
|||
"fast-glob": "^3.3.2",
|
||||
"glob-parent": "^6.0.2",
|
||||
"is-glob": "^4.0.3",
|
||||
"jiti": "^1.21.7",
|
||||
"jiti": "^1.21.6",
|
||||
"lilconfig": "^3.1.3",
|
||||
"micromatch": "^4.0.8",
|
||||
"normalize-path": "^3.0.0",
|
||||
|
|
@ -1347,7 +1347,7 @@
|
|||
"postcss": "^8.4.47",
|
||||
"postcss-import": "^15.1.0",
|
||||
"postcss-js": "^4.0.1",
|
||||
"postcss-load-config": "^4.0.2 || ^5.0 || ^6.0",
|
||||
"postcss-load-config": "^4.0.2",
|
||||
"postcss-nested": "^6.2.0",
|
||||
"postcss-selector-parser": "^6.1.2",
|
||||
"resolve": "^1.22.8",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"devDependencies": {
|
||||
"@tailwindcss/typography": "^0.5.15",
|
||||
"tailwindcss": "^3.4.19"
|
||||
"@tailwindcss/typography": "^0.5.16",
|
||||
"tailwindcss": "^4.0"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
624
pnpm-lock.yaml
generated
624
pnpm-lock.yaml
generated
|
|
@ -1,624 +0,0 @@
|
|||
lockfileVersion: '9.0'
|
||||
|
||||
settings:
|
||||
autoInstallPeers: true
|
||||
excludeLinksFromLockfile: false
|
||||
|
||||
importers:
|
||||
|
||||
.:
|
||||
devDependencies:
|
||||
'@tailwindcss/typography':
|
||||
specifier: ^0.5.15
|
||||
version: 0.5.20(tailwindcss@3.4.19)
|
||||
tailwindcss:
|
||||
specifier: ^3.4.19
|
||||
version: 3.4.19
|
||||
|
||||
packages:
|
||||
|
||||
'@alloc/quick-lru@5.2.0':
|
||||
resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
|
||||
engines: {node: '>=10'}
|
||||
|
||||
'@jridgewell/gen-mapping@0.3.13':
|
||||
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
|
||||
|
||||
'@jridgewell/resolve-uri@3.1.2':
|
||||
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
|
||||
engines: {node: '>=6.0.0'}
|
||||
|
||||
'@jridgewell/sourcemap-codec@1.5.5':
|
||||
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
|
||||
|
||||
'@jridgewell/trace-mapping@0.3.31':
|
||||
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
|
||||
|
||||
'@nodelib/fs.scandir@2.1.5':
|
||||
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
|
||||
engines: {node: '>= 8'}
|
||||
|
||||
'@nodelib/fs.stat@2.0.5':
|
||||
resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
|
||||
engines: {node: '>= 8'}
|
||||
|
||||
'@nodelib/fs.walk@1.2.8':
|
||||
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
|
||||
engines: {node: '>= 8'}
|
||||
|
||||
'@tailwindcss/typography@0.5.20':
|
||||
resolution: {integrity: sha512-hwbzQuNUfcPvbegQFatVPl/MY/tcM9KLl963hQ5laJKPh81TEZ1+dNG9PirGvcaDBkp+BCshExAyKVPW91dozw==}
|
||||
peerDependencies:
|
||||
tailwindcss: '>=3.0.0 || >=4.0.0 || insiders'
|
||||
|
||||
any-promise@1.3.0:
|
||||
resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
|
||||
|
||||
anymatch@3.1.3:
|
||||
resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
|
||||
engines: {node: '>= 8'}
|
||||
|
||||
arg@5.0.2:
|
||||
resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
|
||||
|
||||
binary-extensions@2.3.0:
|
||||
resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
|
||||
engines: {node: '>=8'}
|
||||
|
||||
braces@3.0.3:
|
||||
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
|
||||
engines: {node: '>=8'}
|
||||
|
||||
camelcase-css@2.0.1:
|
||||
resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
chokidar@3.6.0:
|
||||
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
|
||||
engines: {node: '>= 8.10.0'}
|
||||
|
||||
commander@4.1.1:
|
||||
resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
cssesc@3.0.0:
|
||||
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
|
||||
engines: {node: '>=4'}
|
||||
hasBin: true
|
||||
|
||||
didyoumean@1.2.2:
|
||||
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
|
||||
|
||||
dlv@1.1.3:
|
||||
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
|
||||
|
||||
es-errors@1.3.0:
|
||||
resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
||||
fast-glob@3.3.3:
|
||||
resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
|
||||
engines: {node: '>=8.6.0'}
|
||||
|
||||
fastq@1.20.1:
|
||||
resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==}
|
||||
|
||||
fdir@6.5.0:
|
||||
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
|
||||
engines: {node: '>=12.0.0'}
|
||||
peerDependencies:
|
||||
picomatch: ^3 || ^4
|
||||
peerDependenciesMeta:
|
||||
picomatch:
|
||||
optional: true
|
||||
|
||||
fill-range@7.1.1:
|
||||
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
|
||||
engines: {node: '>=8'}
|
||||
|
||||
fsevents@2.3.3:
|
||||
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
|
||||
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
|
||||
os: [darwin]
|
||||
|
||||
function-bind@1.1.2:
|
||||
resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
|
||||
|
||||
glob-parent@5.1.2:
|
||||
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
glob-parent@6.0.2:
|
||||
resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
|
||||
engines: {node: '>=10.13.0'}
|
||||
|
||||
hasown@2.0.4:
|
||||
resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
||||
is-binary-path@2.1.0:
|
||||
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
|
||||
engines: {node: '>=8'}
|
||||
|
||||
is-core-module@2.16.2:
|
||||
resolution: {integrity: sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
||||
is-extglob@2.1.1:
|
||||
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
is-glob@4.0.3:
|
||||
resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
is-number@7.0.0:
|
||||
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
|
||||
engines: {node: '>=0.12.0'}
|
||||
|
||||
jiti@1.21.7:
|
||||
resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==}
|
||||
hasBin: true
|
||||
|
||||
lilconfig@3.1.3:
|
||||
resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
|
||||
engines: {node: '>=14'}
|
||||
|
||||
lines-and-columns@1.2.4:
|
||||
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
|
||||
|
||||
merge2@1.4.1:
|
||||
resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
|
||||
engines: {node: '>= 8'}
|
||||
|
||||
micromatch@4.0.8:
|
||||
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
|
||||
engines: {node: '>=8.6'}
|
||||
|
||||
mz@2.7.0:
|
||||
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
|
||||
|
||||
nanoid@3.3.13:
|
||||
resolution: {integrity: sha512-sPdqC6ByMVVGvF1ynvvMo0/o+oD1VX7DaHhijt1bFgjvBkHBib4t49GoNDhf2NDta4oeUNlaGbSt5K7qjZ955Q==}
|
||||
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
|
||||
hasBin: true
|
||||
|
||||
normalize-path@3.0.0:
|
||||
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
object-assign@4.1.1:
|
||||
resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
object-hash@3.0.0:
|
||||
resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
path-parse@1.0.7:
|
||||
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
|
||||
|
||||
picocolors@1.1.1:
|
||||
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
|
||||
|
||||
picomatch@2.3.2:
|
||||
resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==}
|
||||
engines: {node: '>=8.6'}
|
||||
|
||||
picomatch@4.0.4:
|
||||
resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==}
|
||||
engines: {node: '>=12'}
|
||||
|
||||
pify@2.3.0:
|
||||
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
pirates@4.0.7:
|
||||
resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
postcss-import@15.1.0:
|
||||
resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
peerDependencies:
|
||||
postcss: ^8.0.0
|
||||
|
||||
postcss-js@4.1.0:
|
||||
resolution: {integrity: sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==}
|
||||
engines: {node: ^12 || ^14 || >= 16}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.21
|
||||
|
||||
postcss-load-config@6.0.1:
|
||||
resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
jiti: '>=1.21.0'
|
||||
postcss: '>=8.0.9'
|
||||
tsx: ^4.8.1
|
||||
yaml: ^2.4.2
|
||||
peerDependenciesMeta:
|
||||
jiti:
|
||||
optional: true
|
||||
postcss:
|
||||
optional: true
|
||||
tsx:
|
||||
optional: true
|
||||
yaml:
|
||||
optional: true
|
||||
|
||||
postcss-nested@6.2.0:
|
||||
resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
|
||||
engines: {node: '>=12.0'}
|
||||
peerDependencies:
|
||||
postcss: ^8.2.14
|
||||
|
||||
postcss-selector-parser@6.0.10:
|
||||
resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
postcss-selector-parser@6.1.4:
|
||||
resolution: {integrity: sha512-bIoJLOmjCO1S9XdY/DcnR5hJxvrDir1PbGChrzXG3vw0/FOliy/fA3dmdhQ441kah4gKv+TwckGzex6wNS5cnQ==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
postcss-value-parser@4.2.0:
|
||||
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
|
||||
|
||||
postcss@8.5.15:
|
||||
resolution: {integrity: sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==}
|
||||
engines: {node: ^10 || ^12 || >=14}
|
||||
|
||||
queue-microtask@1.2.3:
|
||||
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
|
||||
|
||||
read-cache@1.0.0:
|
||||
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
|
||||
|
||||
readdirp@3.6.0:
|
||||
resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
|
||||
engines: {node: '>=8.10.0'}
|
||||
|
||||
resolve@1.22.12:
|
||||
resolution: {integrity: sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==}
|
||||
engines: {node: '>= 0.4'}
|
||||
hasBin: true
|
||||
|
||||
reusify@1.1.0:
|
||||
resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
|
||||
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
|
||||
|
||||
run-parallel@1.2.0:
|
||||
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
|
||||
|
||||
source-map-js@1.2.1:
|
||||
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
sucrase@3.35.1:
|
||||
resolution: {integrity: sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==}
|
||||
engines: {node: '>=16 || 14 >=14.17'}
|
||||
hasBin: true
|
||||
|
||||
supports-preserve-symlinks-flag@1.0.0:
|
||||
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
||||
tailwindcss@3.4.19:
|
||||
resolution: {integrity: sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
hasBin: true
|
||||
|
||||
thenify-all@1.6.0:
|
||||
resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
|
||||
engines: {node: '>=0.8'}
|
||||
|
||||
thenify@3.3.1:
|
||||
resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
|
||||
|
||||
tinyglobby@0.2.17:
|
||||
resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==}
|
||||
engines: {node: '>=12.0.0'}
|
||||
|
||||
to-regex-range@5.0.1:
|
||||
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
|
||||
engines: {node: '>=8.0'}
|
||||
|
||||
ts-interface-checker@0.1.13:
|
||||
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
|
||||
|
||||
util-deprecate@1.0.2:
|
||||
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
|
||||
|
||||
snapshots:
|
||||
|
||||
'@alloc/quick-lru@5.2.0': {}
|
||||
|
||||
'@jridgewell/gen-mapping@0.3.13':
|
||||
dependencies:
|
||||
'@jridgewell/sourcemap-codec': 1.5.5
|
||||
'@jridgewell/trace-mapping': 0.3.31
|
||||
|
||||
'@jridgewell/resolve-uri@3.1.2': {}
|
||||
|
||||
'@jridgewell/sourcemap-codec@1.5.5': {}
|
||||
|
||||
'@jridgewell/trace-mapping@0.3.31':
|
||||
dependencies:
|
||||
'@jridgewell/resolve-uri': 3.1.2
|
||||
'@jridgewell/sourcemap-codec': 1.5.5
|
||||
|
||||
'@nodelib/fs.scandir@2.1.5':
|
||||
dependencies:
|
||||
'@nodelib/fs.stat': 2.0.5
|
||||
run-parallel: 1.2.0
|
||||
|
||||
'@nodelib/fs.stat@2.0.5': {}
|
||||
|
||||
'@nodelib/fs.walk@1.2.8':
|
||||
dependencies:
|
||||
'@nodelib/fs.scandir': 2.1.5
|
||||
fastq: 1.20.1
|
||||
|
||||
'@tailwindcss/typography@0.5.20(tailwindcss@3.4.19)':
|
||||
dependencies:
|
||||
postcss-selector-parser: 6.0.10
|
||||
tailwindcss: 3.4.19
|
||||
|
||||
any-promise@1.3.0: {}
|
||||
|
||||
anymatch@3.1.3:
|
||||
dependencies:
|
||||
normalize-path: 3.0.0
|
||||
picomatch: 2.3.2
|
||||
|
||||
arg@5.0.2: {}
|
||||
|
||||
binary-extensions@2.3.0: {}
|
||||
|
||||
braces@3.0.3:
|
||||
dependencies:
|
||||
fill-range: 7.1.1
|
||||
|
||||
camelcase-css@2.0.1: {}
|
||||
|
||||
chokidar@3.6.0:
|
||||
dependencies:
|
||||
anymatch: 3.1.3
|
||||
braces: 3.0.3
|
||||
glob-parent: 5.1.2
|
||||
is-binary-path: 2.1.0
|
||||
is-glob: 4.0.3
|
||||
normalize-path: 3.0.0
|
||||
readdirp: 3.6.0
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.3
|
||||
|
||||
commander@4.1.1: {}
|
||||
|
||||
cssesc@3.0.0: {}
|
||||
|
||||
didyoumean@1.2.2: {}
|
||||
|
||||
dlv@1.1.3: {}
|
||||
|
||||
es-errors@1.3.0: {}
|
||||
|
||||
fast-glob@3.3.3:
|
||||
dependencies:
|
||||
'@nodelib/fs.stat': 2.0.5
|
||||
'@nodelib/fs.walk': 1.2.8
|
||||
glob-parent: 5.1.2
|
||||
merge2: 1.4.1
|
||||
micromatch: 4.0.8
|
||||
|
||||
fastq@1.20.1:
|
||||
dependencies:
|
||||
reusify: 1.1.0
|
||||
|
||||
fdir@6.5.0(picomatch@4.0.4):
|
||||
optionalDependencies:
|
||||
picomatch: 4.0.4
|
||||
|
||||
fill-range@7.1.1:
|
||||
dependencies:
|
||||
to-regex-range: 5.0.1
|
||||
|
||||
fsevents@2.3.3:
|
||||
optional: true
|
||||
|
||||
function-bind@1.1.2: {}
|
||||
|
||||
glob-parent@5.1.2:
|
||||
dependencies:
|
||||
is-glob: 4.0.3
|
||||
|
||||
glob-parent@6.0.2:
|
||||
dependencies:
|
||||
is-glob: 4.0.3
|
||||
|
||||
hasown@2.0.4:
|
||||
dependencies:
|
||||
function-bind: 1.1.2
|
||||
|
||||
is-binary-path@2.1.0:
|
||||
dependencies:
|
||||
binary-extensions: 2.3.0
|
||||
|
||||
is-core-module@2.16.2:
|
||||
dependencies:
|
||||
hasown: 2.0.4
|
||||
|
||||
is-extglob@2.1.1: {}
|
||||
|
||||
is-glob@4.0.3:
|
||||
dependencies:
|
||||
is-extglob: 2.1.1
|
||||
|
||||
is-number@7.0.0: {}
|
||||
|
||||
jiti@1.21.7: {}
|
||||
|
||||
lilconfig@3.1.3: {}
|
||||
|
||||
lines-and-columns@1.2.4: {}
|
||||
|
||||
merge2@1.4.1: {}
|
||||
|
||||
micromatch@4.0.8:
|
||||
dependencies:
|
||||
braces: 3.0.3
|
||||
picomatch: 2.3.2
|
||||
|
||||
mz@2.7.0:
|
||||
dependencies:
|
||||
any-promise: 1.3.0
|
||||
object-assign: 4.1.1
|
||||
thenify-all: 1.6.0
|
||||
|
||||
nanoid@3.3.13: {}
|
||||
|
||||
normalize-path@3.0.0: {}
|
||||
|
||||
object-assign@4.1.1: {}
|
||||
|
||||
object-hash@3.0.0: {}
|
||||
|
||||
path-parse@1.0.7: {}
|
||||
|
||||
picocolors@1.1.1: {}
|
||||
|
||||
picomatch@2.3.2: {}
|
||||
|
||||
picomatch@4.0.4: {}
|
||||
|
||||
pify@2.3.0: {}
|
||||
|
||||
pirates@4.0.7: {}
|
||||
|
||||
postcss-import@15.1.0(postcss@8.5.15):
|
||||
dependencies:
|
||||
postcss: 8.5.15
|
||||
postcss-value-parser: 4.2.0
|
||||
read-cache: 1.0.0
|
||||
resolve: 1.22.12
|
||||
|
||||
postcss-js@4.1.0(postcss@8.5.15):
|
||||
dependencies:
|
||||
camelcase-css: 2.0.1
|
||||
postcss: 8.5.15
|
||||
|
||||
postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.15):
|
||||
dependencies:
|
||||
lilconfig: 3.1.3
|
||||
optionalDependencies:
|
||||
jiti: 1.21.7
|
||||
postcss: 8.5.15
|
||||
|
||||
postcss-nested@6.2.0(postcss@8.5.15):
|
||||
dependencies:
|
||||
postcss: 8.5.15
|
||||
postcss-selector-parser: 6.1.4
|
||||
|
||||
postcss-selector-parser@6.0.10:
|
||||
dependencies:
|
||||
cssesc: 3.0.0
|
||||
util-deprecate: 1.0.2
|
||||
|
||||
postcss-selector-parser@6.1.4:
|
||||
dependencies:
|
||||
cssesc: 3.0.0
|
||||
util-deprecate: 1.0.2
|
||||
|
||||
postcss-value-parser@4.2.0: {}
|
||||
|
||||
postcss@8.5.15:
|
||||
dependencies:
|
||||
nanoid: 3.3.13
|
||||
picocolors: 1.1.1
|
||||
source-map-js: 1.2.1
|
||||
|
||||
queue-microtask@1.2.3: {}
|
||||
|
||||
read-cache@1.0.0:
|
||||
dependencies:
|
||||
pify: 2.3.0
|
||||
|
||||
readdirp@3.6.0:
|
||||
dependencies:
|
||||
picomatch: 2.3.2
|
||||
|
||||
resolve@1.22.12:
|
||||
dependencies:
|
||||
es-errors: 1.3.0
|
||||
is-core-module: 2.16.2
|
||||
path-parse: 1.0.7
|
||||
supports-preserve-symlinks-flag: 1.0.0
|
||||
|
||||
reusify@1.1.0: {}
|
||||
|
||||
run-parallel@1.2.0:
|
||||
dependencies:
|
||||
queue-microtask: 1.2.3
|
||||
|
||||
source-map-js@1.2.1: {}
|
||||
|
||||
sucrase@3.35.1:
|
||||
dependencies:
|
||||
'@jridgewell/gen-mapping': 0.3.13
|
||||
commander: 4.1.1
|
||||
lines-and-columns: 1.2.4
|
||||
mz: 2.7.0
|
||||
pirates: 4.0.7
|
||||
tinyglobby: 0.2.17
|
||||
ts-interface-checker: 0.1.13
|
||||
|
||||
supports-preserve-symlinks-flag@1.0.0: {}
|
||||
|
||||
tailwindcss@3.4.19:
|
||||
dependencies:
|
||||
'@alloc/quick-lru': 5.2.0
|
||||
arg: 5.0.2
|
||||
chokidar: 3.6.0
|
||||
didyoumean: 1.2.2
|
||||
dlv: 1.1.3
|
||||
fast-glob: 3.3.3
|
||||
glob-parent: 6.0.2
|
||||
is-glob: 4.0.3
|
||||
jiti: 1.21.7
|
||||
lilconfig: 3.1.3
|
||||
micromatch: 4.0.8
|
||||
normalize-path: 3.0.0
|
||||
object-hash: 3.0.0
|
||||
picocolors: 1.1.1
|
||||
postcss: 8.5.15
|
||||
postcss-import: 15.1.0(postcss@8.5.15)
|
||||
postcss-js: 4.1.0(postcss@8.5.15)
|
||||
postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.15)
|
||||
postcss-nested: 6.2.0(postcss@8.5.15)
|
||||
postcss-selector-parser: 6.1.4
|
||||
resolve: 1.22.12
|
||||
sucrase: 3.35.1
|
||||
transitivePeerDependencies:
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
thenify-all@1.6.0:
|
||||
dependencies:
|
||||
thenify: 3.3.1
|
||||
|
||||
thenify@3.3.1:
|
||||
dependencies:
|
||||
any-promise: 1.3.0
|
||||
|
||||
tinyglobby@0.2.17:
|
||||
dependencies:
|
||||
fdir: 6.5.0(picomatch@4.0.4)
|
||||
picomatch: 4.0.4
|
||||
|
||||
to-regex-range@5.0.1:
|
||||
dependencies:
|
||||
is-number: 7.0.0
|
||||
|
||||
ts-interface-checker@0.1.13: {}
|
||||
|
||||
util-deprecate@1.0.2: {}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
@tailwind base; /* Preflight is injected here */
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
@import "tailwindcss"; /* Preflight is injected here */
|
||||
@plugin "@tailwindcss/typography";
|
||||
@config "../../tailwind.config.js";
|
||||
|
||||
@layer base {
|
||||
@font-face {
|
||||
|
|
@ -52,60 +52,13 @@
|
|||
ul {
|
||||
@apply pl-4 list-disc;
|
||||
}
|
||||
|
||||
/* pelican tag_cloud */
|
||||
ul.tagcloud {
|
||||
@apply list-none p-0;
|
||||
}
|
||||
ul.tagcloud li {
|
||||
@apply inline-block p-1;
|
||||
}
|
||||
}
|
||||
|
||||
@layer components {
|
||||
/*This does not seem to affect prismjs which is good*/
|
||||
code:not(pre code) {
|
||||
@apply px-0.5 bg-rp-dawn-highlight-med dark:bg-rp-moon-highlight-med;
|
||||
code {
|
||||
@apply bg-rp-dawn-highlight-low dark:bg-rp-moon-highlight-low;
|
||||
}
|
||||
.badge {
|
||||
@apply inline-block px-1.5 py-0.5 text-xs font-mono font-semibold bg-rp-dawn-highlight-low dark:bg-rp-moon-highlight-med text-rp-dawn-gold dark:text-rp-moon-gold align-middle ml-1;
|
||||
}
|
||||
.badge a {
|
||||
@apply no-underline hover:no-underline;
|
||||
}
|
||||
/* copy-to-clipboard button, positioned inside the code block.
|
||||
NOTE: Pelican's fenced_code puts language-* on <code>, not <pre>,
|
||||
so we target pre that contains a language-* code element. */
|
||||
pre:has(code[class*="language-"]) {
|
||||
@apply relative;
|
||||
}
|
||||
.copy-to-clipboard-button {
|
||||
@apply absolute top-2 right-2 font-mono rounded bg-rp-dawn-highlight-med px-2 py-0.5 text-xs text-rp-dawn-text
|
||||
opacity-0
|
||||
hover:bg-rp-dawn-highlight-high hover:z-50
|
||||
dark:bg-rp-moon-highlight-med dark:text-rp-moon-text dark:hover:bg-rp-moon-highlight-high;
|
||||
}
|
||||
pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
||||
@apply opacity-100 z-50;
|
||||
}
|
||||
}
|
||||
|
||||
/*Hide heading anchor links unless hovering over them*/
|
||||
.headerlink {
|
||||
/*@apply no-underline text-rp-dawn-love ml-1 md:ml-2 hover:no-underline;*/
|
||||
@apply no-underline text-rp-dawn-love ml-1 md:ml-2 hover:no-underline opacity-0 transition-opacity duration-150;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h1:hover .headerlink,
|
||||
h2:hover .headerlink,
|
||||
h3:hover .headerlink,
|
||||
h4:hover .headerlink,
|
||||
h5:hover .headerlink,
|
||||
h6:hover .headerlink,
|
||||
.headerlink:focus-visible {
|
||||
@apply opacity-100;
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.note {
|
||||
|
|
@ -115,14 +68,6 @@ h6:hover .headerlink,
|
|||
@apply bg-rp-dawn-text text-rp-dawn-base dark:bg-rp-moon-text dark:text-rp-moon-base m-8 p-4;
|
||||
}
|
||||
|
||||
/*Attempt to only float thumbnails to the right*/
|
||||
.image-process-article-image,
|
||||
.image-process-thumb,
|
||||
.image-process-responsive {
|
||||
/*@apply lg:float-right p-2 lg:p-4;*/
|
||||
@apply lg:float-right px-1 lg:px-3;
|
||||
}
|
||||
|
||||
#skiptocontent a {
|
||||
position: absolute;
|
||||
top: -40px;
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@
|
|||
}
|
||||
|
||||
/*
|
||||
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
|
||||
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
|
||||
*/
|
||||
|
||||
/*
|
||||
|
|
@ -243,7 +243,7 @@ code,
|
|||
kbd,
|
||||
samp,
|
||||
pre {
|
||||
font-family: ui-monospace, monospace;
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
/* 1 */
|
||||
font-feature-settings: normal;
|
||||
/* 2 */
|
||||
|
|
@ -718,54 +718,8 @@ ul {
|
|||
padding-left: 1rem;
|
||||
}
|
||||
|
||||
/* pelican tag_cloud */
|
||||
|
||||
ul.tagcloud {
|
||||
list-style-type: none;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
ul.tagcloud li {
|
||||
display: inline-block;
|
||||
padding: 0.25rem;
|
||||
}
|
||||
|
||||
/* Preflight is injected here */
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@media (min-width: 640px) {
|
||||
.container {
|
||||
max-width: 640px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.container {
|
||||
max-width: 768px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1024px) {
|
||||
.container {
|
||||
max-width: 1024px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1280px) {
|
||||
.container {
|
||||
max-width: 1280px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1536px) {
|
||||
.container {
|
||||
max-width: 1536px;
|
||||
}
|
||||
}
|
||||
|
||||
.prose {
|
||||
color: #575279;
|
||||
max-width: 80ch;
|
||||
|
|
@ -1243,123 +1197,18 @@ ul.tagcloud li {
|
|||
|
||||
/*This does not seem to affect prismjs which is good*/
|
||||
|
||||
code:not(pre code) {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(223 218 217 / var(--tw-bg-opacity, 1));
|
||||
padding-left: 0.125rem;
|
||||
padding-right: 0.125rem;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
code:not(pre code) {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(68 65 90 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
}
|
||||
|
||||
.badge {
|
||||
margin-left: 0.25rem;
|
||||
display: inline-block;
|
||||
code {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(244 237 232 / var(--tw-bg-opacity, 1));
|
||||
padding-left: 0.375rem;
|
||||
padding-right: 0.375rem;
|
||||
padding-top: 0.125rem;
|
||||
padding-bottom: 0.125rem;
|
||||
vertical-align: middle;
|
||||
font-family: ui-monospace, monospace;
|
||||
font-size: 0.75rem;
|
||||
line-height: 1rem;
|
||||
font-weight: 600;
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(234 157 52 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.badge {
|
||||
code {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(68 65 90 / var(--tw-bg-opacity, 1));
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(246 193 119 / var(--tw-text-opacity, 1));
|
||||
background-color: rgb(42 40 62 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
}
|
||||
|
||||
.badge a {
|
||||
text-decoration-line: none;
|
||||
}
|
||||
|
||||
.badge a:hover {
|
||||
text-decoration-line: none;
|
||||
}
|
||||
|
||||
/* copy-to-clipboard button, positioned inside the code block.
|
||||
NOTE: Pelican's fenced_code puts language-* on <code>, not <pre>,
|
||||
so we target pre that contains a language-* code element. */
|
||||
|
||||
pre:has(code[class*="language-"]) {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.copy-to-clipboard-button {
|
||||
position: absolute;
|
||||
top: 0.5rem;
|
||||
right: 0.5rem;
|
||||
border-radius: 0.25rem;
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(223 218 217 / var(--tw-bg-opacity, 1));
|
||||
padding-left: 0.5rem;
|
||||
padding-right: 0.5rem;
|
||||
padding-top: 0.125rem;
|
||||
padding-bottom: 0.125rem;
|
||||
font-family: ui-monospace, monospace;
|
||||
font-size: 0.75rem;
|
||||
line-height: 1rem;
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(87 82 121 / var(--tw-text-opacity, 1));
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.copy-to-clipboard-button:hover {
|
||||
z-index: 50;
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(206 202 205 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.copy-to-clipboard-button {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(68 65 90 / var(--tw-bg-opacity, 1));
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(224 222 244 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.copy-to-clipboard-button:hover {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(86 82 110 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
}
|
||||
|
||||
pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
||||
z-index: 50;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.absolute {
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.relative {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.z-10 {
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.z-20 {
|
||||
z-index: 20;
|
||||
}
|
||||
|
||||
.col-span-1 {
|
||||
grid-column: span 1 / span 1;
|
||||
}
|
||||
|
|
@ -1368,8 +1217,8 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
grid-column: span 2 / span 2;
|
||||
}
|
||||
|
||||
.col-span-3 {
|
||||
grid-column: span 3 / span 3;
|
||||
.col-span-7 {
|
||||
grid-column: span 7 / span 7;
|
||||
}
|
||||
|
||||
.col-span-9 {
|
||||
|
|
@ -1384,8 +1233,8 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
margin: 1rem;
|
||||
}
|
||||
|
||||
.-mt-11 {
|
||||
margin-top: -2.75rem;
|
||||
.-mt-9 {
|
||||
margin-top: -2.25rem;
|
||||
}
|
||||
|
||||
.mb-2 {
|
||||
|
|
@ -1416,10 +1265,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
display: flex;
|
||||
}
|
||||
|
||||
.table {
|
||||
display: table;
|
||||
}
|
||||
|
||||
.grid {
|
||||
display: grid;
|
||||
}
|
||||
|
|
@ -1428,10 +1273,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
display: inline-grid;
|
||||
}
|
||||
|
||||
.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.size-5 {
|
||||
width: 1.25rem;
|
||||
height: 1.25rem;
|
||||
|
|
@ -1445,15 +1286,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
width: 2rem;
|
||||
}
|
||||
|
||||
.-rotate-3 {
|
||||
--tw-rotate: -3deg;
|
||||
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
||||
}
|
||||
|
||||
.resize {
|
||||
resize: both;
|
||||
}
|
||||
|
||||
.list-outside {
|
||||
list-style-position: outside;
|
||||
}
|
||||
|
|
@ -1478,12 +1310,12 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
grid-template-columns: repeat(9, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.grid-cols-\[max-content_max-content_max-content_max-content_max-content\] {
|
||||
grid-template-columns: max-content max-content max-content max-content max-content;
|
||||
.grid-cols-\[max-content_max-content_max-content\] {
|
||||
grid-template-columns: max-content max-content max-content;
|
||||
}
|
||||
|
||||
.grid-cols-\[max-content_max-content_max-content_max-content_max-content_max-content\] {
|
||||
grid-template-columns: max-content max-content max-content max-content max-content max-content;
|
||||
.grid-cols-\[max-content_max-content_max-content_max-content_max-content\] {
|
||||
grid-template-columns: max-content max-content max-content max-content max-content;
|
||||
}
|
||||
|
||||
.items-center {
|
||||
|
|
@ -1498,21 +1330,11 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
gap: 2rem;
|
||||
}
|
||||
|
||||
.truncate {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.hyphens-auto {
|
||||
-webkit-hyphens: auto;
|
||||
hyphens: auto;
|
||||
}
|
||||
|
||||
.rounded-full {
|
||||
border-radius: 9999px;
|
||||
}
|
||||
|
||||
.border-b-2 {
|
||||
border-bottom-width: 2px;
|
||||
}
|
||||
|
|
@ -1536,11 +1358,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
background-color: rgb(250 244 237 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
|
||||
.bg-rp-dawn-gold {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(234 157 52 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
|
||||
.bg-rp-dawn-overlay {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(242 233 225 / var(--tw-bg-opacity, 1));
|
||||
|
|
@ -1551,28 +1368,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
background-color: rgb(255 250 243 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
|
||||
.bg-gradient-to-r {
|
||||
background-image: linear-gradient(to right, var(--tw-gradient-stops));
|
||||
}
|
||||
|
||||
.from-rp-dawn-gold {
|
||||
--tw-gradient-from: #ea9d34 var(--tw-gradient-from-position);
|
||||
--tw-gradient-to: rgb(234 157 52 / 0) var(--tw-gradient-to-position);
|
||||
--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
|
||||
}
|
||||
|
||||
.from-10\% {
|
||||
--tw-gradient-from-position: 10%;
|
||||
}
|
||||
|
||||
.to-rp-dawn-pine {
|
||||
--tw-gradient-to: #286983 var(--tw-gradient-to-position);
|
||||
}
|
||||
|
||||
.to-90\% {
|
||||
--tw-gradient-to-position: 90%;
|
||||
}
|
||||
|
||||
.p-1 {
|
||||
padding: 0.25rem;
|
||||
}
|
||||
|
|
@ -1585,19 +1380,14 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
padding: 1rem;
|
||||
}
|
||||
|
||||
.p-5 {
|
||||
padding: 1.25rem;
|
||||
}
|
||||
|
||||
.p-8 {
|
||||
padding: 2rem;
|
||||
}
|
||||
|
||||
.px-2 {
|
||||
padding-left: 0.5rem;
|
||||
padding-right: 0.5rem;
|
||||
}
|
||||
|
||||
.pb-4 {
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.pb-60 {
|
||||
padding-bottom: 15rem;
|
||||
}
|
||||
|
|
@ -1633,16 +1423,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
line-height: 2.5rem;
|
||||
}
|
||||
|
||||
.text-base {
|
||||
font-size: 1rem;
|
||||
line-height: 1.5rem;
|
||||
}
|
||||
|
||||
.text-sm {
|
||||
font-size: 0.875rem;
|
||||
line-height: 1.25rem;
|
||||
}
|
||||
|
||||
.text-xl {
|
||||
font-size: 1.25rem;
|
||||
line-height: 1.75rem;
|
||||
|
|
@ -1656,10 +1436,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.capitalize {
|
||||
text-transform: capitalize;
|
||||
}
|
||||
|
||||
.italic {
|
||||
font-style: italic;
|
||||
}
|
||||
|
|
@ -1669,6 +1445,11 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
color: rgb(86 148 159 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.text-rp-dawn-love {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(180 99 122 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.text-rp-dawn-overlay {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(242 233 225 / var(--tw-text-opacity, 1));
|
||||
|
|
@ -1694,49 +1475,6 @@ pre:has(code[class*="language-"]):hover .copy-to-clipboard-button {
|
|||
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
||||
}
|
||||
|
||||
.filter {
|
||||
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
||||
}
|
||||
|
||||
/*Hide heading anchor links unless hovering over them*/
|
||||
|
||||
.headerlink {
|
||||
/*@apply no-underline text-rp-dawn-love ml-1 md:ml-2 hover:no-underline;*/
|
||||
margin-left: 0.25rem;
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(180 99 122 / var(--tw-text-opacity, 1));
|
||||
text-decoration-line: none;
|
||||
opacity: 0;
|
||||
transition-property: opacity;
|
||||
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
||||
transition-duration: 150ms;
|
||||
}
|
||||
|
||||
.headerlink:hover {
|
||||
text-decoration-line: none;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.headerlink {
|
||||
margin-left: 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
.headerlink {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h1:hover .headerlink,
|
||||
h2:hover .headerlink,
|
||||
h3:hover .headerlink,
|
||||
h4:hover .headerlink,
|
||||
h5:hover .headerlink,
|
||||
h6:hover .headerlink,
|
||||
.headerlink:focus-visible {
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.note {
|
||||
margin: 2rem;
|
||||
--tw-bg-opacity: 1;
|
||||
|
|
@ -1769,26 +1507,6 @@ h6:hover .headerlink,
|
|||
}
|
||||
}
|
||||
|
||||
/*Attempt to only float thumbnails to the right*/
|
||||
|
||||
.image-process-article-image,
|
||||
.image-process-thumb,
|
||||
.image-process-responsive {
|
||||
/*@apply lg:float-right p-2 lg:p-4;*/
|
||||
padding-left: 0.25rem;
|
||||
padding-right: 0.25rem;
|
||||
}
|
||||
|
||||
@media (min-width: 1024px) {
|
||||
.image-process-article-image,
|
||||
.image-process-thumb,
|
||||
.image-process-responsive {
|
||||
float: right;
|
||||
padding-left: 0.75rem;
|
||||
padding-right: 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
#skiptocontent a {
|
||||
position: absolute;
|
||||
top: -40px;
|
||||
|
|
@ -2352,11 +2070,6 @@ h6:hover .headerlink,
|
|||
text-decoration-line: none;
|
||||
}
|
||||
|
||||
.prose-img\:mx-auto :is(:where(img):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.prose-img\:rounded :is(:where(img):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
|
||||
border-radius: 0.25rem;
|
||||
}
|
||||
|
|
@ -2370,18 +2083,19 @@ h6:hover .headerlink,
|
|||
grid-column: span 6 / span 6;
|
||||
}
|
||||
|
||||
.md\:col-span-7 {
|
||||
grid-column: span 7 / span 7;
|
||||
}
|
||||
|
||||
.md\:grid-cols-6 {
|
||||
grid-template-columns: repeat(6, minmax(0, 1fr));
|
||||
.md\:grid-cols-5 {
|
||||
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.md\:border-l-4 {
|
||||
border-left-width: 4px;
|
||||
}
|
||||
|
||||
.md\:text-2xl {
|
||||
font-size: 1.5rem;
|
||||
line-height: 2rem;
|
||||
}
|
||||
|
||||
.md\:text-3xl {
|
||||
font-size: 1.875rem;
|
||||
line-height: 2.25rem;
|
||||
|
|
@ -2401,11 +2115,6 @@ h6:hover .headerlink,
|
|||
font-size: 1rem;
|
||||
line-height: 1.5rem;
|
||||
}
|
||||
|
||||
.md\:text-xl {
|
||||
font-size: 1.25rem;
|
||||
line-height: 1.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1024px) {
|
||||
|
|
@ -2441,11 +2150,6 @@ h6:hover .headerlink,
|
|||
background-color: rgb(57 53 82 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
|
||||
.dark\:bg-rp-moon-pine {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(62 143 176 / var(--tw-bg-opacity, 1));
|
||||
}
|
||||
|
||||
.dark\:bg-rp-moon-surface {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(42 39 63 / var(--tw-bg-opacity, 1));
|
||||
|
|
@ -2456,11 +2160,6 @@ h6:hover .headerlink,
|
|||
color: rgb(156 207 216 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.dark\:text-rp-moon-highlight-med {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(68 65 90 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.dark\:text-rp-moon-iris {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(196 167 231 / var(--tw-text-opacity, 1));
|
||||
|
|
@ -2471,11 +2170,6 @@ h6:hover .headerlink,
|
|||
color: rgb(234 154 151 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.dark\:text-rp-moon-surface {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(42 39 63 / var(--tw-text-opacity, 1));
|
||||
}
|
||||
|
||||
.dark\:text-rp-moon-text {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(224 222 244 / var(--tw-text-opacity, 1));
|
||||
|
|
|
|||
|
|
@ -1,201 +0,0 @@
|
|||
/**
|
||||
* MIT License
|
||||
* Rosé Pine Theme
|
||||
* https://github.com/rose-pine
|
||||
* Ported for PrismJS by fvrests [@fvrests]
|
||||
*/
|
||||
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: #575279;
|
||||
background: #fffaf3;
|
||||
font-family: "Cartograph CF", ui-monospace, SFMono-Regular, Menlo, Monaco,
|
||||
Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
word-spacing: normal;
|
||||
word-break: normal;
|
||||
word-wrap: normal;
|
||||
line-height: 1.5;
|
||||
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
tab-size: 4;
|
||||
|
||||
-webkit-hyphens: none;
|
||||
-moz-hyphens: none;
|
||||
-ms-hyphens: none;
|
||||
hyphens: none;
|
||||
|
||||
@media print {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Selection */
|
||||
code[class*="language-"]::-moz-selection,
|
||||
pre[class*="language-"]::-moz-selection,
|
||||
code[class*="language-"] ::-moz-selection,
|
||||
pre[class*="language-"] ::-moz-selection {
|
||||
background: #dfdad9;
|
||||
}
|
||||
|
||||
code[class*="language-"]::selection,
|
||||
pre[class*="language-"]::selection,
|
||||
code[class*="language-"] ::selection,
|
||||
pre[class*="language-"] ::selection {
|
||||
background: #dfdad9;
|
||||
}
|
||||
|
||||
/* Code (block & inline) */
|
||||
:not(pre) > code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: #575279;
|
||||
background: #fffaf3;
|
||||
}
|
||||
|
||||
/* Code blocks */
|
||||
pre[class*="language-"] {
|
||||
padding: 1em;
|
||||
margin: 0.5em 0;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/* Inline code */
|
||||
:not(pre) > code[class*="language-"] {
|
||||
padding: 0.1em;
|
||||
border-radius: 0.3em;
|
||||
white-space: normal;
|
||||
color: #575279;
|
||||
background: #fffaf3;
|
||||
}
|
||||
|
||||
/* Text style & opacity */
|
||||
.token.entity {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
.token.important,
|
||||
.token.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.token.italic,
|
||||
.token.selector,
|
||||
.token.doctype,
|
||||
.token.attr-name,
|
||||
.token.inserted,
|
||||
.token.deleted,
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.cdata,
|
||||
.token.constant,
|
||||
.token.parameter,
|
||||
.token.url {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.token.url {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.namespace {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
/* Syntax highlighting */
|
||||
.token.constant {
|
||||
color: #575279;
|
||||
}
|
||||
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.cdata,
|
||||
.token.punctuation {
|
||||
color: #797593;
|
||||
}
|
||||
|
||||
.token.delimiter,
|
||||
.token.important,
|
||||
.token.atrule,
|
||||
.token.operator,
|
||||
.token.keyword {
|
||||
color: #286983;
|
||||
}
|
||||
|
||||
.token.tag,
|
||||
.token.tag .punctuation,
|
||||
.token.doctype,
|
||||
.token.variable,
|
||||
.token.regex,
|
||||
.token.class-name,
|
||||
.token.selector,
|
||||
.token.inserted {
|
||||
color: #56949f;
|
||||
}
|
||||
|
||||
.token.boolean,
|
||||
.token.entity,
|
||||
.token.number,
|
||||
.token.symbol,
|
||||
.token.function {
|
||||
color: #d7827e;
|
||||
}
|
||||
|
||||
.token.string,
|
||||
.token.char,
|
||||
.token.property,
|
||||
.token.attr-value,
|
||||
.token.attr-value .punctuation {
|
||||
color: #ea9d34;
|
||||
}
|
||||
|
||||
.token.parameter,
|
||||
.token.url,
|
||||
.token.name,
|
||||
.token.attr-name,
|
||||
.token.builtin {
|
||||
color: #907aa9;
|
||||
}
|
||||
|
||||
.token.deleted {
|
||||
color: #b4637a;
|
||||
}
|
||||
|
||||
/* Insertions & deletions */
|
||||
.token.inserted {
|
||||
background: rgba(86 148 159 0.12);
|
||||
}
|
||||
|
||||
.token.deleted {
|
||||
background: rgba(180 99 122 0.12);
|
||||
}
|
||||
|
||||
/* Line highlighting */
|
||||
pre[data-line] {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
pre[class*="language-"] > code[class*="language-"] {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.line-highlight,
|
||||
.highlight-lines .highlighted {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
padding: inherit 0;
|
||||
margin-top: 1em;
|
||||
|
||||
background: #dfdad9;
|
||||
box-shadow: inset 5px 0 0 #575279;
|
||||
|
||||
z-index: 0;
|
||||
|
||||
pointer-events: none;
|
||||
|
||||
line-height: inherit;
|
||||
white-space: pre;
|
||||
}
|
||||
|
|
@ -1,201 +0,0 @@
|
|||
/**
|
||||
* MIT License
|
||||
* Rosé Pine Theme
|
||||
* https://github.com/rose-pine
|
||||
* Ported for PrismJS by fvrests [@fvrests]
|
||||
*/
|
||||
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: #575279;
|
||||
background: #faf4ed;
|
||||
font-family: "Cartograph CF", ui-monospace, SFMono-Regular, Menlo, Monaco,
|
||||
Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
word-spacing: normal;
|
||||
word-break: normal;
|
||||
word-wrap: normal;
|
||||
line-height: 1.5;
|
||||
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
tab-size: 4;
|
||||
|
||||
-webkit-hyphens: none;
|
||||
-moz-hyphens: none;
|
||||
-ms-hyphens: none;
|
||||
hyphens: none;
|
||||
|
||||
@media print {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Selection */
|
||||
code[class*="language-"]::-moz-selection,
|
||||
pre[class*="language-"]::-moz-selection,
|
||||
code[class*="language-"] ::-moz-selection,
|
||||
pre[class*="language-"] ::-moz-selection {
|
||||
background: #dfdad9;
|
||||
}
|
||||
|
||||
code[class*="language-"]::selection,
|
||||
pre[class*="language-"]::selection,
|
||||
code[class*="language-"] ::selection,
|
||||
pre[class*="language-"] ::selection {
|
||||
background: #dfdad9;
|
||||
}
|
||||
|
||||
/* Code (block & inline) */
|
||||
:not(pre) > code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: #575279;
|
||||
background: #faf4ed;
|
||||
}
|
||||
|
||||
/* Code blocks */
|
||||
pre[class*="language-"] {
|
||||
padding: 1em;
|
||||
margin: 0.5em 0;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/* Inline code */
|
||||
:not(pre) > code[class*="language-"] {
|
||||
padding: 0.1em;
|
||||
border-radius: 0.3em;
|
||||
white-space: normal;
|
||||
color: #575279;
|
||||
background: #faf4ed;
|
||||
}
|
||||
|
||||
/* Text style & opacity */
|
||||
.token.entity {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
.token.important,
|
||||
.token.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.token.italic,
|
||||
.token.selector,
|
||||
.token.doctype,
|
||||
.token.attr-name,
|
||||
.token.inserted,
|
||||
.token.deleted,
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.cdata,
|
||||
.token.constant,
|
||||
.token.parameter,
|
||||
.token.url {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.token.url {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.namespace {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
/* Syntax highlighting */
|
||||
.token.constant {
|
||||
color: #575279;
|
||||
}
|
||||
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.cdata,
|
||||
.token.punctuation {
|
||||
color: #797593;
|
||||
}
|
||||
|
||||
.token.delimiter,
|
||||
.token.important,
|
||||
.token.atrule,
|
||||
.token.operator,
|
||||
.token.keyword {
|
||||
color: #286983;
|
||||
}
|
||||
|
||||
.token.tag,
|
||||
.token.tag .punctuation,
|
||||
.token.doctype,
|
||||
.token.variable,
|
||||
.token.regex,
|
||||
.token.class-name,
|
||||
.token.selector,
|
||||
.token.inserted {
|
||||
color: #56949f;
|
||||
}
|
||||
|
||||
.token.boolean,
|
||||
.token.entity,
|
||||
.token.number,
|
||||
.token.symbol,
|
||||
.token.function {
|
||||
color: #d7827e;
|
||||
}
|
||||
|
||||
.token.string,
|
||||
.token.char,
|
||||
.token.property,
|
||||
.token.attr-value,
|
||||
.token.attr-value .punctuation {
|
||||
color: #ea9d34;
|
||||
}
|
||||
|
||||
.token.parameter,
|
||||
.token.url,
|
||||
.token.name,
|
||||
.token.attr-name,
|
||||
.token.builtin {
|
||||
color: #907aa9;
|
||||
}
|
||||
|
||||
.token.deleted {
|
||||
color: #b4637a;
|
||||
}
|
||||
|
||||
/* Insertions & deletions */
|
||||
.token.inserted {
|
||||
background: rgba(86 148 159 0.12);
|
||||
}
|
||||
|
||||
.token.deleted {
|
||||
background: rgba(180 99 122 0.12);
|
||||
}
|
||||
|
||||
/* Line highlighting */
|
||||
pre[data-line] {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
pre[class*="language-"] > code[class*="language-"] {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.line-highlight,
|
||||
.highlight-lines .highlighted {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
padding: inherit 0;
|
||||
margin-top: 1em;
|
||||
|
||||
background: #dfdad9;
|
||||
box-shadow: inset 5px 0 0 #575279;
|
||||
|
||||
z-index: 0;
|
||||
|
||||
pointer-events: none;
|
||||
|
||||
line-height: inherit;
|
||||
white-space: pre;
|
||||
}
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
/* PrismJS 1.30.0
|
||||
https://prismjs.com/download#themes=prism&languages=markup+css+clike+javascript+awk+bash+c+csv+diff+django+dns-zone-file+docker+dot+editorconfig+gettext+git+go+go-module+graphql+hcl+ini+jq+json+json5+jsonp+latex+lua+makefile+markdown+markup-templating+nginx+promql+properties+python+r+regex+rest+sparql+sql+systemd+toml+turtle+typescript+vim+yaml+zig */
|
||||
/* PrismJS 1.29.0
|
||||
https://prismjs.com/download.html?themes#themes=prism&languages=markup+css+clike+javascript+bash+diff+django+dns-zone-file+docker+dot+elixir+erlang+git+go+go-module+hcl+ini+jq+lua+makefile+markdown+markup-templating+nginx+properties+python+r+rest+sql+toml+vim+yaml */
|
||||
code[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
|
||||
|
|
|
|||
|
|
@ -1,27 +0,0 @@
|
|||
// NOTE: Pelican's fenced_code puts language-* on <code>, not <pre>,
|
||||
// so we select the <code> elements and walk up to the <pre>.
|
||||
const codeBlocks = document.querySelectorAll('code[class*="language-"]');
|
||||
|
||||
console.log("copy-code.js loaded, found:", codeBlocks.length);
|
||||
|
||||
codeBlocks.forEach((code) => {
|
||||
const pre = code.closest("pre");
|
||||
if (!pre) return;
|
||||
|
||||
const button = document.createElement("button");
|
||||
button.className = "copy-to-clipboard-button";
|
||||
button.type = "button";
|
||||
button.textContent = "Copy";
|
||||
|
||||
button.addEventListener("click", async () => {
|
||||
try {
|
||||
await navigator.clipboard.writeText(code.innerText);
|
||||
button.textContent = "Copied";
|
||||
} catch {
|
||||
button.textContent = "Failed";
|
||||
}
|
||||
setTimeout(() => (button.textContent = "Copy"), 1500);
|
||||
});
|
||||
|
||||
pre.appendChild(button);
|
||||
});
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
/** @type {import('tailwindcss').Config} */
|
||||
module.exports = {
|
||||
content: ["./templates/*.html", "./static/js/*.js"],
|
||||
content: ["./templates/*.html"],
|
||||
plugins: [require("@tailwindcss/typography")],
|
||||
variants: {
|
||||
typography: ["dark"],
|
||||
|
|
@ -9,7 +9,6 @@ module.exports = {
|
|||
fontFamily: {
|
||||
texts: ["Erode", "serif"],
|
||||
headings: ["Fira Sans", "sans-serif"],
|
||||
mono: ["ui-monospace", "monospace"],
|
||||
},
|
||||
extend: {
|
||||
// NOTE: this is for non-prose (so not Markdown rendered with typography plugin)
|
||||
|
|
@ -124,6 +123,4 @@ module.exports = {
|
|||
// preflight: false,
|
||||
divideStyle: true,
|
||||
},
|
||||
// needed to generate the .badge class from in.css
|
||||
safelist: ["badge"],
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Blog archive - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - Archives{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="md:text-base lg:text-lg">
|
||||
<h1 class="text-3xl md:text-5xl">Blog post archive</h1>
|
||||
<h1 class="text-3xl md:text-5xl">Blog archive</h1>
|
||||
<ul class="hyphens-auto list-outside list-disc">
|
||||
|
||||
{% for article in dates %}
|
||||
{% set year = article.date.strftime('%Y') %}
|
||||
{% if loop.first %}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{% extends "base.html" %}
|
||||
{% block html_lang %}{{ article.lang }}{% endblock %}
|
||||
|
||||
{% block title %}{{ article.title|striptags }} - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - {{ article.title|striptags }}{% endblock %}
|
||||
|
||||
{% block head %}
|
||||
{{ super() }}
|
||||
|
|
@ -17,11 +17,11 @@
|
|||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<article class="prose dark:prose-dark md:prose-base lg:prose-lg prose-img:rounded prose-img:mx-auto hyphens-auto">
|
||||
<article class="prose dark:prose-dark md:prose-base lg:prose-lg prose-img:rounded hyphens-auto">
|
||||
<header>
|
||||
<h1 class="text-3xl md:text-5xl">
|
||||
{{ article.title }}
|
||||
<a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}" class="no-underline text-rp-dawn-pine dark:text-rp-moon-iris">#</a>
|
||||
<a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}" class="no-underline text-rp-dawn-overlay">#</a>
|
||||
</h1>
|
||||
<ul class="list-none border-b-2 border-rp-dawn-overlay dark:border-rp-moon-overlay">
|
||||
<li>
|
||||
|
|
@ -29,7 +29,7 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
|
||||
<path fill-rule="evenodd" d="M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm.75-13a.75.75 0 0 0-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 0 0 0-1.5h-3.25V5Z" clip-rule="evenodd" />
|
||||
</svg>
|
||||
{{ article.stats['read_mins']*1.5|round|int }} min. read ({{ article.stats['wc'] }} words)
|
||||
{{ article.stats['read_mins']*1.5|round|int }} min. read
|
||||
</span>
|
||||
<span class="flex items-center">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
|
||||
|
|
@ -41,18 +41,16 @@
|
|||
<li>
|
||||
<time class="flex items-center" datetime="{{ article.date.isoformat() }}">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
|
||||
<path fill-rule="evenodd" d="M5.75 2a.75.75 0 0 1 .75.75V4h7V2.75a.75.75 0 0 1 1.5 0V4h.25A2.75 2.75 0 0 1 18 6.75v8.5A2.75 2.75 0 0 1 15.25 18H4.75A2.75 2.75 0 0 1 2 15.25v-8.5A2.75 2.75 0 0 1 4.75 4H5V2.75A.75.75 0 0 1 5.75 2Zm-1 5.5c-.69 0-1.25.56-1.25 1.25v6.5c0 .69.56 1.25 1.25 1.25h10.5c.69 0 1.25-.56 1.25-1.25v-6.5c0-.69-.56-1.25-1.25-1.25H4.75Z" clip-rule="evenodd">
|
||||
<title>Publication date</title>
|
||||
</path>
|
||||
<title>Publication date</title>
|
||||
<path fill-rule="evenodd" d="M5.75 2a.75.75 0 0 1 .75.75V4h7V2.75a.75.75 0 0 1 1.5 0V4h.25A2.75 2.75 0 0 1 18 6.75v8.5A2.75 2.75 0 0 1 15.25 18H4.75A2.75 2.75 0 0 1 2 15.25v-8.5A2.75 2.75 0 0 1 4.75 4H5V2.75A.75.75 0 0 1 5.75 2Zm-1 5.5c-.69 0-1.25.56-1.25 1.25v6.5c0 .69.56 1.25 1.25 1.25h10.5c.69 0 1.25-.56 1.25-1.25v-6.5c0-.69-.56-1.25-1.25-1.25H4.75Z" clip-rule="evenodd" />
|
||||
</svg>
|
||||
{{ article.locale_date }}
|
||||
</time>
|
||||
{% if article.modified %}
|
||||
<time class="flex items-center" datetime="{{ article.modified.isoformat() }}">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
|
||||
<path fill-rule="evenodd" d="M10 4.5c1.215 0 2.417.055 3.604.162a.68.68 0 0 1 .615.597c.124 1.038.208 2.088.25 3.15l-1.689-1.69a.75.75 0 0 0-1.06 1.061l2.999 3a.75.75 0 0 0 1.06 0l3.001-3a.75.75 0 1 0-1.06-1.06l-1.748 1.747a41.31 41.31 0 0 0-.264-3.386 2.18 2.18 0 0 0-1.97-1.913 41.512 41.512 0 0 0-7.477 0 2.18 2.18 0 0 0-1.969 1.913 41.16 41.16 0 0 0-.16 1.61.75.75 0 1 0 1.495.12c.041-.52.093-1.038.154-1.552a.68.68 0 0 1 .615-.597A40.012 40.012 0 0 1 10 4.5ZM5.281 9.22a.75.75 0 0 0-1.06 0l-3.001 3a.75.75 0 1 0 1.06 1.06l1.748-1.747c.042 1.141.13 2.27.264 3.386a2.18 2.18 0 0 0 1.97 1.913 41.533 41.533 0 0 0 7.477 0 2.18 2.18 0 0 0 1.969-1.913c.064-.534.117-1.071.16-1.61a.75.75 0 1 0-1.495-.12c-.041.52-.093 1.037-.154 1.552a.68.68 0 0 1-.615.597 40.013 40.013 0 0 1-7.208 0 .68.68 0 0 1-.615-.597 39.785 39.785 0 0 1-.25-3.15l1.689 1.69a.75.75 0 0 0 1.06-1.061l-2.999-3Z" clip-rule="evenodd">
|
||||
<title>Modification date</title>
|
||||
</path>
|
||||
<title>Modification date</title>
|
||||
<path fill-rule="evenodd" d="M10 4.5c1.215 0 2.417.055 3.604.162a.68.68 0 0 1 .615.597c.124 1.038.208 2.088.25 3.15l-1.689-1.69a.75.75 0 0 0-1.06 1.061l2.999 3a.75.75 0 0 0 1.06 0l3.001-3a.75.75 0 1 0-1.06-1.06l-1.748 1.747a41.31 41.31 0 0 0-.264-3.386 2.18 2.18 0 0 0-1.97-1.913 41.512 41.512 0 0 0-7.477 0 2.18 2.18 0 0 0-1.969 1.913 41.16 41.16 0 0 0-.16 1.61.75.75 0 1 0 1.495.12c.041-.52.093-1.038.154-1.552a.68.68 0 0 1 .615-.597A40.012 40.012 0 0 1 10 4.5ZM5.281 9.22a.75.75 0 0 0-1.06 0l-3.001 3a.75.75 0 1 0 1.06 1.06l1.748-1.747c.042 1.141.13 2.27.264 3.386a2.18 2.18 0 0 0 1.97 1.913 41.533 41.533 0 0 0 7.477 0 2.18 2.18 0 0 0 1.969-1.913c.064-.534.117-1.071.16-1.61a.75.75 0 1 0-1.495-.12c-.041.52-.093 1.037-.154 1.552a.68.68 0 0 1-.615.597 40.013 40.013 0 0 1-7.208 0 .68.68 0 0 1-.615-.597 39.785 39.785 0 0 1-.25-3.15l1.689 1.69a.75.75 0 0 0 1.06-1.061l-2.999-3Z" clip-rule="evenodd" />
|
||||
</svg>
|
||||
{{ article.locale_modified }}
|
||||
</time>
|
||||
|
|
@ -109,31 +107,10 @@
|
|||
Share this post on
|
||||
<a href="{{article.share_post['bluesky']}}" title="Share post on Bluesky">Bluesky</a>,
|
||||
<a href="{{article.share_post['mastodon']}}" title="Share post on Mastodon">Mastodon</a>,
|
||||
<a href="{{article.share_post['reddit']}}" title="Share post on Reddit">Reddit</a>,
|
||||
<a href="{{article.share_post['hacker-news']}}" title="Share post on Hacker News">Hacker News</a> or
|
||||
<a href="{{article.share_post['reddit']}}" title="Share post on Reddit">Reddit</a> or
|
||||
<a href="{{article.share_post['twitter']}}" title="Share post on evil Twitter">Twitter</a>.
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="p-3">
|
||||
<p>
|
||||
<script>
|
||||
var remark_config = {
|
||||
host: 'https://haddock.crabdance.com/remark42',
|
||||
site_id: 'lugh.ch',
|
||||
components: ['embed', 'last-comments'],
|
||||
max_shown_comments: 15,
|
||||
max_last_comments: 15,
|
||||
theme: 'light',
|
||||
locale: 'en',
|
||||
show_email_subscription: false,
|
||||
simple_view: true,
|
||||
no_footer: true
|
||||
}
|
||||
</script>
|
||||
<script>!function(e,n){for(var o=0;o<e.length;o++){var r=n.createElement("script"),c=".js",d=n.head||n.body;"noModule"in r?(r.type="module",c=".mjs"):r.async=!0,r.defer=!0,r.src=remark_config.host+"/web/"+e[o]+c,d.appendChild(r)}}(remark_config.components||["embed"],document);</script>
|
||||
<div id="remark42"></div>
|
||||
</p>
|
||||
</div>
|
||||
</article>
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,12 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Authors - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - Authors{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1 class="text-3xl md:text-5xl">Authors</h1>
|
||||
It's all me, silly you.
|
||||
<!-- <ul> -->
|
||||
<!-- {% for author, articles in authors|sort %} -->
|
||||
<!-- <li><a href="{{ SITEURL }}/{{ author.url }}">{{ author }}</a> ({{ articles|count }})</li> -->
|
||||
<!-- {% endfor %} -->
|
||||
<!-- </ul> -->
|
||||
<h1 class="text-3xl md:text-5xl">Authors on {{ SITENAME }}</h1>
|
||||
<ul>
|
||||
{% for author, articles in authors|sort %}
|
||||
<li><a href="{{ SITEURL }}/{{ author.url }}">{{ author }}</a> ({{ articles|count }})</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -5,30 +5,10 @@
|
|||
<title>{% block title %}{{ SITENAME|striptags }}{% endblock title %}</title>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="generator" content="Pelican" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
{% if SITESUBTITLE %}
|
||||
<meta name="description" content="{{ SITESUBTITLE }}" />
|
||||
{% endif %}
|
||||
<meta name="abuseipdb-verification" content="RrusxCrq" />
|
||||
{% if article is defined %}
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:url" content="{{ SITEURL }}/{{ article.url }}" />
|
||||
<meta property="og:title" content="{{ article.title | replace("\"", """) }}" />
|
||||
<meta property="og:description" content="{{ article.summary | striptags | replace("\"", """) }}" />
|
||||
<meta property="og:image" content="{{ SITEURL }}/img/{% if article.opengraph_image is defined %}{{ article.opengraph_image }}{% else %}logo_og.jpg{% endif %}" />
|
||||
{% elif page is defined %}
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="{{ SITEURL }}/{{ page.url }}" />
|
||||
<meta property="og:title" content="{{ page.title | replace("\"", """) }}" />
|
||||
<meta property="og:description" content="{{ page.content | striptags | replace("\"", """) | truncate(196, False, '...') }}" />
|
||||
<meta property="og:image" content="{{ SITEURL }}/img/{% if page.opengraph_image is defined %}{{ page.opengraph_image }}{% else %}logo_og.jpg{% endif %}" />
|
||||
{% else %}
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="{{ SITEURL }}/{{ output_file }}" />
|
||||
<meta property="og:title" content="{{ SITENAME }}" />
|
||||
<meta property="og:description" content="{{ SITESUBTITLE }}" />
|
||||
<meta property="og:image" content="{{ SITEURL }}/img/logo_og.jpg" />
|
||||
{% endif %}
|
||||
{% if STYLESHEET_URL %}
|
||||
<link rel="stylesheet" type="text/css" href="{{ STYLESHEET_URL }}" />
|
||||
{% endif %}
|
||||
|
|
@ -56,9 +36,10 @@
|
|||
{% if TAG_FEED_RSS and tag %}
|
||||
<link href="{{ FEED_DOMAIN }}/{% if TAG_FEED_RSS_URL %}{{ TAG_FEED_RSS_URL.format(slug=tag.slug) }}{% else %}{{ TAG_FEED_RSS.format(slug=tag.slug) }}{% endif %}" type="application/rss+xml" rel="alternate" title="{{ SITENAME|striptags }} Tags RSS Feed" />
|
||||
{% endif %}
|
||||
<link href="https://api.fontshare.com/v2/css?f[]=erode@400&f[]=fira-sans@600&f[]=stardom@400&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" type="text/css" href="/theme/css/prism-rose-pine-dawn-alt.css" media="(prefers-color-scheme: light)" />
|
||||
<link rel="stylesheet" type="text/css" href="/theme/css/prism-rose-pine-moon-alt.css" media="(prefers-color-scheme: dark)" />
|
||||
<link href="https://api.fontshare.com/v2/css?f[]=erode@400&f[]=fira-sans@600&f[]=stardom@400&display=swap" rel="stylesheet">
|
||||
<script src="/theme/js/prism.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/theme/css/prism.css" />
|
||||
<link rel="stylesheet" type="text/css" href="/theme/css/prism-rose-pine-moon-alt.css" />
|
||||
<style>
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
|
|
@ -68,25 +49,6 @@
|
|||
/* Align prism.js font size to main font size */
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
|
||||
ul.tagcloud {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
}
|
||||
<!-- Pelican tag_cloud -->
|
||||
ul.tagcloud li {
|
||||
display: inline-block;
|
||||
}
|
||||
li.tag-1 {
|
||||
font-size: 160%;
|
||||
}
|
||||
li.tag-2 {
|
||||
font-size: 130%;
|
||||
}
|
||||
li.tag-3 {
|
||||
font-size: 100%;
|
||||
}
|
||||
</style>
|
||||
{% endblock head %}
|
||||
</head>
|
||||
|
|
@ -97,9 +59,9 @@
|
|||
<header>
|
||||
<div id="skiptocontent"><a href="#content">skip to main content</a></div>
|
||||
<hgroup>
|
||||
<h1 class="z-20 relative text-4xl md:text-7xl font-bold text-rp-dawn-foam"><a class="no-underline hover:no-underline text-rp-dawn-pine dark:text-rp-moon-foam" href="{{ SITEURL }}/">{{ SITENAME }}</a></h1>
|
||||
<h1 class="text-4xl md:text-7xl font-bold text-rp-dawn-foam"><a class="no-underline text-rp-dawn-pine dark:text-rp-moon-foam" href="{{ SITEURL }}/">{{ SITENAME }}</a></h1>
|
||||
{% if SITESUBTITLE %}
|
||||
<h2 class="z-10 bg-gradient-to-r from-rp-dawn-gold from-10% to-rp-dawn-pine to-90% absolute -rotate-3 text-base -mt-11 ml-14 md:text-xl text-rp-dawn-overlay dark:text-rp-moon-highlight-med"><tt style="font-family: 'C64 Pro Mono'; letter-spacing: -0.2em;">{{ SITESUBTITLE }}</tt></h2>
|
||||
<h2 class="text-xl -mt-9 ml-14 md:text-2xl text-rp-dawn-love dark:text-rp-moon-iris"><tt style="font-family: 'C64 Pro Mono'; letter-spacing: -0.2em;">{{ SITESUBTITLE }}</tt></h2>
|
||||
{% endif %}
|
||||
</hgroup>
|
||||
</header>
|
||||
|
|
@ -110,7 +72,7 @@
|
|||
{% if DISPLAY_PAGES_ON_MENU %}
|
||||
<div>
|
||||
{% for p in pages %}
|
||||
<li><a href="{{ SITEURL }}/{{ p.url }}" class="no-underline" {% if p==page %} aria-current="page" {% endif %}>{{ p.title }}</a></li>
|
||||
<li><a href="{{ SITEURL }}/{{ p.url }}" class="no-underline" {% if p==page %} aria-current="page" {% endif %}>{{ p.title }}</a></li>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
|
@ -136,7 +98,7 @@
|
|||
<div class="bg-rp-dawn-base dark:bg-rp-moon-base">
|
||||
<!--Empty spacer-->
|
||||
</div>
|
||||
<div class="col-span-9 md:col-span-7 bg-rp-dawn-base dark:bg-rp-moon-base p-4">
|
||||
<div class="col-span-7 bg-rp-dawn-base dark:bg-rp-moon-base p-4">
|
||||
<main id="content">
|
||||
{% block content %}
|
||||
{% endblock %}
|
||||
|
|
@ -149,28 +111,27 @@
|
|||
<div class="bg-rp-dawn-surface dark:bg-rp-moon-surface">
|
||||
<!--Empty spacer-->
|
||||
</div>
|
||||
<div class="col-span-9 md:col-span-7 pt-20 pb-60 bg-rp-dawn-surface dark:bg-rp-moon-surface text-rp-dawn-text dark:text-rp-moon-rose">
|
||||
<div class="col-span-7 pt-20 pb-60 bg-rp-dawn-surface dark:bg-rp-moon-surface text-rp-dawn-text dark:text-rp-moon-rose">
|
||||
<footer>
|
||||
<div class="grid grid-cols-1 md:grid-cols-6">
|
||||
<div class="col-span-3 p-4">
|
||||
<div class="grid grid-cols-1 md:grid-cols-5">
|
||||
<div class="col-span-2 p-5">
|
||||
<p>
|
||||
Generated by <a href="https://getpelican.com">Pelican</a> with a
|
||||
<a href="https://haddock.crabdance.com/code/weeheavy/pelican-theme" rel="nofollow">bespoke</a> theme inspired by <a href="https://rosepinetheme.com">Rosé Pine</a>.
|
||||
Generated by <a href="https://getpelican.com" target="_blank">Pelican</a> with a
|
||||
<a href="https://arrakis.fly.dev/weeheavy/pelican-theme" target="_blank">bespoke</a> theme inspired by <a href="https://rosepinetheme.com" target="_blank">Rosé Pine</a>.
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://buymeacoffee.com/lugh"><b>Buy me a coffee?</b></a>
|
||||
<a href="https://buymeacoffee.com/lugh" target="_blank"><b>Buy me a coffee?</b></a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-span-3 p-4 md:border-l-4 border-rp-dawn-overlay dark:border-rp-moon-overlay">
|
||||
<p class="pb-4">
|
||||
100% artisanal <a href="https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1" rel="license noopener noreferrer" style="display: inline-block">content licensed under <em>CC BY-SA 4.0</em></a>.
|
||||
Valid <a href="https://wave.webaim.org/report#/https://lugh.ch/{{ output_file }}"><em>WCAG 2.2 AA</em></a> (except code blocks, sorry).
|
||||
<div class="p-5 md:border-l-4 border-rp-dawn-overlay dark:border-rp-moon-overlay">
|
||||
<p>
|
||||
<!--Valid <a href="https://wave.webaim.org/report#/https://lugh.ch" target="_blank">WCAG AAA</a>.-->
|
||||
</p>
|
||||
<p class="pb-4">
|
||||
Blog post feed: <a href="/feeds/atom.xml">Atom</a>, <a href="/feeds/rss.xml">RSS</a>
|
||||
<p>
|
||||
100% organic content licensed under <a href="https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display: inline-block">CC BY-SA 4.0</a>
|
||||
</p>
|
||||
<p class="pb-4">
|
||||
IndieWeb: <a href="https://bubbles.town">Bubbles</a>, <a href="https://indieblog.page">indieblog.page</a>, <a href="https://indieweb.org/Getting_Started">Getting started</a>
|
||||
<p>
|
||||
<a href="/feeds/atom.xml" target="_blank">Atom feed</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -180,7 +141,5 @@
|
|||
<!--Empty spacer-->
|
||||
</div>
|
||||
</div> <!-- end main grid -->
|
||||
<script src="/theme/js/prism.js" defer></script>
|
||||
<script src="/theme/js/copy-code.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Categories - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - Categories{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="md:text-base lg:text-lg">
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "index.html" %}
|
||||
|
||||
{% block title %}{{ category }} - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - {{ category }} category{% endblock %}
|
||||
|
||||
{% block content_title %}
|
||||
<h1 class="text-3xl md:text-5xl">Tales from the <em>{{ category }}</em> department</h1>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "base.html" %}
|
||||
{% block html_lang %}{{ page.lang }}{% endblock %}
|
||||
{% block title %}{{ page.title|striptags }} - {{ SITENAME|striptags }} {%endblock%}
|
||||
{% block title %}{{ SITENAME|striptags }} - {{ page.title|striptags }}{%endblock%}
|
||||
|
||||
{% block head %}
|
||||
{{ super() }}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
{% if DEFAULT_PAGINATION %}
|
||||
{% set first_page = articles_paginator.page(1) %}
|
||||
{% set last_page = articles_paginator.page(articles_paginator.num_pages) %}
|
||||
{% if DEFAULT_PAGINATION %} {% set first_page = articles_paginator.page(1) %} {%
|
||||
set last_page = articles_paginator.page(articles_paginator.num_pages) %}
|
||||
<nav class="flex justify-center items-center">
|
||||
{% if articles_page.has_previous() %}
|
||||
<ul class="list-none inline-grid grid-cols-[max-content_max-content_max-content_max-content_max-content_max-content] border-t-2 border-rp-dawn-overlay dark:border-rp-moon-overlay m-4 p-4">
|
||||
{% if articles_page.has_previous() %}
|
||||
<ul class="list-none inline-grid grid-cols-[max-content_max-content_max-content_max-content_max-content] border-t-2 border-rp-dawn-overlay dark:border-rp-moon-overlay m-4 p-4">
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-overlay dark:bg-rp-moon-overlay w-12">
|
||||
<a
|
||||
|
|
@ -13,47 +12,34 @@
|
|||
><tt>«</tt></a>
|
||||
</li>
|
||||
</span>
|
||||
{% else %}
|
||||
<!--If we are on the first page, there's no previous links, so reduce grid sizing-->
|
||||
<ul class="list-none inline-grid grid-cols-[max-content_max-content_max-content_max-content_max-content] border-t-2 border-rp-dawn-overlay dark:border-rp-moon-overlay m-4 p-4">
|
||||
{% endif %}
|
||||
<!-- Current page -->
|
||||
{% else %}
|
||||
<!--If we are on the first page, there's no previous links, so reduce grid sizing-->
|
||||
<ul class="list-none inline-grid grid-cols-[max-content_max-content_max-content] border-t-2 border-rp-dawn-overlay dark:border-rp-moon-overlay m-4 p-4">
|
||||
{% endif %}
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-gold dark:bg-rp-moon-pine dark:text-rp-moon-surface w-8 font-bold">
|
||||
{{ articles_page.number }}
|
||||
<li class="text-center">
|
||||
Page {{ articles_page.number }} of {{ articles_paginator.num_pages }}
|
||||
</li>
|
||||
</span>
|
||||
{% if articles_page.has_next() %}
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-overlay dark:bg-rp-moon-overlay w-8">
|
||||
<a
|
||||
class="block no-underline hover:no-underline"
|
||||
href="{{ SITEURL }}/{{ articles_next_page.url }}"
|
||||
title="Go to page {{ articles_page.next_page_number() }}"
|
||||
>{{ articles_page.next_page_number() }}</a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="p-1">
|
||||
…
|
||||
</span>
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-overlay dark:bg-rp-moon-overlay w-8">
|
||||
<a
|
||||
class="block no-underline hover:no-underline"
|
||||
href="{{ SITEURL }}/{{ last_page.url }}"
|
||||
title="Go to last page"
|
||||
>{{ articles_paginator.num_pages }}</a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-overlay dark:bg-rp-moon-overlay w-12">
|
||||
<a
|
||||
class="block no-underline hover:no-underline align-top"
|
||||
href="{{ SITEURL }}/{{ articles_next_page.url }}"
|
||||
title="Go to the next page"
|
||||
><tt>»</tt></a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-overlay dark:bg-rp-moon-overlay w-8">
|
||||
<a
|
||||
class="block no-underline hover:no-underline"
|
||||
href="{{ SITEURL }}/{{ articles_next_page.url }}"
|
||||
title="Go to page {{ articles_page.next_page_number() }}"
|
||||
>{{ articles_page.next_page_number() }}</a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="p-1">
|
||||
<li class="text-center bg-rp-dawn-overlay dark:bg-rp-moon-overlay w-12">
|
||||
<a
|
||||
class="block no-underline hover:no-underline align-top"
|
||||
href="{{ SITEURL }}/{{ articles_next_page.url }}"
|
||||
title="Go to the next page"
|
||||
><tt>»</tt></a>
|
||||
</li>
|
||||
</span>
|
||||
{% endif %}
|
||||
</ul>
|
||||
</nav>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "index.html" %}
|
||||
|
||||
{% block title %} {{ tag|capitalize }} - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - {{ tag }} tag{% endblock %}
|
||||
|
||||
{% block content_title %}
|
||||
<h1 class="text-3xl md:text-5xl">Tales tagged with <em>{{ tag }}</em></h1>
|
||||
|
|
|
|||
|
|
@ -1,26 +1,12 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Tags - {{ SITENAME|striptags }}{% endblock %}
|
||||
{% block title %}{{ SITENAME|striptags }} - Tags{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1 class="text-3xl md:text-5xl">Article tags</h1>
|
||||
|
||||
<ul class="tagcloud">
|
||||
{% for tag in tag_cloud %}
|
||||
<li class="tag-{{ tag.1 }}">
|
||||
<a class="no-underline" title="{{ tag.2 }} articles" href="{{ SITEURL }}/{{ tag.0.url }}">
|
||||
{{ tag.0 }}
|
||||
</a>
|
||||
{% if TAG_CLOUD_BADGE %}
|
||||
<span class="bg-rp-dawn-overlay dark:bg-rp-moon-surface text-rp-dawn-pine dark:text-rp-moon-foam rounded-full px-2 text-sm">{{ tag.2 }}</span>
|
||||
{% endif %}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
<!-- <ul> -->
|
||||
<!-- {% for tag, articles in tags|sort %} -->
|
||||
<!-- <li><a href="{{ SITEURL }}/{{ tag.url }}">{{ tag }}</a> ({{ articles|count }})</li> -->
|
||||
<!-- {% endfor %} -->
|
||||
<!-- </ul> -->
|
||||
<h1 class="text-3xl md:text-5xl">Tags for {{ SITENAME }}</h1>
|
||||
<ul>
|
||||
{% for tag, articles in tags|sort %}
|
||||
<li><a href="{{ SITEURL }}/{{ tag.url }}">{{ tag }}</a> ({{ articles|count }})</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endblock %}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue