update theme
This commit is contained in:
parent
fc43dba964
commit
93fea0ed81
183 changed files with 6015 additions and 6241 deletions
10
themes/blowfish/.editorconfig
Normal file
10
themes/blowfish/.editorconfig
Normal file
|
@ -0,0 +1,10 @@
|
|||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
35
themes/blowfish/.prettierignore
Normal file
35
themes/blowfish/.prettierignore
Normal file
|
@ -0,0 +1,35 @@
|
|||
# https://github.com/gohugoio/hugo/blob/b39b24962350090122b5f3927456dde710cffb57/docs/.prettierignore
|
||||
# https://github.com/gohugoio/hugo/blob/b39b24962350090122b5f3927456dde710cffb57/docs/.prettierrc
|
||||
|
||||
# develop
|
||||
.vscode
|
||||
node_modules
|
||||
package.json
|
||||
|
||||
# Hugo
|
||||
assets/lib
|
||||
assets/css/compiled
|
||||
content
|
||||
themes
|
||||
public
|
||||
static
|
||||
*.md
|
||||
|
||||
# Invalid nodes and unexpected tokens, mostly caused by unmatched tags in Hugo statements.
|
||||
# For example:
|
||||
# {{ with .Params.externalUrl }}
|
||||
# <a href="{{ . }}">
|
||||
# {{ else }}
|
||||
# <a href="{{ .RelPermalink }}" class="min-w-full">
|
||||
# {{ end }}
|
||||
#
|
||||
# This create an unclose node
|
||||
|
||||
layouts/_default/_markup/render-heading.html
|
||||
layouts/_default/index.json
|
||||
layouts/_default/list.html
|
||||
layouts/shortcodes/screenshot.html
|
||||
layouts/shortcodes/figure.html
|
||||
layouts/partials/hugo-embedded/shortcodes/figure-default.html
|
||||
|
||||
assets/js/appearance.js
|
46
themes/blowfish/.prettierrc
Normal file
46
themes/blowfish/.prettierrc
Normal file
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
"singleQuote": false,
|
||||
"tabWidth": 2,
|
||||
"useTabs": false,
|
||||
"semi": true,
|
||||
"trailingComma": "all",
|
||||
"proseWrap": "always",
|
||||
"plugins": [
|
||||
"@awmottaz/prettier-plugin-void-html",
|
||||
"prettier-plugin-go-template",
|
||||
"prettier-plugin-tailwindcss"
|
||||
],
|
||||
"overrides": [
|
||||
{
|
||||
"files": ["*.html"],
|
||||
"options": {
|
||||
"useTabs": false,
|
||||
"parser": "go-template",
|
||||
"goTemplateBracketSpacing": true,
|
||||
"printWidth": 112,
|
||||
"bracketSameLine": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": ["*.js", "*.mjs", "*.mts", "*.ts"],
|
||||
"options": {
|
||||
"semi": true,
|
||||
"useTabs": false,
|
||||
"printWidth": 112,
|
||||
"singleQuote": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": ["*.yml", "*.yaml"],
|
||||
"options": {
|
||||
"singleQuote": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": ["*.json*"],
|
||||
"options": {
|
||||
"trailingComma": "none"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
- Great! Open a new GitHub pull request with the patch.
|
||||
- All development occurs on the `dev` branch and new PRs should be forked from here.
|
||||
- The command `npm run example` can be used to test local changes using the example site.
|
||||
- The commands `npm run example`, `npm run example:core`, and `npm run example:production` can be used to test local changes using the example site.
|
||||
- Ensure the PR description clearly describes the problem and solution. Include the relevant issue number, if applicable.
|
||||
- **Before submitting**, check the [coding conventions](#coding-conventions) section below to learn more about coding and commit message expectations.
|
||||
|
||||
|
@ -45,7 +45,7 @@ The project includes a Prettier config that helps to format code in line with th
|
|||
|
||||
#### Commit message guidelines
|
||||
|
||||
- Use [Gitmoji](https://gitmoji.dev) in commit messages to provide context.
|
||||
- Use [Gitmoji](https://gitmoji.dev) in PR messages to provide context.
|
||||
- Clearly describe the change with a short summary in the first 72 characters.
|
||||
- Place more detailed explanations in paragraphs below the summary, separated by a blank line.
|
||||
- Use imperative language (ie. "Fix bug", not "Fixed bug" or "Fixes bug").
|
||||
|
|
|
@ -1,2 +1,6 @@
|
|||
github: [nunocoracao]
|
||||
custom: ["https://www.paypal.me/nunocoracao", "https://www.buymeacoffee.com/nunocoracao"]
|
||||
custom:
|
||||
[
|
||||
"https://www.paypal.me/nunocoracao",
|
||||
"https://www.buymeacoffee.com/nunocoracao",
|
||||
]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/*! tailwindcss v4.1.4 | MIT License | https://tailwindcss.com */
|
||||
/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
|
||||
/*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */
|
||||
@layer properties;
|
||||
#zen-mode-button {
|
||||
|
@ -284,18 +284,33 @@ body.zen-mode-enable {
|
|||
.left-0 {
|
||||
left: calc(var(--spacing) * 0);
|
||||
}
|
||||
.left-\[calc\(max\(-50vw\,-800px\)\+50\%\)\] {
|
||||
left: calc(max(-50vw, -800px) + 50%);
|
||||
}
|
||||
.-z-10 {
|
||||
z-index: calc(10 * -1);
|
||||
}
|
||||
.z-2 {
|
||||
z-index: 2;
|
||||
}
|
||||
.z-10 {
|
||||
z-index: 10;
|
||||
}
|
||||
.z-30 {
|
||||
z-index: 30;
|
||||
}
|
||||
.z-80 {
|
||||
z-index: 80;
|
||||
}
|
||||
.z-100 {
|
||||
z-index: 100;
|
||||
}
|
||||
.z-500 {
|
||||
z-index: 500;
|
||||
}
|
||||
.z-\[1\] {
|
||||
z-index: 1;
|
||||
}
|
||||
.z-\[2\] {
|
||||
z-index: 2;
|
||||
}
|
||||
.z-\[999\] {
|
||||
z-index: 999;
|
||||
}
|
||||
|
@ -392,15 +407,9 @@ body.zen-mode-enable {
|
|||
color: var(--tw-prose-links);
|
||||
text-decoration: none;
|
||||
font-weight: 500;
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-300), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-300), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-300), 1);
|
||||
&:hover {
|
||||
color: color-mix(in srgb, rgba(rgba(var(--color-primary-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
|
||||
}
|
||||
color: rgba(var(--color-primary-600), 1);
|
||||
text-decoration: none;
|
||||
border-radius: 0.09rem;
|
||||
}
|
||||
|
@ -563,20 +572,14 @@ body.zen-mode-enable {
|
|||
padding-inline-end: 0.375em;
|
||||
padding-bottom: 0.1875em;
|
||||
padding-inline-start: 0.375em;
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
|
||||
}
|
||||
background-color: rgba(var(--color-neutral-200), 1);
|
||||
padding: 0.1rem 0.4rem;
|
||||
}
|
||||
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
color: var(--tw-prose-code);
|
||||
font-weight: 600;
|
||||
font-size: 0.875em;
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-50), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-neutral-50), 1) 100%, transparent);
|
||||
}
|
||||
background-color: rgba(var(--color-neutral-50), 1);
|
||||
padding-top: 3px;
|
||||
padding-bottom: 3px;
|
||||
padding-left: 5px;
|
||||
|
@ -696,138 +699,42 @@ body.zen-mode-enable {
|
|||
line-height: 1.4285714;
|
||||
margin-top: 0.8571429em;
|
||||
}
|
||||
--tw-prose-body: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-body: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-headings: color-mix(in srgb, rgba(rgba(var(--color-neutral-800), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-headings: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-lead: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-lead: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-links: color-mix(in srgb, rgba(rgba(var(--color-primary-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-links: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-bold: color-mix(in srgb, rgba(rgba(var(--color-neutral-900), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-bold: color-mix(in oklab, rgba(var(--color-neutral-900), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-counters: color-mix(in srgb, rgba(rgba(var(--color-neutral-800), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-counters: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-bullets: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-bullets: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-hr: color-mix(in srgb, rgba(rgba(var(--color-neutral-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-hr: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-quotes: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-quotes: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-quote-borders: color-mix(in srgb, rgba(rgba(var(--color-primary-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-quote-borders: color-mix(in oklab, rgba(var(--color-primary-200), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-captions: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-captions: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-body: rgba(var(--color-neutral-700), 1);
|
||||
--tw-prose-headings: rgba(var(--color-neutral-800), 1);
|
||||
--tw-prose-lead: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-links: rgba(var(--color-primary-600), 1);
|
||||
--tw-prose-bold: rgba(var(--color-neutral-900), 1);
|
||||
--tw-prose-counters: rgba(var(--color-neutral-800), 1);
|
||||
--tw-prose-bullets: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-hr: rgba(var(--color-neutral-200), 1);
|
||||
--tw-prose-quotes: rgba(var(--color-neutral-700), 1);
|
||||
--tw-prose-quote-borders: rgba(var(--color-primary-200), 1);
|
||||
--tw-prose-captions: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-kbd: oklch(21% 0.034 264.665);
|
||||
--tw-prose-kbd-shadows: NaN NaN NaN;
|
||||
--tw-prose-code: color-mix(in srgb, rgba(rgba(var(--color-secondary-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-code: color-mix(in oklab, rgba(var(--color-secondary-700), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-pre-code: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-pre-code: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-pre-bg: color-mix(in srgb, rgba(rgba(var(--color-neutral-50), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-pre-bg: color-mix(in oklab, rgba(var(--color-neutral-50), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-th-borders: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-th-borders: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-td-borders: color-mix(in srgb, rgba(rgba(var(--color-neutral-300), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-td-borders: color-mix(in oklab, rgba(var(--color-neutral-300), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-body: color-mix(in srgb, rgba(rgba(var(--color-neutral-300), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-body: color-mix(in oklab, rgba(var(--color-neutral-300), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-headings: color-mix(in srgb, rgba(rgba(var(--color-neutral-50), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-headings: color-mix(in oklab, rgba(var(--color-neutral-50), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-lead: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-lead: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-links: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-links: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-bold: color-mix(in srgb, rgba(rgba(var(--color-neutral), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-bold: color-mix(in oklab, rgba(var(--color-neutral), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-counters: color-mix(in srgb, rgba(rgba(var(--color-neutral-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-counters: color-mix(in oklab, rgba(var(--color-neutral-400), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-bullets: color-mix(in srgb, rgba(rgba(var(--color-neutral-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-bullets: color-mix(in oklab, rgba(var(--color-neutral-600), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-hr: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-hr: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-quotes: color-mix(in srgb, rgba(rgba(var(--color-neutral-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-quotes: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-quote-borders: color-mix(in srgb, rgba(rgba(var(--color-primary-900), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-quote-borders: color-mix(in oklab, rgba(var(--color-primary-900), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-captions: color-mix(in srgb, rgba(rgba(var(--color-neutral-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-captions: color-mix(in oklab, rgba(var(--color-neutral-400), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-code: rgba(var(--color-secondary-700), 1);
|
||||
--tw-prose-pre-code: rgba(var(--color-neutral-700), 1);
|
||||
--tw-prose-pre-bg: rgba(var(--color-neutral-50), 1);
|
||||
--tw-prose-th-borders: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-td-borders: rgba(var(--color-neutral-300), 1);
|
||||
--tw-prose-invert-body: rgba(var(--color-neutral-300), 1);
|
||||
--tw-prose-invert-headings: rgba(var(--color-neutral-50), 1);
|
||||
--tw-prose-invert-lead: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-invert-links: rgba(var(--color-primary-400), 1);
|
||||
--tw-prose-invert-bold: rgba(var(--color-neutral), 1);
|
||||
--tw-prose-invert-counters: rgba(var(--color-neutral-400), 1);
|
||||
--tw-prose-invert-bullets: rgba(var(--color-neutral-600), 1);
|
||||
--tw-prose-invert-hr: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-invert-quotes: rgba(var(--color-neutral-200), 1);
|
||||
--tw-prose-invert-quote-borders: rgba(var(--color-primary-900), 1);
|
||||
--tw-prose-invert-captions: rgba(var(--color-neutral-400), 1);
|
||||
--tw-prose-invert-kbd: #fff;
|
||||
--tw-prose-invert-kbd-shadows: 255 255 255;
|
||||
--tw-prose-invert-code: color-mix(in srgb, rgba(rgba(var(--color-secondary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-code: color-mix(in oklab, rgba(var(--color-secondary-400), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-pre-code: color-mix(in srgb, rgba(rgba(var(--color-neutral-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-pre-code: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-pre-bg: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-pre-bg: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-th-borders: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-th-borders: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-td-borders: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
--tw-prose-invert-td-borders: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
--tw-prose-invert-code: rgba(var(--color-secondary-400), 1);
|
||||
--tw-prose-invert-pre-code: rgba(var(--color-neutral-200), 1);
|
||||
--tw-prose-invert-pre-bg: rgba(var(--color-neutral-700), 1);
|
||||
--tw-prose-invert-th-borders: rgba(var(--color-neutral-500), 1);
|
||||
--tw-prose-invert-td-borders: rgba(var(--color-neutral-700), 1);
|
||||
font-size: 1rem;
|
||||
line-height: 1.75;
|
||||
:where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
|
@ -913,14 +820,8 @@ body.zen-mode-enable {
|
|||
margin-bottom: 0;
|
||||
}
|
||||
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
color: color-mix(in srgb, rgba(rgba(var(--color-neutral-800), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
color: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 100%, transparent);
|
||||
}
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-primary-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
|
||||
}
|
||||
color: rgba(var(--color-neutral-800), 1);
|
||||
background-color: rgba(var(--color-primary-600), 1);
|
||||
padding: 0.1rem 0.2rem;
|
||||
border-radius: 0.25rem;
|
||||
}
|
||||
|
@ -931,21 +832,21 @@ body.zen-mode-enable {
|
|||
display: none;
|
||||
}
|
||||
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-600), 1);
|
||||
}
|
||||
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-600), 1);
|
||||
}
|
||||
}
|
||||
.\!mt-0 {
|
||||
margin-top: calc(var(--spacing) * 0) !important;
|
||||
}
|
||||
.-mt-\[2px\] {
|
||||
margin-top: calc(2px * -1);
|
||||
}
|
||||
.-mt-\[15px\] {
|
||||
margin-top: calc(15px * -1);
|
||||
}
|
||||
.mt-0 {
|
||||
margin-top: calc(var(--spacing) * 0);
|
||||
}
|
||||
|
@ -979,18 +880,21 @@ body.zen-mode-enable {
|
|||
.mt-20 {
|
||||
margin-top: calc(var(--spacing) * 20);
|
||||
}
|
||||
.mt-\[-2px\] {
|
||||
margin-top: -2px;
|
||||
}
|
||||
.mt-\[0\.1rem\] {
|
||||
margin-top: 0.1rem;
|
||||
}
|
||||
.mt-\[0\.5rem\] {
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
.-mr-48 {
|
||||
margin-right: calc(var(--spacing) * -48);
|
||||
}
|
||||
.-mr-\[100\%\] {
|
||||
margin-right: calc(100% * -1);
|
||||
}
|
||||
.mr-0 {
|
||||
margin-right: calc(var(--spacing) * 0);
|
||||
}
|
||||
.mr-1 {
|
||||
margin-right: calc(var(--spacing) * 1);
|
||||
}
|
||||
|
@ -1003,6 +907,9 @@ body.zen-mode-enable {
|
|||
.mr-5 {
|
||||
margin-right: calc(var(--spacing) * 5);
|
||||
}
|
||||
.mr-\[10px\] {
|
||||
margin-right: 10px;
|
||||
}
|
||||
.mr-auto {
|
||||
margin-right: auto;
|
||||
}
|
||||
|
@ -1054,6 +961,9 @@ body.zen-mode-enable {
|
|||
.-ml-12 {
|
||||
margin-left: calc(var(--spacing) * -12);
|
||||
}
|
||||
.ml-0 {
|
||||
margin-left: calc(var(--spacing) * 0);
|
||||
}
|
||||
.ml-2 {
|
||||
margin-left: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
@ -1507,8 +1417,8 @@ body.zen-mode-enable {
|
|||
.overflow-visible {
|
||||
overflow: visible;
|
||||
}
|
||||
.overflow-y-scroll {
|
||||
overflow-y: scroll;
|
||||
.overflow-y-auto {
|
||||
overflow-y: auto;
|
||||
}
|
||||
.overscroll-contain {
|
||||
overscroll-behavior: contain;
|
||||
|
@ -1649,50 +1559,26 @@ body.zen-mode-enable {
|
|||
--tw-prose-th-borders: var(--tw-prose-invert-th-borders);
|
||||
--tw-prose-td-borders: var(--tw-prose-invert-td-borders);
|
||||
:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-neutral-600), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-neutral-600), 1);
|
||||
&:hover {
|
||||
color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
}
|
||||
:where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
color: color-mix(in srgb, rgba(rgba(var(--color-neutral-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
color: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
|
||||
}
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
color: rgba(var(--color-neutral-200), 1);
|
||||
background-color: rgba(var(--color-neutral-700), 1);
|
||||
}
|
||||
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
background-color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
background-color: rgba(var(--color-neutral-700), 1);
|
||||
}
|
||||
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
}
|
||||
.bg-\[\#6d6d6d\] {
|
||||
|
@ -1887,6 +1773,15 @@ body.zen-mode-enable {
|
|||
.pt-16 {
|
||||
padding-top: calc(var(--spacing) * 16);
|
||||
}
|
||||
.pt-\[2px\] {
|
||||
padding-top: 2px;
|
||||
}
|
||||
.pt-\[5px\] {
|
||||
padding-top: 5px;
|
||||
}
|
||||
.pr-0 {
|
||||
padding-right: calc(var(--spacing) * 0);
|
||||
}
|
||||
.pr-\[24px\] {
|
||||
padding-right: 24px;
|
||||
}
|
||||
|
@ -1905,6 +1800,12 @@ body.zen-mode-enable {
|
|||
.pb-32 {
|
||||
padding-bottom: calc(var(--spacing) * 32);
|
||||
}
|
||||
.pb-\[3px\] {
|
||||
padding-bottom: 3px;
|
||||
}
|
||||
.pl-0 {
|
||||
padding-left: calc(var(--spacing) * 0);
|
||||
}
|
||||
.pl-2 {
|
||||
padding-left: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
@ -2215,7 +2116,7 @@ body.zen-mode-enable {
|
|||
backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
|
||||
}
|
||||
.transition {
|
||||
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
|
||||
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
|
||||
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
||||
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
||||
}
|
||||
|
@ -3205,50 +3106,26 @@ body.zen-mode-enable {
|
|||
--tw-prose-th-borders: var(--tw-prose-invert-th-borders);
|
||||
--tw-prose-td-borders: var(--tw-prose-invert-td-borders);
|
||||
:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-600), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-neutral-600), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-neutral-600), 1);
|
||||
&:hover {
|
||||
color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
}
|
||||
:where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
color: color-mix(in srgb, rgba(rgba(var(--color-neutral-200), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
color: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
|
||||
}
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
color: rgba(var(--color-neutral-200), 1);
|
||||
background-color: rgba(var(--color-neutral-700), 1);
|
||||
}
|
||||
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
background-color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-700), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
|
||||
}
|
||||
background-color: rgba(var(--color-neutral-700), 1);
|
||||
}
|
||||
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
|
||||
text-decoration-color: color-mix(in srgb, rgba(rgba(var(--color-primary-400), 1), 1) 100%, transparent);
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
|
||||
}
|
||||
text-decoration-color: rgba(var(--color-primary-400), 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3478,6 +3355,9 @@ body a, body button {
|
|||
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
||||
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
||||
}
|
||||
button, [role="button"] {
|
||||
cursor: pointer;
|
||||
}
|
||||
.icon svg {
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
|
@ -3502,7 +3382,7 @@ body a, body button {
|
|||
padding-right: calc(var(--spacing) * 4);
|
||||
}
|
||||
}
|
||||
.prose ul>li, .prose ol>li {
|
||||
.prose ul > li, .prose ol > li {
|
||||
&:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
|
||||
margin-right: calc(var(--spacing) * 7);
|
||||
}
|
||||
|
@ -3513,7 +3393,7 @@ body a, body button {
|
|||
padding-left: calc(var(--spacing) * 0);
|
||||
}
|
||||
}
|
||||
.prose ol>li:before, .prose ul>li:before {
|
||||
.prose ol > li:before, .prose ul > li:before {
|
||||
&:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
|
||||
right: calc(var(--spacing) * 1);
|
||||
}
|
||||
|
@ -3531,9 +3411,19 @@ body a, body button {
|
|||
padding-left: calc(var(--spacing) * 0);
|
||||
}
|
||||
}
|
||||
.prose div.min-w-0.max-w-prose>*:first-child {
|
||||
.prose div.min-w-0.max-w-prose > *:first-child {
|
||||
margin-top: calc(var(--spacing) * 3);
|
||||
}
|
||||
#TableOfContents {
|
||||
@media (width >= 1024px) {
|
||||
max-width: 25vw;
|
||||
}
|
||||
}
|
||||
#TOCView {
|
||||
max-height: calc(100vh - 150px);
|
||||
min-height: 0;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
.toc ul, .toc li {
|
||||
list-style-type: none;
|
||||
padding-inline: calc(var(--spacing) * 0);
|
||||
|
@ -3556,7 +3446,7 @@ body a, body button {
|
|||
color: rgba(var(--color-neutral-400), 1);
|
||||
}
|
||||
}
|
||||
.toc ul>li {
|
||||
.toc ul > li {
|
||||
&:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
|
||||
margin-right: calc(var(--spacing) * 0);
|
||||
}
|
||||
|
@ -3568,7 +3458,7 @@ body a, body button {
|
|||
position: relative;
|
||||
z-index: 0;
|
||||
}
|
||||
.highlight:hover>.copy-button {
|
||||
.highlight:hover > .copy-button {
|
||||
visibility: visible;
|
||||
}
|
||||
.copy-button {
|
||||
|
@ -3579,6 +3469,10 @@ body a, body button {
|
|||
z-index: 10;
|
||||
width: calc(var(--spacing) * 20);
|
||||
cursor: pointer;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
border-top-right-radius: var(--radius-md);
|
||||
border-bottom-left-radius: var(--radius-md);
|
||||
background-color: rgba(var(--color-neutral-200), 1);
|
||||
|
@ -3610,6 +3504,10 @@ body a, body button {
|
|||
.katex-display {
|
||||
overflow: auto hidden;
|
||||
}
|
||||
.katex-display {
|
||||
padding-right: 2px;
|
||||
width: calc(100% - 2px);
|
||||
}
|
||||
table {
|
||||
display: block;
|
||||
overflow: auto;
|
||||
|
@ -3635,6 +3533,9 @@ a {
|
|||
color: rgba(var(--color-neutral-200), 1);
|
||||
}
|
||||
}
|
||||
.prose-invert .highlight pre > code {
|
||||
background-color: unset;
|
||||
}
|
||||
.chroma .lntd, .chroma .lntd pre {
|
||||
margin: calc(var(--spacing) * 0);
|
||||
--tw-border-style: none;
|
||||
|
@ -3826,9 +3727,7 @@ pre {
|
|||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
width: calc(100% + 40px);
|
||||
z-index: -10;
|
||||
margin-left: -20px;
|
||||
}
|
||||
.hero_gradient {
|
||||
width: 100%;
|
||||
|
@ -3844,6 +3743,9 @@ pre {
|
|||
height: 0px;
|
||||
visibility: hidden;
|
||||
}
|
||||
[id^="fn"], [id^="fnref"] {
|
||||
scroll-margin-top: 145px;
|
||||
}
|
||||
@screen sm {
|
||||
.thumbnail {
|
||||
min-width: 100%;
|
||||
|
|
|
@ -1,16 +1,14 @@
|
|||
#zen-mode-button {
|
||||
cursor:pointer
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.zen-mode {
|
||||
position: relative;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
body.zen-mode-enable {
|
||||
#bmc-wbtn, .author {
|
||||
display:none !important;
|
||||
}
|
||||
#bmc-wbtn,
|
||||
.author {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */
|
||||
|
||||
@import './components/zen-mode.css';
|
||||
@import "./components/zen-mode.css";
|
||||
|
||||
@import "tailwindcss";
|
||||
@config "../../tailwind.config.js";
|
||||
|
@ -10,6 +10,11 @@ body button {
|
|||
@apply transition-colors;
|
||||
}
|
||||
|
||||
button,
|
||||
[role="button"] {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/* Scale SVG icons to text size */
|
||||
.icon svg {
|
||||
@apply h-[1em] w-[1em];
|
||||
|
@ -33,13 +38,13 @@ body button {
|
|||
@apply rtl:pr-4 rtl:border-l-0 rtl:border-r-4;
|
||||
}
|
||||
|
||||
.prose ul>li,
|
||||
.prose ol>li {
|
||||
.prose ul > li,
|
||||
.prose ol > li {
|
||||
@apply rtl:pl-0 rtl:pr-2 rtl:mr-7;
|
||||
}
|
||||
|
||||
.prose ol>li:before,
|
||||
.prose ul>li:before {
|
||||
.prose ol > li:before,
|
||||
.prose ul > li:before {
|
||||
@apply rtl:left-auto rtl:right-1;
|
||||
}
|
||||
|
||||
|
@ -54,11 +59,21 @@ body button {
|
|||
}
|
||||
|
||||
/* Adjust first child within prose */
|
||||
.prose div.min-w-0.max-w-prose>*:first-child {
|
||||
.prose div.min-w-0.max-w-prose > *:first-child {
|
||||
@apply mt-3;
|
||||
}
|
||||
|
||||
/* Table of Contents */
|
||||
#TableOfContents {
|
||||
@apply lg:max-w-[25vw];
|
||||
}
|
||||
|
||||
#TOCView {
|
||||
max-height: calc(100vh - 150px);
|
||||
min-height: 0;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
.toc ul,
|
||||
.toc li {
|
||||
@apply px-0 leading-snug list-none;
|
||||
|
@ -72,7 +87,7 @@ body button {
|
|||
@apply font-normal text-neutral-700 dark:text-neutral-400;
|
||||
}
|
||||
|
||||
.toc ul>li {
|
||||
.toc ul > li {
|
||||
@apply rtl:mr-0;
|
||||
}
|
||||
|
||||
|
@ -85,12 +100,14 @@ body button {
|
|||
@apply relative z-0;
|
||||
}
|
||||
|
||||
.highlight:hover>.copy-button {
|
||||
.highlight:hover > .copy-button {
|
||||
@apply visible;
|
||||
}
|
||||
|
||||
.copy-button {
|
||||
@apply absolute top-0 right-0 z-10 invisible w-20 py-1 font-mono text-sm cursor-pointer opacity-90 bg-neutral-200 whitespace-nowrap rounded-bl-md rounded-tr-md text-neutral-700 dark:bg-neutral-600 dark:text-neutral-200;
|
||||
@apply absolute top-0 right-0 z-10 invisible w-20 py-1 font-mono text-sm cursor-pointer
|
||||
opacity-90 bg-neutral-200 whitespace-nowrap rounded-bl-md rounded-tr-md text-neutral-700
|
||||
dark:bg-neutral-600 dark:text-neutral-200 overflow-hidden truncate;
|
||||
}
|
||||
|
||||
.copy-button:hover,
|
||||
|
@ -105,25 +122,33 @@ body button {
|
|||
}
|
||||
|
||||
/* Fix long KaTeX equations on mobile (see https://katex.org/docs/issues.html#css-customization) */
|
||||
.katex-display { overflow: auto hidden }
|
||||
.katex-display {
|
||||
overflow: auto hidden;
|
||||
}
|
||||
|
||||
/* Fix katex overflow https://github.com/nunocoracao/blowfish/issues/2138 */
|
||||
.katex-display {
|
||||
padding-right: 2px;
|
||||
width: calc(100% - 2px);
|
||||
}
|
||||
|
||||
/* Fix long tables breaking out of article on mobile */
|
||||
table {
|
||||
display: block;
|
||||
overflow: auto;
|
||||
display: block;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/* Fix long inline code sections breaking out of article on mobile */
|
||||
code {
|
||||
word-wrap: break-word; /* All browsers since IE 5.5+ */
|
||||
overflow-wrap: break-word; /* Renamed property in CSS3 draft spec */
|
||||
word-wrap: break-word; /* All browsers since IE 5.5+ */
|
||||
overflow-wrap: break-word; /* Renamed property in CSS3 draft spec */
|
||||
}
|
||||
|
||||
/* Fix long URLs breaking out of article bounds on mobile */
|
||||
a {
|
||||
word-break: break-word;
|
||||
word-wrap: break-word;
|
||||
overflow-wrap: break-word;
|
||||
word-break: break-word;
|
||||
word-wrap: break-word;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
/* -- Chroma Highlight -- */
|
||||
|
@ -132,6 +157,10 @@ a {
|
|||
@apply static rounded-md text-neutral-700 bg-neutral-50 dark:bg-neutral-700 dark:text-neutral-200;
|
||||
}
|
||||
|
||||
.prose-invert .highlight pre > code {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
/* LineTableTD */
|
||||
.chroma .lntd,
|
||||
.chroma .lntd pre {
|
||||
|
@ -361,36 +390,36 @@ pre {
|
|||
.thumbnail {
|
||||
min-width: 300px;
|
||||
height: 180px;
|
||||
background-repeat:no-repeat;
|
||||
background-size:cover;
|
||||
background-position:center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
|
||||
.thumbnail_card {
|
||||
height: 200px;
|
||||
background-repeat:no-repeat;
|
||||
background-size:cover;
|
||||
background-position:center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
|
||||
.thumbnail_card_related {
|
||||
height: 150px;
|
||||
background-repeat:no-repeat;
|
||||
background-size:cover;
|
||||
background-position:center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
|
||||
.thumbnail_card_term {
|
||||
height: 150px;
|
||||
background-repeat:no-repeat;
|
||||
background-size:cover;
|
||||
background-position:center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
|
||||
.single_hero_basic {
|
||||
background-repeat:no-repeat;
|
||||
background-size:cover;
|
||||
background-position:center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
|
||||
.single_hero_round {
|
||||
|
@ -399,12 +428,10 @@ pre {
|
|||
}
|
||||
|
||||
.single_hero_background {
|
||||
background-repeat:no-repeat;
|
||||
background-size:cover;
|
||||
background-position:center;
|
||||
width: calc(100% + 40px);
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
z-index: -10;
|
||||
margin-left: -20px;
|
||||
}
|
||||
|
||||
.hero_gradient {
|
||||
|
@ -424,6 +451,12 @@ pre {
|
|||
visibility: hidden;
|
||||
}
|
||||
|
||||
/* Offset scroll position to avoid header overlap */
|
||||
[id^="fn"],
|
||||
[id^="fnref"] {
|
||||
scroll-margin-top: 145px;
|
||||
}
|
||||
|
||||
@screen sm {
|
||||
.thumbnail {
|
||||
min-width: 100%;
|
||||
|
@ -452,19 +485,25 @@ pre {
|
|||
.nested-menu:hover + .menuhide {
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
transition: visibility 0.3s, opacity 0.3s ease-in-out ;
|
||||
transition:
|
||||
visibility 0.3s,
|
||||
opacity 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
.menuhide:hover {
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
transition: visibility 0.3s, opacity 0.3s ease-in-out ;
|
||||
transition:
|
||||
visibility 0.3s,
|
||||
opacity 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
.menuhide {
|
||||
visibility: hidden;
|
||||
opacity: 0;
|
||||
transition: visibility 0.3s, opacity 0.3s ease-in-out ;
|
||||
transition:
|
||||
visibility 0.3s,
|
||||
opacity 0.3s ease-in-out;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
|
@ -475,179 +514,593 @@ pre {
|
|||
}
|
||||
|
||||
/* Gallery Specific Styles */
|
||||
.grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
|
||||
.grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
|
||||
.grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
|
||||
.grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
|
||||
.grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
|
||||
.grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
|
||||
.grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
|
||||
.grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
|
||||
.grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
|
||||
.grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
|
||||
.grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
|
||||
.grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
|
||||
.grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
|
||||
.grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
|
||||
.grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
|
||||
.grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
|
||||
.grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
|
||||
.grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
|
||||
.grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
|
||||
.grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
|
||||
.grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
|
||||
.grid-w10 {
|
||||
width: calc(10% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w15 {
|
||||
width: calc(15% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w20 {
|
||||
width: calc(20% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w25 {
|
||||
width: calc(25% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w30 {
|
||||
width: calc(30% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w33 {
|
||||
width: calc(33% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w35 {
|
||||
width: calc(35% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w40 {
|
||||
width: calc(40% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w45 {
|
||||
width: calc(45% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w50 {
|
||||
width: calc(50% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w55 {
|
||||
width: calc(55% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w60 {
|
||||
width: calc(60% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w65 {
|
||||
width: calc(65% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w66 {
|
||||
width: calc(66% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w70 {
|
||||
width: calc(70% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w75 {
|
||||
width: calc(75% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w80 {
|
||||
width: calc(80% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w85 {
|
||||
width: calc(85% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w90 {
|
||||
width: calc(90% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w95 {
|
||||
width: calc(95% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.grid-w100 {
|
||||
width: calc(100% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
|
||||
@screen sm {
|
||||
.sm\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
|
||||
.sm\:grid-w10 {
|
||||
width: calc(10% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w15 {
|
||||
width: calc(15% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w20 {
|
||||
width: calc(20% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w25 {
|
||||
width: calc(25% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w30 {
|
||||
width: calc(30% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w33 {
|
||||
width: calc(33% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w35 {
|
||||
width: calc(35% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w40 {
|
||||
width: calc(40% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w45 {
|
||||
width: calc(45% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w50 {
|
||||
width: calc(50% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w55 {
|
||||
width: calc(55% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w60 {
|
||||
width: calc(60% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w65 {
|
||||
width: calc(65% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w66 {
|
||||
width: calc(66% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w70 {
|
||||
width: calc(70% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w75 {
|
||||
width: calc(75% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w80 {
|
||||
width: calc(80% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w85 {
|
||||
width: calc(85% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w90 {
|
||||
width: calc(90% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w95 {
|
||||
width: calc(95% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.sm\:grid-w100 {
|
||||
width: calc(100% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
}
|
||||
|
||||
@screen md {
|
||||
.md\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
|
||||
.md\:grid-w10 {
|
||||
width: calc(10% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w15 {
|
||||
width: calc(15% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w20 {
|
||||
width: calc(20% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w25 {
|
||||
width: calc(25% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w30 {
|
||||
width: calc(30% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w33 {
|
||||
width: calc(33% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w35 {
|
||||
width: calc(35% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w40 {
|
||||
width: calc(40% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w45 {
|
||||
width: calc(45% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w50 {
|
||||
width: calc(50% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w55 {
|
||||
width: calc(55% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w60 {
|
||||
width: calc(60% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w65 {
|
||||
width: calc(65% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w66 {
|
||||
width: calc(66% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w70 {
|
||||
width: calc(70% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w75 {
|
||||
width: calc(75% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w80 {
|
||||
width: calc(80% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w85 {
|
||||
width: calc(85% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w90 {
|
||||
width: calc(90% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w95 {
|
||||
width: calc(95% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.md\:grid-w100 {
|
||||
width: calc(100% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
}
|
||||
|
||||
@screen lg {
|
||||
.lg\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
|
||||
.lg\:grid-w10 {
|
||||
width: calc(10% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w15 {
|
||||
width: calc(15% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w20 {
|
||||
width: calc(20% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w25 {
|
||||
width: calc(25% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w30 {
|
||||
width: calc(30% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w33 {
|
||||
width: calc(33% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w35 {
|
||||
width: calc(35% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w40 {
|
||||
width: calc(40% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w45 {
|
||||
width: calc(45% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w50 {
|
||||
width: calc(50% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w55 {
|
||||
width: calc(55% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w60 {
|
||||
width: calc(60% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w65 {
|
||||
width: calc(65% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w66 {
|
||||
width: calc(66% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w70 {
|
||||
width: calc(70% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w75 {
|
||||
width: calc(75% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w80 {
|
||||
width: calc(80% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w85 {
|
||||
width: calc(85% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w90 {
|
||||
width: calc(90% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w95 {
|
||||
width: calc(95% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.lg\:grid-w100 {
|
||||
width: calc(100% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
}
|
||||
|
||||
@screen xl {
|
||||
.xl\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
|
||||
.xl\:grid-w10 {
|
||||
width: calc(10% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w15 {
|
||||
width: calc(15% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w20 {
|
||||
width: calc(20% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w25 {
|
||||
width: calc(25% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w30 {
|
||||
width: calc(30% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w33 {
|
||||
width: calc(33% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w35 {
|
||||
width: calc(35% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w40 {
|
||||
width: calc(40% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w45 {
|
||||
width: calc(45% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w50 {
|
||||
width: calc(50% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w55 {
|
||||
width: calc(55% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w60 {
|
||||
width: calc(60% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w65 {
|
||||
width: calc(65% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w66 {
|
||||
width: calc(66% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w70 {
|
||||
width: calc(70% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w75 {
|
||||
width: calc(75% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w80 {
|
||||
width: calc(80% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w85 {
|
||||
width: calc(85% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w90 {
|
||||
width: calc(90% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w95 {
|
||||
width: calc(95% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.xl\:grid-w100 {
|
||||
width: calc(100% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
}
|
||||
|
||||
@screen 2xl {
|
||||
.2xl\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
|
||||
.2xl\:grid-w10 {
|
||||
width: calc(10% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w15 {
|
||||
width: calc(15% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w20 {
|
||||
width: calc(20% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w25 {
|
||||
width: calc(25% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w30 {
|
||||
width: calc(30% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w33 {
|
||||
width: calc(33% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w35 {
|
||||
width: calc(35% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w40 {
|
||||
width: calc(40% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w45 {
|
||||
width: calc(45% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w50 {
|
||||
width: calc(50% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w55 {
|
||||
width: calc(55% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w60 {
|
||||
width: calc(60% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w65 {
|
||||
width: calc(65% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w66 {
|
||||
width: calc(66% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w70 {
|
||||
width: calc(70% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w75 {
|
||||
width: calc(75% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w80 {
|
||||
width: calc(80% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w85 {
|
||||
width: calc(85% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w90 {
|
||||
width: calc(90% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w95 {
|
||||
width: calc(95% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
.2xl\:grid-w100 {
|
||||
width: calc(100% - 5px);
|
||||
margin: 0px !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Carousel Specific Styles */
|
||||
.ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
|
||||
.ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
|
||||
.ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
|
||||
.ratio-16-9 {
|
||||
padding-top: 56.25%;
|
||||
} /* 16:9 Aspect Ratio */
|
||||
.ratio-21-9 {
|
||||
padding-top: 42.85%;
|
||||
} /* 21:9 Aspect Ratio */
|
||||
.ratio-32-9 {
|
||||
padding-top: 28.125%;
|
||||
} /* 32:9 Aspect Ratio */
|
||||
|
||||
@screen sm {
|
||||
.sm\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
|
||||
.sm\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
|
||||
.sm\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
|
||||
.sm\:ratio-16-9 {
|
||||
padding-top: 56.25%;
|
||||
} /* 16:9 Aspect Ratio */
|
||||
.sm\:ratio-21-9 {
|
||||
padding-top: 42.85%;
|
||||
} /* 21:9 Aspect Ratio */
|
||||
.sm\:ratio-32-9 {
|
||||
padding-top: 28.125%;
|
||||
} /* 32:9 Aspect Ratio */
|
||||
}
|
||||
|
||||
@screen md {
|
||||
.md\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
|
||||
.md\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
|
||||
.md\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
|
||||
.md\:ratio-16-9 {
|
||||
padding-top: 56.25%;
|
||||
} /* 16:9 Aspect Ratio */
|
||||
.md\:ratio-21-9 {
|
||||
padding-top: 42.85%;
|
||||
} /* 21:9 Aspect Ratio */
|
||||
.md\:ratio-32-9 {
|
||||
padding-top: 28.125%;
|
||||
} /* 32:9 Aspect Ratio */
|
||||
}
|
||||
|
||||
@screen lg {
|
||||
.lg\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
|
||||
.lg\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
|
||||
.lg\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
|
||||
.lg\:ratio-16-9 {
|
||||
padding-top: 56.25%;
|
||||
} /* 16:9 Aspect Ratio */
|
||||
.lg\:ratio-21-9 {
|
||||
padding-top: 42.85%;
|
||||
} /* 21:9 Aspect Ratio */
|
||||
.lg\:ratio-32-9 {
|
||||
padding-top: 28.125%;
|
||||
} /* 32:9 Aspect Ratio */
|
||||
}
|
||||
|
||||
@screen xl {
|
||||
.xl\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
|
||||
.xl\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
|
||||
.xl\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
|
||||
.xl\:ratio-16-9 {
|
||||
padding-top: 56.25%;
|
||||
} /* 16:9 Aspect Ratio */
|
||||
.xl\:ratio-21-9 {
|
||||
padding-top: 42.85%;
|
||||
} /* 21:9 Aspect Ratio */
|
||||
.xl\:ratio-32-9 {
|
||||
padding-top: 28.125%;
|
||||
} /* 32:9 Aspect Ratio */
|
||||
}
|
||||
|
||||
@screen 2xl {
|
||||
.2xl\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
|
||||
.2xl\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
|
||||
.2xl\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
|
||||
}
|
||||
.2xl\:ratio-16-9 {
|
||||
padding-top: 56.25%;
|
||||
} /* 16:9 Aspect Ratio */
|
||||
.2xl\:ratio-21-9 {
|
||||
padding-top: 42.85%;
|
||||
} /* 21:9 Aspect Ratio */
|
||||
.2xl\:ratio-32-9 {
|
||||
padding-top: 28.125%;
|
||||
} /* 32:9 Aspect Ratio */
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 214,251,252;
|
||||
--color-neutral-200: 142,245,247;
|
||||
--color-neutral-300: 70,239,243;
|
||||
--color-neutral-400: 15,217,222;
|
||||
--color-neutral-500: 10,147,150;
|
||||
--color-neutral-600: 7,110,112;
|
||||
--color-neutral-700: 5,72,74;
|
||||
--color-neutral-800: 2,35,35;
|
||||
--color-neutral-900: 0,0,0;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,255,255;
|
||||
--color-primary-200: 255,240,212;
|
||||
--color-primary-300: 255,213,136;
|
||||
--color-primary-400: 255,187,59;
|
||||
--color-primary-500: 238,155,0;
|
||||
--color-primary-600: 197,128,0;
|
||||
--color-primary-700: 156,102,0;
|
||||
--color-primary-800: 116,75,0;
|
||||
--color-primary-900: 75,49,0;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 255,246,241;
|
||||
--color-secondary-200: 254,194,166;
|
||||
--color-secondary-300: 252,142,91;
|
||||
--color-secondary-400: 251,91,15;
|
||||
--color-secondary-500: 187,62,3;
|
||||
--color-secondary-600: 147,49,2;
|
||||
--color-secondary-700: 107,35,2;
|
||||
--color-secondary-800: 67,22,1;
|
||||
--color-secondary-900: 26,9,0;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 214, 251, 252;
|
||||
--color-neutral-200: 142, 245, 247;
|
||||
--color-neutral-300: 70, 239, 243;
|
||||
--color-neutral-400: 15, 217, 222;
|
||||
--color-neutral-500: 10, 147, 150;
|
||||
--color-neutral-600: 7, 110, 112;
|
||||
--color-neutral-700: 5, 72, 74;
|
||||
--color-neutral-800: 2, 35, 35;
|
||||
--color-neutral-900: 0, 0, 0;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 255, 255;
|
||||
--color-primary-200: 255, 240, 212;
|
||||
--color-primary-300: 255, 213, 136;
|
||||
--color-primary-400: 255, 187, 59;
|
||||
--color-primary-500: 238, 155, 0;
|
||||
--color-primary-600: 197, 128, 0;
|
||||
--color-primary-700: 156, 102, 0;
|
||||
--color-primary-800: 116, 75, 0;
|
||||
--color-primary-900: 75, 49, 0;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 255, 246, 241;
|
||||
--color-secondary-200: 254, 194, 166;
|
||||
--color-secondary-300: 252, 142, 91;
|
||||
--color-secondary-400: 251, 91, 15;
|
||||
--color-secondary-500: 187, 62, 3;
|
||||
--color-secondary-600: 147, 49, 2;
|
||||
--color-secondary-700: 107, 35, 2;
|
||||
--color-secondary-800: 67, 22, 1;
|
||||
--color-secondary-900: 26, 9, 0;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 254,197,207;
|
||||
--color-neutral-200: 253,121,144;
|
||||
--color-neutral-300: 251,46,82;
|
||||
--color-neutral-400: 217,4,41;
|
||||
--color-neutral-500: 177,3,33;
|
||||
--color-neutral-600: 137,3,26;
|
||||
--color-neutral-700: 97,2,18;
|
||||
--color-neutral-800: 57,1,11;
|
||||
--color-neutral-900: 17,0,3;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,255,255;
|
||||
--color-primary-200: 230,233,238;
|
||||
--color-primary-300: 186,193,206;
|
||||
--color-primary-400: 141,153,174;
|
||||
--color-primary-500: 117,132,157;
|
||||
--color-primary-600: 97,111,136;
|
||||
--color-primary-700: 80,92,113;
|
||||
--color-primary-800: 63,72,89;
|
||||
--color-primary-900: 46,53,65;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 217,230,238;
|
||||
--color-secondary-200: 164,195,215;
|
||||
--color-secondary-300: 111,160,192;
|
||||
--color-secondary-400: 69,123,157;
|
||||
--color-secondary-500: 57,101,129;
|
||||
--color-secondary-600: 44,79,100;
|
||||
--color-secondary-700: 32,56,72;
|
||||
--color-secondary-800: 19,34,44;
|
||||
--color-secondary-900: 7,12,15;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 254, 197, 207;
|
||||
--color-neutral-200: 253, 121, 144;
|
||||
--color-neutral-300: 251, 46, 82;
|
||||
--color-neutral-400: 217, 4, 41;
|
||||
--color-neutral-500: 177, 3, 33;
|
||||
--color-neutral-600: 137, 3, 26;
|
||||
--color-neutral-700: 97, 2, 18;
|
||||
--color-neutral-800: 57, 1, 11;
|
||||
--color-neutral-900: 17, 0, 3;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 255, 255;
|
||||
--color-primary-200: 230, 233, 238;
|
||||
--color-primary-300: 186, 193, 206;
|
||||
--color-primary-400: 141, 153, 174;
|
||||
--color-primary-500: 117, 132, 157;
|
||||
--color-primary-600: 97, 111, 136;
|
||||
--color-primary-700: 80, 92, 113;
|
||||
--color-primary-800: 63, 72, 89;
|
||||
--color-primary-900: 46, 53, 65;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 217, 230, 238;
|
||||
--color-secondary-200: 164, 195, 215;
|
||||
--color-secondary-300: 111, 160, 192;
|
||||
--color-secondary-400: 69, 123, 157;
|
||||
--color-secondary-500: 57, 101, 129;
|
||||
--color-secondary-600: 44, 79, 100;
|
||||
--color-secondary-700: 32, 56, 72;
|
||||
--color-secondary-800: 19, 34, 44;
|
||||
--color-secondary-900: 7, 12, 15;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 232,238,237;
|
||||
--color-neutral-200: 188,206,203;
|
||||
--color-neutral-300: 143,174,170;
|
||||
--color-neutral-400: 101,140,134;
|
||||
--color-neutral-500: 84,116,111;
|
||||
--color-neutral-600: 67,93,89;
|
||||
--color-neutral-700: 50,69,66;
|
||||
--color-neutral-800: 33,45,43;
|
||||
--color-neutral-900: 16,21,21;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,255,255;
|
||||
--color-primary-200: 205,252,247;
|
||||
--color-primary-300: 132,249,235;
|
||||
--color-primary-400: 59,245,223;
|
||||
--color-primary-500: 20,243,217;
|
||||
--color-primary-600: 11,212,188;
|
||||
--color-primary-700: 9,173,153;
|
||||
--color-primary-800: 7,134,119;
|
||||
--color-primary-900: 5,95,84;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 194,253,219;
|
||||
--color-secondary-200: 120,251,175;
|
||||
--color-secondary-300: 45,249,130;
|
||||
--color-secondary-400: 6,212,92;
|
||||
--color-secondary-500: 5,172,75;
|
||||
--color-secondary-600: 4,133,58;
|
||||
--color-secondary-700: 3,93,40;
|
||||
--color-secondary-800: 2,53,23;
|
||||
--color-secondary-900: 0,14,6;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 232, 238, 237;
|
||||
--color-neutral-200: 188, 206, 203;
|
||||
--color-neutral-300: 143, 174, 170;
|
||||
--color-neutral-400: 101, 140, 134;
|
||||
--color-neutral-500: 84, 116, 111;
|
||||
--color-neutral-600: 67, 93, 89;
|
||||
--color-neutral-700: 50, 69, 66;
|
||||
--color-neutral-800: 33, 45, 43;
|
||||
--color-neutral-900: 16, 21, 21;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 255, 255;
|
||||
--color-primary-200: 205, 252, 247;
|
||||
--color-primary-300: 132, 249, 235;
|
||||
--color-primary-400: 59, 245, 223;
|
||||
--color-primary-500: 20, 243, 217;
|
||||
--color-primary-600: 11, 212, 188;
|
||||
--color-primary-700: 9, 173, 153;
|
||||
--color-primary-800: 7, 134, 119;
|
||||
--color-primary-900: 5, 95, 84;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 194, 253, 219;
|
||||
--color-secondary-200: 120, 251, 175;
|
||||
--color-secondary-300: 45, 249, 130;
|
||||
--color-secondary-400: 6, 212, 92;
|
||||
--color-secondary-500: 5, 172, 75;
|
||||
--color-secondary-600: 4, 133, 58;
|
||||
--color-secondary-700: 3, 93, 40;
|
||||
--color-secondary-800: 2, 53, 23;
|
||||
--color-secondary-900: 0, 14, 6;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 255,255,255;
|
||||
--color-neutral-200: 201,209,244;
|
||||
--color-neutral-300: 137,156,231;
|
||||
--color-neutral-400: 74,103,217;
|
||||
--color-neutral-500: 37,65,178;
|
||||
--color-neutral-600: 30,53,144;
|
||||
--color-neutral-700: 23,40,110;
|
||||
--color-neutral-800: 16,28,77;
|
||||
--color-neutral-900: 9,16,43;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,255,255;
|
||||
--color-primary-200: 252,211,226;
|
||||
--color-primary-300: 246,140,178;
|
||||
--color-primary-400: 240,69,131;
|
||||
--color-primary-500: 216,17,89;
|
||||
--color-primary-600: 178,14,73;
|
||||
--color-primary-700: 140,11,58;
|
||||
--color-primary-800: 103,8,42;
|
||||
--color-primary-900: 65,5,27;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 255,255,255;
|
||||
--color-secondary-200: 255,255,255;
|
||||
--color-secondary-300: 255,242,219;
|
||||
--color-secondary-400: 255,215,143;
|
||||
--color-secondary-500: 255,188,66;
|
||||
--color-secondary-600: 255,174,25;
|
||||
--color-secondary-700: 239,155,0;
|
||||
--color-secondary-800: 199,128,0;
|
||||
--color-secondary-900: 158,102,0;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 255, 255, 255;
|
||||
--color-neutral-200: 201, 209, 244;
|
||||
--color-neutral-300: 137, 156, 231;
|
||||
--color-neutral-400: 74, 103, 217;
|
||||
--color-neutral-500: 37, 65, 178;
|
||||
--color-neutral-600: 30, 53, 144;
|
||||
--color-neutral-700: 23, 40, 110;
|
||||
--color-neutral-800: 16, 28, 77;
|
||||
--color-neutral-900: 9, 16, 43;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 255, 255;
|
||||
--color-primary-200: 252, 211, 226;
|
||||
--color-primary-300: 246, 140, 178;
|
||||
--color-primary-400: 240, 69, 131;
|
||||
--color-primary-500: 216, 17, 89;
|
||||
--color-primary-600: 178, 14, 73;
|
||||
--color-primary-700: 140, 11, 58;
|
||||
--color-primary-800: 103, 8, 42;
|
||||
--color-primary-900: 65, 5, 27;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 255, 255, 255;
|
||||
--color-secondary-200: 255, 255, 255;
|
||||
--color-secondary-300: 255, 242, 219;
|
||||
--color-secondary-400: 255, 215, 143;
|
||||
--color-secondary-500: 255, 188, 66;
|
||||
--color-secondary-600: 255, 174, 25;
|
||||
--color-secondary-700: 239, 155, 0;
|
||||
--color-secondary-800: 199, 128, 0;
|
||||
--color-secondary-900: 158, 102, 0;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 255,255,255;
|
||||
--color-neutral-200: 218,196,249;
|
||||
--color-neutral-300: 175,126,243;
|
||||
--color-neutral-400: 131,56,236;
|
||||
--color-neutral-500: 108,22,229;
|
||||
--color-neutral-600: 91,18,192;
|
||||
--color-neutral-700: 73,15,155;
|
||||
--color-neutral-800: 56,11,118;
|
||||
--color-neutral-900: 38,8,80;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,230,241;
|
||||
--color-primary-200: 255,153,197;
|
||||
--color-primary-300: 255,77,154;
|
||||
--color-primary-400: 255,0,110;
|
||||
--color-primary-500: 214,0,92;
|
||||
--color-primary-600: 173,0,75;
|
||||
--color-primary-700: 133,0,57;
|
||||
--color-primary-800: 92,0,40;
|
||||
--color-primary-900: 51,0,22;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 255,255,255;
|
||||
--color-secondary-200: 211,228,255;
|
||||
--color-secondary-300: 135,181,255;
|
||||
--color-secondary-400: 58,134,255;
|
||||
--color-secondary-500: 17,109,255;
|
||||
--color-secondary-600: 0,89,231;
|
||||
--color-secondary-700: 0,74,191;
|
||||
--color-secondary-800: 0,58,150;
|
||||
--color-secondary-900: 0,42,109;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 255, 255, 255;
|
||||
--color-neutral-200: 218, 196, 249;
|
||||
--color-neutral-300: 175, 126, 243;
|
||||
--color-neutral-400: 131, 56, 236;
|
||||
--color-neutral-500: 108, 22, 229;
|
||||
--color-neutral-600: 91, 18, 192;
|
||||
--color-neutral-700: 73, 15, 155;
|
||||
--color-neutral-800: 56, 11, 118;
|
||||
--color-neutral-900: 38, 8, 80;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 230, 241;
|
||||
--color-primary-200: 255, 153, 197;
|
||||
--color-primary-300: 255, 77, 154;
|
||||
--color-primary-400: 255, 0, 110;
|
||||
--color-primary-500: 214, 0, 92;
|
||||
--color-primary-600: 173, 0, 75;
|
||||
--color-primary-700: 133, 0, 57;
|
||||
--color-primary-800: 92, 0, 40;
|
||||
--color-primary-900: 51, 0, 22;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 255, 255, 255;
|
||||
--color-secondary-200: 211, 228, 255;
|
||||
--color-secondary-300: 135, 181, 255;
|
||||
--color-secondary-400: 58, 134, 255;
|
||||
--color-secondary-500: 17, 109, 255;
|
||||
--color-secondary-600: 0, 89, 231;
|
||||
--color-secondary-700: 0, 74, 191;
|
||||
--color-secondary-800: 0, 58, 150;
|
||||
--color-secondary-900: 0, 42, 109;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 255,255,255;
|
||||
--color-neutral-200: 214,219,222;
|
||||
--color-neutral-300: 172,183,188;
|
||||
--color-neutral-400: 129,146,154;
|
||||
--color-neutral-500: 92,107,115;
|
||||
--color-neutral-600: 74,86,92;
|
||||
--color-neutral-700: 56,65,70;
|
||||
--color-neutral-800: 38,44,47;
|
||||
--color-neutral-900: 19,23,24;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,255,255;
|
||||
--color-primary-200: 255,255,255;
|
||||
--color-primary-300: 250,251,252;
|
||||
--color-primary-400: 204,216,222;
|
||||
--color-primary-500: 157,180,192;
|
||||
--color-primary-600: 132,161,176;
|
||||
--color-primary-700: 107,142,160;
|
||||
--color-primary-800: 89,121,138;
|
||||
--color-primary-900: 73,99,113;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 255,255,255;
|
||||
--color-secondary-200: 182,240,255;
|
||||
--color-secondary-300: 105,225,255;
|
||||
--color-secondary-400: 28,209,255;
|
||||
--color-secondary-500: 0,165,207;
|
||||
--color-secondary-600: 0,132,166;
|
||||
--color-secondary-700: 0,100,125;
|
||||
--color-secondary-800: 0,67,85;
|
||||
--color-secondary-900: 0,35,44;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 255, 255, 255;
|
||||
--color-neutral-200: 214, 219, 222;
|
||||
--color-neutral-300: 172, 183, 188;
|
||||
--color-neutral-400: 129, 146, 154;
|
||||
--color-neutral-500: 92, 107, 115;
|
||||
--color-neutral-600: 74, 86, 92;
|
||||
--color-neutral-700: 56, 65, 70;
|
||||
--color-neutral-800: 38, 44, 47;
|
||||
--color-neutral-900: 19, 23, 24;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 255, 255;
|
||||
--color-primary-200: 255, 255, 255;
|
||||
--color-primary-300: 250, 251, 252;
|
||||
--color-primary-400: 204, 216, 222;
|
||||
--color-primary-500: 157, 180, 192;
|
||||
--color-primary-600: 132, 161, 176;
|
||||
--color-primary-700: 107, 142, 160;
|
||||
--color-primary-800: 89, 121, 138;
|
||||
--color-primary-900: 73, 99, 113;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 255, 255, 255;
|
||||
--color-secondary-200: 182, 240, 255;
|
||||
--color-secondary-300: 105, 225, 255;
|
||||
--color-secondary-400: 28, 209, 255;
|
||||
--color-secondary-500: 0, 165, 207;
|
||||
--color-secondary-600: 0, 132, 166;
|
||||
--color-secondary-700: 0, 100, 125;
|
||||
--color-secondary-800: 0, 67, 85;
|
||||
--color-secondary-900: 0, 35, 44;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255,255,255;
|
||||
--color-neutral-100: 238,232,238;
|
||||
--color-neutral-200: 206,188,206;
|
||||
--color-neutral-300: 174,143,174;
|
||||
--color-neutral-400: 140,101,140;
|
||||
--color-neutral-500: 116,84,116;
|
||||
--color-neutral-600: 93,67,93;
|
||||
--color-neutral-700: 69,50,69;
|
||||
--color-neutral-800: 45,33,45;
|
||||
--color-neutral-900: 21,16,21;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 255,255,255;
|
||||
--color-primary-200: 252,205,252;
|
||||
--color-primary-300: 249,132,247;
|
||||
--color-primary-400: 245,59,242;
|
||||
--color-primary-500: 243,20,239;
|
||||
--color-primary-600: 212,11,208;
|
||||
--color-primary-700: 173,9,170;
|
||||
--color-primary-800: 134,7,132;
|
||||
--color-primary-900: 95,5,94;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 227,194,253;
|
||||
--color-secondary-200: 192,120,251;
|
||||
--color-secondary-300: 157,45,249;
|
||||
--color-secondary-400: 119,6,212;
|
||||
--color-secondary-500: 97,5,172;
|
||||
--color-secondary-600: 74,4,133;
|
||||
--color-secondary-700: 52,3,93;
|
||||
--color-secondary-800: 30,2,53;
|
||||
--color-secondary-900: 8,0,14;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 255, 255, 255;
|
||||
--color-neutral-100: 238, 232, 238;
|
||||
--color-neutral-200: 206, 188, 206;
|
||||
--color-neutral-300: 174, 143, 174;
|
||||
--color-neutral-400: 140, 101, 140;
|
||||
--color-neutral-500: 116, 84, 116;
|
||||
--color-neutral-600: 93, 67, 93;
|
||||
--color-neutral-700: 69, 50, 69;
|
||||
--color-neutral-800: 45, 33, 45;
|
||||
--color-neutral-900: 21, 16, 21;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 255, 255, 255;
|
||||
--color-primary-200: 252, 205, 252;
|
||||
--color-primary-300: 249, 132, 247;
|
||||
--color-primary-400: 245, 59, 242;
|
||||
--color-primary-500: 243, 20, 239;
|
||||
--color-primary-600: 212, 11, 208;
|
||||
--color-primary-700: 173, 9, 170;
|
||||
--color-primary-800: 134, 7, 132;
|
||||
--color-primary-900: 95, 5, 94;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 227, 194, 253;
|
||||
--color-secondary-200: 192, 120, 251;
|
||||
--color-secondary-300: 157, 45, 249;
|
||||
--color-secondary-400: 119, 6, 212;
|
||||
--color-secondary-500: 97, 5, 172;
|
||||
--color-secondary-600: 74, 4, 133;
|
||||
--color-secondary-700: 52, 3, 93;
|
||||
--color-secondary-800: 30, 2, 53;
|
||||
--color-secondary-900: 8, 0, 14;
|
||||
}
|
||||
|
|
|
@ -1,32 +1,33 @@
|
|||
:root { --color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 203,255,227;
|
||||
--color-neutral-100: 126,255,186;
|
||||
--color-neutral-200: 49,255,145;
|
||||
--color-neutral-300: 0,228,106;
|
||||
--color-neutral-400: 0,152,71;
|
||||
--color-neutral-500: 0,75,35;
|
||||
--color-neutral-600: 0,50,23;
|
||||
--color-neutral-700: 0,24,11;
|
||||
--color-neutral-800: 0,24,11;
|
||||
--color-neutral-900: 0,0,0;
|
||||
--color-primary-50: 255,255,255;
|
||||
--color-primary-100: 236,255,227;
|
||||
--color-primary-200: 184,255,150;
|
||||
--color-primary-300: 132,255,74;
|
||||
--color-primary-400: 80,252,0;
|
||||
--color-primary-500: 56,176,0;
|
||||
--color-primary-600: 48,151,0;
|
||||
--color-primary-700: 40,125,0;
|
||||
--color-primary-800: 40,125,0;
|
||||
--color-primary-900: 7,23,0;
|
||||
--color-secondary-50: 255,255,255;
|
||||
--color-secondary-100: 239,248,252;
|
||||
--color-secondary-200: 173,220,242;
|
||||
--color-secondary-300: 107,192,231;
|
||||
--color-secondary-400: 41,164,220;
|
||||
--color-secondary-500: 26,117,159;
|
||||
--color-secondary-600: 22,101,137;
|
||||
--color-secondary-700: 19,85,115;
|
||||
--color-secondary-800: 19,85,115;
|
||||
--color-secondary-900: 4,20,28;
|
||||
}
|
||||
:root {
|
||||
--color-neutral: 255, 255, 255;
|
||||
--color-neutral-50: 203, 255, 227;
|
||||
--color-neutral-100: 126, 255, 186;
|
||||
--color-neutral-200: 49, 255, 145;
|
||||
--color-neutral-300: 0, 228, 106;
|
||||
--color-neutral-400: 0, 152, 71;
|
||||
--color-neutral-500: 0, 75, 35;
|
||||
--color-neutral-600: 0, 50, 23;
|
||||
--color-neutral-700: 0, 24, 11;
|
||||
--color-neutral-800: 0, 24, 11;
|
||||
--color-neutral-900: 0, 0, 0;
|
||||
--color-primary-50: 255, 255, 255;
|
||||
--color-primary-100: 236, 255, 227;
|
||||
--color-primary-200: 184, 255, 150;
|
||||
--color-primary-300: 132, 255, 74;
|
||||
--color-primary-400: 80, 252, 0;
|
||||
--color-primary-500: 56, 176, 0;
|
||||
--color-primary-600: 48, 151, 0;
|
||||
--color-primary-700: 40, 125, 0;
|
||||
--color-primary-800: 40, 125, 0;
|
||||
--color-primary-900: 7, 23, 0;
|
||||
--color-secondary-50: 255, 255, 255;
|
||||
--color-secondary-100: 239, 248, 252;
|
||||
--color-secondary-200: 173, 220, 242;
|
||||
--color-secondary-300: 107, 192, 231;
|
||||
--color-secondary-400: 41, 164, 220;
|
||||
--color-secondary-500: 26, 117, 159;
|
||||
--color-secondary-600: 22, 101, 137;
|
||||
--color-secondary-700: 19, 85, 115;
|
||||
--color-secondary-800: 19, 85, 115;
|
||||
--color-secondary-900: 4, 20, 28;
|
||||
}
|
||||
|
|
1
themes/blowfish/assets/icons/line.svg
Normal file
1
themes/blowfish/assets/icons/line.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.4.2 by @fontawesome - https://fontawesome.com License -https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M311 196.8v81.3c0 2.1-1.6 3.7-3.7 3.7h-13c-1.3 0-2.4-.7-3-1.5l-37.3-50.3v48.2c0 2.1-1.6 3.7-3.7 3.7h-13c-2.1 0-3.7-1.6-3.7-3.7V196.9c0-2.1 1.6-3.7 3.7-3.7h12.9c1.1 0 2.4 .6 3 1.6l37.3 50.3V196.9c0-2.1 1.6-3.7 3.7-3.7h13c2.1-.1 3.8 1.6 3.8 3.5zm-93.7-3.7h-13c-2.1 0-3.7 1.6-3.7 3.7v81.3c0 2.1 1.6 3.7 3.7 3.7h13c2.1 0 3.7-1.6 3.7-3.7V196.8c0-1.9-1.6-3.7-3.7-3.7zm-31.4 68.1H150.3V196.8c0-2.1-1.6-3.7-3.7-3.7h-13c-2.1 0-3.7 1.6-3.7 3.7v81.3c0 1 .3 1.8 1 2.5c.7 .6 1.5 1 2.5 1h52.2c2.1 0 3.7-1.6 3.7-3.7v-13c0-1.9-1.6-3.7-3.5-3.7zm193.7-68.1H327.3c-1.9 0-3.7 1.6-3.7 3.7v81.3c0 1.9 1.6 3.7 3.7 3.7h52.2c2.1 0 3.7-1.6 3.7-3.7V265c0-2.1-1.6-3.7-3.7-3.7H344V247.7h35.5c2.1 0 3.7-1.6 3.7-3.7V230.9c0-2.1-1.6-3.7-3.7-3.7H344V213.5h35.5c2.1 0 3.7-1.6 3.7-3.7v-13c-.1-1.9-1.7-3.7-3.7-3.7zM512 93.4V419.4c-.1 51.2-42.1 92.7-93.4 92.6H92.6C41.4 511.9-.1 469.8 0 418.6V92.6C.1 41.4 42.2-.1 93.4 0H419.4c51.2 .1 92.7 42.1 92.6 93.4zM441.6 233.5c0-83.4-83.7-151.3-186.4-151.3s-186.4 67.9-186.4 151.3c0 74.7 66.3 137.4 155.9 149.3c21.8 4.7 19.3 12.7 14.4 42.1c-.8 4.7-3.8 18.4 16.1 10.1s107.3-63.2 146.5-108.2c27-29.7 39.9-59.8 39.9-93.1z" /></svg>
|
After Width: | Height: | Size: 1.4 KiB |
1
themes/blowfish/assets/icons/peertube.svg
Normal file
1
themes/blowfish/assets/icons/peertube.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 365 486.53"><path fill="currentColor" d="M0,243.26V0l182.5,121.63L0,243.26Z"/><path fill="currentColor" d="M0,486.53v-243.26l182.5,121.63L0,486.53Z"/><path fill="currentColor" d="M182.5,364.9V121.63l182.5,121.63-182.5,121.63Z"/></svg>
|
After Width: | Height: | Size: 287 B |
1
themes/blowfish/assets/icons/pixelfed.svg
Normal file
1
themes/blowfish/assets/icons/pixelfed.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 510 510"><path fill="currentColor" d="M255,510C114.17,510,0,395.83,0,255S114.17,0,255,0s255,114.17,255,255-114.17,255-255,255ZM234.75,310.67h46.78c44.06,0,79.79-34.78,79.79-77.67s-35.72-77.68-79.79-77.68h-67.51c-25.42,0-46.03,20.06-46.03,44.82v174.42l66.77-63.88Z"/></svg>
|
After Width: | Height: | Size: 325 B |
5
themes/blowfish/assets/icons/worktree.svg
Normal file
5
themes/blowfish/assets/icons/worktree.svg
Normal file
|
@ -0,0 +1,5 @@
|
|||
<svg width="592" height="592" viewBox="0 0 592 592" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M46 260.286L292.269 46L546 260.286" stroke="currentColor" stroke-width="91" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M46 447.786L292.269 233.5L546 447.786" stroke="currentColor" stroke-width="91" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M293.619 407.607V546" stroke="currentColor" stroke-width="91" stroke-linecap="round"/>
|
||||
</svg>
|
After Width: | Height: | Size: 486 B |
10
themes/blowfish/assets/js/background-blur.js
Normal file
10
themes/blowfish/assets/js/background-blur.js
Normal file
|
@ -0,0 +1,10 @@
|
|||
(() => {
|
||||
const script = document.currentScript;
|
||||
const targetId = script?.getAttribute("data-target-id");
|
||||
|
||||
window.addEventListener("scroll", () => {
|
||||
const scroll = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
||||
const backgroundBlur = document.getElementById(targetId);
|
||||
backgroundBlur.style.opacity = scroll / 300;
|
||||
});
|
||||
})();
|
4
themes/blowfish/assets/js/button-likes.js
Normal file
4
themes/blowfish/assets/js/button-likes.js
Normal file
|
@ -0,0 +1,4 @@
|
|||
document.getElementById("button_likes") &&
|
||||
document.getElementById("button_likes").addEventListener("click", () => {
|
||||
process_article();
|
||||
});
|
|
@ -1,6 +1,10 @@
|
|||
var scriptBundle = document.getElementById("script-bundle");
|
||||
var copyText = scriptBundle && scriptBundle.getAttribute("data-copy")? scriptBundle.getAttribute("data-copy") : "Copy";
|
||||
var copiedText = scriptBundle && scriptBundle.getAttribute("data-copied")? scriptBundle.getAttribute("data-copied") : "Copied";
|
||||
var copyText =
|
||||
scriptBundle && scriptBundle.getAttribute("data-copy") ? scriptBundle.getAttribute("data-copy") : "Copy";
|
||||
var copiedText =
|
||||
scriptBundle && scriptBundle.getAttribute("data-copied")
|
||||
? scriptBundle.getAttribute("data-copied")
|
||||
: "Copied";
|
||||
|
||||
function createCopyButton(highlightDiv) {
|
||||
const button = document.createElement("button");
|
||||
|
|
57
themes/blowfish/assets/js/fetch-repo.js
Normal file
57
themes/blowfish/assets/js/fetch-repo.js
Normal file
|
@ -0,0 +1,57 @@
|
|||
(async () => {
|
||||
const script = document.currentScript;
|
||||
const repoURL = script?.getAttribute("data-repo-url");
|
||||
const repoId = script?.getAttribute("data-repo-id");
|
||||
|
||||
if (!repoURL || !repoId) return;
|
||||
|
||||
const platforms = {
|
||||
github: {
|
||||
full_name: "full_name",
|
||||
description: "description",
|
||||
stargazers_count: "stargazers",
|
||||
forks: "forks",
|
||||
},
|
||||
gitlab: {
|
||||
name_with_namespace: "name_with_namespace",
|
||||
description: "description",
|
||||
star_count: "star_count",
|
||||
forks_count: "forks_count",
|
||||
},
|
||||
gitea: {
|
||||
full_name: "full_name",
|
||||
description: "description",
|
||||
stars_count: "stars_count",
|
||||
forks_count: "forks_count",
|
||||
},
|
||||
codeberg: {
|
||||
full_name: "full_name",
|
||||
description: "description",
|
||||
stars_count: "stars_count",
|
||||
forks_count: "forks_count",
|
||||
},
|
||||
forgejo: {
|
||||
full_name: "full_name",
|
||||
description: "description",
|
||||
stars_count: "stars_count",
|
||||
forks_count: "forks_count",
|
||||
},
|
||||
};
|
||||
|
||||
const platform = Object.keys(platforms).find((p) => repoId.startsWith(p)) || "github";
|
||||
const mapping = platforms[platform];
|
||||
|
||||
try {
|
||||
const response = await fetch(repoURL, {
|
||||
headers: { "User-agent": "Mozilla/4.0 Custom User Agent" },
|
||||
});
|
||||
const data = await response.json();
|
||||
|
||||
Object.entries(mapping).forEach(([dataField, elementSuffix]) => {
|
||||
const element = document.getElementById(`${repoId}-${elementSuffix}`);
|
||||
if (element) element.innerHTML = data[dataField];
|
||||
});
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
})();
|
4
themes/blowfish/assets/js/katex-render.js
Normal file
4
themes/blowfish/assets/js/katex-render.js
Normal file
|
@ -0,0 +1,4 @@
|
|||
document.getElementById("katex-render") &&
|
||||
document.getElementById("katex-render").addEventListener("load", () => {
|
||||
renderMathInElement(document.body);
|
||||
});
|
|
@ -4,16 +4,16 @@ var menuWrapper = document.getElementById("menu-wrapper");
|
|||
|
||||
var menuOpen = false;
|
||||
|
||||
var openMenu = function (e) {
|
||||
var openMenu = function () {
|
||||
if (!menuOpen) {
|
||||
menuOpen = true;
|
||||
document.body.style.overflowY = "hidden";
|
||||
menuButton.style.visibility = "hidden";
|
||||
menuWrapper.style.visibility = "visible";
|
||||
menuWrapper.style.opacity = "1";
|
||||
window.onbeforeunload = function (event) {
|
||||
closeMenu()
|
||||
}
|
||||
window.onbeforeunload = function () {
|
||||
closeMenu();
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -24,10 +24,10 @@ var closeMenu = function (e) {
|
|||
menuButton.style.visibility = "visible";
|
||||
menuWrapper.style.visibility = "hidden";
|
||||
menuWrapper.style.opacity = "0";
|
||||
window.onbeforeunload = function (event) { }
|
||||
window.onbeforeunload = function () {};
|
||||
e.stopPropagation();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
menuButton.addEventListener("click", openMenu);
|
||||
menuCloseButton.addEventListener("click", closeMenu);
|
||||
menuButton && menuButton.addEventListener("click", openMenu);
|
||||
menuCloseButton && menuCloseButton.addEventListener("click", closeMenu);
|
||||
|
|
|
@ -1,106 +1,131 @@
|
|||
var liked_page = false
|
||||
var id = oid ? oid.replaceAll("/", "-") : oid
|
||||
var id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes
|
||||
const pageScriptElement = document.currentScript;
|
||||
const oid =
|
||||
pageScriptElement && pageScriptElement.getAttribute("data-oid")
|
||||
? pageScriptElement.getAttribute("data-oid")
|
||||
: (console.error("data-oid is null"), null);
|
||||
const oid_likes =
|
||||
pageScriptElement && pageScriptElement.getAttribute("data-oid-likes")
|
||||
? pageScriptElement.getAttribute("data-oid-likes")
|
||||
: (console.error("data-oid-likes is null"), null);
|
||||
let liked_page = false;
|
||||
const id = oid ? oid.replaceAll("/", "-") : oid;
|
||||
const id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes;
|
||||
|
||||
if (typeof auth !== 'undefined') {
|
||||
|
||||
var viewed = localStorage.getItem(id);
|
||||
if (typeof auth !== "undefined") {
|
||||
const viewed = localStorage.getItem(id);
|
||||
|
||||
if (!viewed) {
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var docRef = db.collection('views').doc(id)
|
||||
localStorage.setItem(id, true);
|
||||
docRef.get().then((doc) => {
|
||||
if (doc.exists) {
|
||||
db.collection('views').doc(id).update({
|
||||
views: firebase.firestore.FieldValue.increment(1)
|
||||
});
|
||||
} else {
|
||||
db.collection('views').doc(id).set({ views: 1 })
|
||||
}
|
||||
}).catch((error) => {
|
||||
console.log("Error getting document:", error);
|
||||
if (!viewed) {
|
||||
auth
|
||||
.signInAnonymously()
|
||||
.then(() => {
|
||||
const docRef = db.collection("views").doc(id);
|
||||
localStorage.setItem(id, true);
|
||||
docRef
|
||||
.get()
|
||||
.then((doc) => {
|
||||
if (doc.exists) {
|
||||
db.collection("views")
|
||||
.doc(id)
|
||||
.update({
|
||||
views: firebase.firestore.FieldValue.increment(1),
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
});
|
||||
}
|
||||
} else {
|
||||
db.collection("views").doc(id).set({ views: 1 });
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
console.log("Error getting document:", error);
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
const errorCode = error.code;
|
||||
const errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage);
|
||||
});
|
||||
}
|
||||
|
||||
var liked = localStorage.getItem(id_likes);
|
||||
|
||||
if (liked) {
|
||||
liked_page = true
|
||||
document.querySelectorAll("span[id='button_likes_heart']")[0].style.display = ""
|
||||
document.querySelectorAll("span[id='button_likes_emtpty_heart']")[0].style.display = "none"
|
||||
document.querySelectorAll("span[id='button_likes_text']")[0].innerText = ""
|
||||
}
|
||||
const liked = localStorage.getItem(id_likes);
|
||||
|
||||
if (liked) {
|
||||
liked_page = true;
|
||||
document.querySelectorAll("span[id='button_likes_heart']")[0].style.display = "";
|
||||
document.querySelectorAll("span[id='button_likes_emtpty_heart']")[0].style.display = "none";
|
||||
document.querySelectorAll("span[id='button_likes_text']")[0].innerText = "";
|
||||
}
|
||||
}
|
||||
|
||||
function like_article(id_likes) {
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var docRef = db.collection('likes').doc(id_likes)
|
||||
docRef.get().then((doc) => {
|
||||
liked_page = true
|
||||
localStorage.setItem(id_likes, true);
|
||||
document.querySelectorAll("span[id='button_likes_heart']")[0].style.display = ""
|
||||
document.querySelectorAll("span[id='button_likes_emtpty_heart']")[0].style.display = "none"
|
||||
document.querySelectorAll("span[id='button_likes_text']")[0].innerText = ""
|
||||
if (doc.exists) {
|
||||
db.collection('likes').doc(id_likes).update({
|
||||
likes: firebase.firestore.FieldValue.increment(1)
|
||||
});
|
||||
} else {
|
||||
db.collection('likes').doc(id_likes).set({ likes: 1 })
|
||||
}
|
||||
}).catch((error) => {
|
||||
console.log("Error getting document:", error);
|
||||
});
|
||||
auth
|
||||
.signInAnonymously()
|
||||
.then(() => {
|
||||
const docRef = db.collection("likes").doc(id_likes);
|
||||
docRef
|
||||
.get()
|
||||
.then((doc) => {
|
||||
liked_page = true;
|
||||
localStorage.setItem(id_likes, true);
|
||||
document.querySelectorAll("span[id='button_likes_heart']")[0].style.display = "";
|
||||
document.querySelectorAll("span[id='button_likes_emtpty_heart']")[0].style.display = "none";
|
||||
document.querySelectorAll("span[id='button_likes_text']")[0].innerText = "";
|
||||
if (doc.exists) {
|
||||
db.collection("likes")
|
||||
.doc(id_likes)
|
||||
.update({
|
||||
likes: firebase.firestore.FieldValue.increment(1),
|
||||
});
|
||||
} else {
|
||||
db.collection("likes").doc(id_likes).set({ likes: 1 });
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
console.log("Error getting document:", error);
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
const errorCode = error.code;
|
||||
const errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage);
|
||||
});
|
||||
}
|
||||
|
||||
function remove_like_article(id_likes) {
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var docRef = db.collection('likes').doc(id_likes)
|
||||
docRef.get().then((doc) => {
|
||||
liked_page = false
|
||||
localStorage.removeItem(id_likes);
|
||||
document.querySelectorAll("span[id='button_likes_heart']")[0].style.display = "none"
|
||||
document.querySelectorAll("span[id='button_likes_emtpty_heart']")[0].style.display = ""
|
||||
document.querySelectorAll("span[id='button_likes_text']")[0].innerText = "\xa0Like"
|
||||
if (doc.exists) {
|
||||
db.collection('likes').doc(id_likes).update({
|
||||
likes: firebase.firestore.FieldValue.increment(-1)
|
||||
});
|
||||
} else {
|
||||
db.collection('likes').doc(id_likes).set({ likes: 0 })
|
||||
}
|
||||
}).catch((error) => {
|
||||
console.log("Error getting document:", error);
|
||||
});
|
||||
auth
|
||||
.signInAnonymously()
|
||||
.then(() => {
|
||||
const docRef = db.collection("likes").doc(id_likes);
|
||||
docRef
|
||||
.get()
|
||||
.then((doc) => {
|
||||
liked_page = false;
|
||||
localStorage.removeItem(id_likes);
|
||||
document.querySelectorAll("span[id='button_likes_heart']")[0].style.display = "none";
|
||||
document.querySelectorAll("span[id='button_likes_emtpty_heart']")[0].style.display = "";
|
||||
document.querySelectorAll("span[id='button_likes_text']")[0].innerText = "\xa0Like";
|
||||
if (doc.exists) {
|
||||
db.collection("likes")
|
||||
.doc(id_likes)
|
||||
.update({
|
||||
likes: firebase.firestore.FieldValue.increment(-1),
|
||||
});
|
||||
} else {
|
||||
db.collection("likes").doc(id_likes).set({ likes: 0 });
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
console.log("Error getting document:", error);
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
const errorCode = error.code;
|
||||
const errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage);
|
||||
});
|
||||
}
|
||||
|
||||
function process_article() {
|
||||
if (!liked_page) {
|
||||
like_article(id_likes)
|
||||
} else {
|
||||
remove_like_article(id_likes)
|
||||
}
|
||||
}
|
||||
if (!liked_page) {
|
||||
like_article(id_likes);
|
||||
} else {
|
||||
remove_like_article(id_likes);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,71 +1,70 @@
|
|||
if (typeof auth !== 'undefined') {
|
||||
var viewsCollection = db.collection('views');
|
||||
var likesCollection = db.collection('likes');
|
||||
if (typeof auth !== "undefined") {
|
||||
var viewsCollection = db.collection("views");
|
||||
var likesCollection = db.collection("likes");
|
||||
|
||||
function numberWithCommas(x) {
|
||||
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
||||
function numberWithCommas(x) {
|
||||
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
||||
}
|
||||
|
||||
function toggleLoaders(node) {
|
||||
var classesString = node.className;
|
||||
if (classesString == "") return;
|
||||
var classes = classesString.split(" ");
|
||||
for (var i in classes) {
|
||||
node.classList.toggle(classes[i]);
|
||||
}
|
||||
}
|
||||
|
||||
function toggleLoaders(node){
|
||||
var classesString = node.className;
|
||||
if(classesString == "") return
|
||||
var classes = classesString.split(" ");
|
||||
for(var i in classes){
|
||||
node.classList.toggle(classes[i])
|
||||
var update_views = function (node, id) {
|
||||
viewsCollection.doc(id).onSnapshot((doc) => {
|
||||
var data = doc.data();
|
||||
if (data) {
|
||||
node.innerText = numberWithCommas(data.views);
|
||||
} else {
|
||||
node.innerText = 0;
|
||||
}
|
||||
toggleLoaders(node);
|
||||
});
|
||||
};
|
||||
|
||||
var update_likes = function (node, id) {
|
||||
likesCollection.doc(id).onSnapshot((doc) => {
|
||||
var data = doc.data();
|
||||
if (data) {
|
||||
node.innerText = numberWithCommas(data.likes);
|
||||
} else {
|
||||
node.innerText = 0;
|
||||
}
|
||||
toggleLoaders(node);
|
||||
});
|
||||
};
|
||||
|
||||
auth
|
||||
.signInAnonymously()
|
||||
.then(() => {
|
||||
var views_nodes = document.querySelectorAll("span[id^='views_']");
|
||||
|
||||
for (var i in views_nodes) {
|
||||
var node = views_nodes[i];
|
||||
var id = node.id ? node.id.replaceAll("/", "-") : node.id;
|
||||
if (id) {
|
||||
update_views(node, id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var update_views = function (node, id) {
|
||||
viewsCollection.doc(id).onSnapshot(doc => {
|
||||
var data = doc.data();
|
||||
if (data) {
|
||||
node.innerText = numberWithCommas(data.views)
|
||||
} else {
|
||||
node.innerText = 0
|
||||
}
|
||||
toggleLoaders(node)
|
||||
})
|
||||
}
|
||||
var likes_nodes = document.querySelectorAll("span[id^='likes_']");
|
||||
|
||||
var update_likes = function (node, id) {
|
||||
likesCollection.doc(id).onSnapshot(doc => {
|
||||
var data = doc.data();
|
||||
if (data) {
|
||||
node.innerText = numberWithCommas(data.likes)
|
||||
} else {
|
||||
node.innerText = 0
|
||||
}
|
||||
toggleLoaders(node)
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var views_nodes = document.querySelectorAll("span[id^='views_']")
|
||||
|
||||
for (var i in views_nodes) {
|
||||
var node = views_nodes[i]
|
||||
var id = node.id ? node.id.replaceAll("/", "-") : node.id
|
||||
if (id) {
|
||||
update_views(node, id)
|
||||
}
|
||||
}
|
||||
|
||||
var likes_nodes = document.querySelectorAll("span[id^='likes_']")
|
||||
|
||||
for (var i in likes_nodes) {
|
||||
var node = likes_nodes[i]
|
||||
var id = node.id ? node.id.replaceAll("/", "-") : node.id
|
||||
if (id) {
|
||||
update_likes(node, id)
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
});
|
||||
}
|
||||
for (var i in likes_nodes) {
|
||||
var node = likes_nodes[i];
|
||||
var id = node.id ? node.id.replaceAll("/", "-") : node.id;
|
||||
if (id) {
|
||||
update_likes(node, id);
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage);
|
||||
});
|
||||
}
|
||||
|
|
|
@ -13,8 +13,8 @@ var indexed = false;
|
|||
var hasResults = false;
|
||||
|
||||
// Listen for events
|
||||
showButton? showButton.addEventListener("click", displaySearch) : null;
|
||||
showButtonMobile? showButtonMobile.addEventListener("click", displaySearch) : null;
|
||||
showButton ? showButton.addEventListener("click", displaySearch) : null;
|
||||
showButtonMobile ? showButtonMobile.addEventListener("click", displaySearch) : null;
|
||||
hideButton.addEventListener("click", hideSearch);
|
||||
wrapper.addEventListener("click", hideSearch);
|
||||
modal.addEventListener("click", function (event) {
|
||||
|
@ -25,7 +25,11 @@ modal.addEventListener("click", function (event) {
|
|||
document.addEventListener("keydown", function (event) {
|
||||
// Forward slash to open search wrapper
|
||||
if (event.key == "/") {
|
||||
if (!searchVisible) {
|
||||
const active = document.activeElement;
|
||||
const tag = active.tagName;
|
||||
const isInputField = tag === "INPUT" || tag === "TEXTAREA" || active.isContentEditable;
|
||||
|
||||
if (!searchVisible && !isInputField) {
|
||||
event.preventDefault();
|
||||
displaySearch();
|
||||
}
|
||||
|
@ -75,7 +79,6 @@ document.addEventListener("keydown", function (event) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
// Update search on each keypress
|
||||
|
@ -122,7 +125,7 @@ function fetchJSON(path, callback) {
|
|||
|
||||
function buildIndex() {
|
||||
var baseURL = wrapper.getAttribute("data-url");
|
||||
baseURL = baseURL.replace(/\/?$/, '/');
|
||||
baseURL = baseURL.replace(/\/?$/, "/");
|
||||
fetchJSON(baseURL + "index.json", function (data) {
|
||||
var options = {
|
||||
shouldSort: true,
|
||||
|
@ -153,13 +156,19 @@ function executeQuery(term) {
|
|||
|
||||
if (results.length > 0) {
|
||||
results.forEach(function (value, key) {
|
||||
console.log(value.item.summary);
|
||||
var html = value.item.summary;
|
||||
var div = document.createElement("div");
|
||||
div.innerHTML = html;
|
||||
value.item.summary = div.textContent || div.innerText || "";
|
||||
var title = value.item.externalUrl? value.item.title + '<span class="text-xs ml-2 align-center cursor-default text-neutral-400 dark:text-neutral-500">'+value.item.externalUrl+'</span>' : value.item.title;
|
||||
var linkconfig = value.item.externalUrl? 'target="_blank" rel="noopener" href="'+value.item.externalUrl+'"' : 'href="'+value.item.permalink+'"';
|
||||
var title = value.item.externalUrl
|
||||
? value.item.title +
|
||||
'<span class="text-xs ml-2 align-center cursor-default text-neutral-400 dark:text-neutral-500">' +
|
||||
value.item.externalUrl +
|
||||
"</span>"
|
||||
: value.item.title;
|
||||
var linkconfig = value.item.externalUrl
|
||||
? 'target="_blank" rel="noopener" href="' + value.item.externalUrl + '"'
|
||||
: 'href="' + value.item.permalink + '"';
|
||||
resultsHTML =
|
||||
resultsHTML +
|
||||
`<li class="mb-2">
|
||||
|
@ -169,7 +178,7 @@ function executeQuery(term) {
|
|||
<div class="-mb-1 text-lg font-bold">
|
||||
${title}
|
||||
</div>
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">${value.item.section}<span class="px-2 text-primary-500">·</span>${value.item.date? value.item.date : ""}</span></div>
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">${value.item.section}<span class="px-2 text-primary-500">·</span>${value.item.date ? value.item.date : ""}</span></div>
|
||||
<div class="text-sm italic">${value.item.summary}</div>
|
||||
</div>
|
||||
<div class="ml-2 ltr:block rtl:hidden text-neutral-500">→</div>
|
||||
|
|
|
@ -1,22 +1,40 @@
|
|||
function _getDefaultPackeryOptions() {
|
||||
return {
|
||||
percentPosition: true,
|
||||
gutter: 5,
|
||||
resize: true
|
||||
};
|
||||
return {
|
||||
percentPosition: true,
|
||||
gutter: 5,
|
||||
resize: true,
|
||||
};
|
||||
}
|
||||
|
||||
function _getPackeryOptions(nodeGallery) {
|
||||
const defaults = _getDefaultPackeryOptions();
|
||||
const {
|
||||
packeryGutter,
|
||||
packeryPercentPosition,
|
||||
packeryResize,
|
||||
} = nodeGallery.dataset;
|
||||
|
||||
return {
|
||||
percentPosition:
|
||||
packeryPercentPosition !== undefined
|
||||
? packeryPercentPosition === "true"
|
||||
: defaults.percentPosition,
|
||||
gutter:
|
||||
packeryGutter !== undefined ? parseInt(packeryGutter, 10) : defaults.gutter,
|
||||
resize:
|
||||
packeryResize !== undefined ? packeryResize === "true" : defaults.resize,
|
||||
};
|
||||
}
|
||||
|
||||
(function init() {
|
||||
$(window).on("load", function () {
|
||||
let packeries = [];
|
||||
let nodeGalleries = document.querySelectorAll(".gallery");
|
||||
|
||||
$(window).on("load", function () {
|
||||
let packeries = [];
|
||||
let nodeGalleries = document.querySelectorAll('.gallery');
|
||||
|
||||
nodeGalleries.forEach(nodeGallery => {
|
||||
// TODO : implement a reader of Packery configuration _getPackeryOptions; for example by reading data-attribute
|
||||
let packery = new Packery(nodeGallery, _getDefaultPackeryOptions());
|
||||
packeries.push(packery);
|
||||
});
|
||||
console.groupEnd();
|
||||
nodeGalleries.forEach((nodeGallery) => {
|
||||
let packery = new Packery(nodeGallery, _getPackeryOptions(nodeGallery));
|
||||
packeries.push(packery);
|
||||
});
|
||||
})();
|
||||
console.groupEnd();
|
||||
});
|
||||
})();
|
||||
|
|
|
@ -1,50 +1,50 @@
|
|||
function _toogleZenMode(zendModeButton) {
|
||||
// Nodes selection
|
||||
const body = document.querySelector('body');
|
||||
const tocRight = document.querySelector('.toc-right');
|
||||
const tocInside = document.querySelector('.toc-inside');
|
||||
const articleContent = document.querySelector('.article-content');
|
||||
const header = document.querySelector('#single_header');
|
||||
|
||||
const body = document.querySelector("body");
|
||||
const footer = document.querySelector("footer");
|
||||
const tocRight = document.querySelector(".toc-right");
|
||||
const tocInside = document.querySelector(".toc-inside");
|
||||
const articleContent = document.querySelector(".article-content");
|
||||
const header = document.querySelector("#single_header");
|
||||
|
||||
// Add semantic class into body tag
|
||||
body.classList.toggle('zen-mode-enable');
|
||||
body.classList.toggle("zen-mode-enable");
|
||||
|
||||
// Show/Hide 'toc right' and 'toc inside'
|
||||
if (tocRight)
|
||||
tocRight.classList.toggle('lg:block');
|
||||
if (tocInside)
|
||||
tocInside.classList.toggle('lg:hidden');
|
||||
if (tocRight) tocRight.classList.toggle("lg:block");
|
||||
if (tocInside) tocInside.classList.toggle("lg:hidden");
|
||||
|
||||
// Change width of article content
|
||||
articleContent.classList.toggle('max-w-fit');
|
||||
articleContent.classList.toggle('max-w-prose');
|
||||
articleContent.classList.toggle("max-w-fit");
|
||||
articleContent.classList.toggle("max-w-prose");
|
||||
|
||||
// Change width of article title
|
||||
header.classList.toggle('max-w-full');
|
||||
header.classList.toggle('max-w-prose');
|
||||
// Change width of article title and footer
|
||||
header.classList.toggle("max-w-full");
|
||||
header.classList.toggle("max-w-prose");
|
||||
footer.classList.toggle("max-w-full");
|
||||
footer.classList.toggle("max-w-prose");
|
||||
|
||||
// Read i18n title from data-attributes
|
||||
const titleI18nDisable = zendModeButton.getAttribute('data-title-i18n-disable');
|
||||
const titleI18nEnable = zendModeButton.getAttribute('data-title-i18n-enable');
|
||||
const titleI18nDisable = zendModeButton.getAttribute("data-title-i18n-disable");
|
||||
const titleI18nEnable = zendModeButton.getAttribute("data-title-i18n-enable");
|
||||
|
||||
if (body.classList.contains('zen-mode-enable')) {
|
||||
if (body.classList.contains("zen-mode-enable")) {
|
||||
// Persist configuration
|
||||
//localStorage.setItem('blowfish-zen-mode-enabled', 'true');
|
||||
|
||||
// Change title to enable
|
||||
zendModeButton.setAttribute('title', titleI18nEnable)
|
||||
zendModeButton.setAttribute("title", titleI18nEnable);
|
||||
// Auto-scroll to title article
|
||||
window.scrollTo(window.scrollX, header.getBoundingClientRect().top - 90);
|
||||
} else {
|
||||
//localStorage.setItem('blowfish-zen-mode-enabled', 'false');
|
||||
zendModeButton.setAttribute('title', titleI18nDisable);
|
||||
document.querySelector('body').scrollIntoView();
|
||||
zendModeButton.setAttribute("title", titleI18nDisable);
|
||||
document.querySelector("body").scrollIntoView();
|
||||
}
|
||||
}
|
||||
|
||||
function _registerZendModeButtonClick(zendModeButton) {
|
||||
zendModeButton.addEventListener('click', function (event) {
|
||||
zendModeButton.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
|
||||
// Toggle zen-mode
|
||||
|
@ -55,9 +55,9 @@ function _registerZendModeButtonClick(zendModeButton) {
|
|||
(function init() {
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
// Register click on 'zen-mode-button' node element
|
||||
const zendModeButton = document.getElementById('zen-mode-button');
|
||||
const zendModeButton = document.getElementById("zen-mode-button");
|
||||
if (zendModeButton !== null && zendModeButton !== undefined) {
|
||||
_registerZendModeButtonClick(zendModeButton);
|
||||
}
|
||||
});
|
||||
})();
|
||||
})();
|
||||
|
|
File diff suppressed because one or more lines are too long
579
themes/blowfish/assets/lib/mermaid/mermaid.min.js
vendored
579
themes/blowfish/assets/lib/mermaid/mermaid.min.js
vendored
File diff suppressed because one or more lines are too long
1
themes/blowfish/assets/lib/zoom/style.css
Normal file
1
themes/blowfish/assets/lib/zoom/style.css
Normal file
|
@ -0,0 +1 @@
|
|||
.medium-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s;will-change:opacity}.medium-zoom--opened .medium-zoom-overlay{cursor:pointer;cursor:zoom-out;opacity:1}.medium-zoom-image{cursor:pointer;cursor:zoom-in;transition:transform .3s cubic-bezier(.2,0,.2,1)!important}.medium-zoom-image--hidden{visibility:hidden}.medium-zoom-image--opened{position:relative;cursor:pointer;cursor:zoom-out;will-change:transform}
|
2
themes/blowfish/assets/lib/zoom/zoom.min.js
vendored
2
themes/blowfish/assets/lib/zoom/zoom.min.js
vendored
File diff suppressed because one or more lines are too long
2
themes/blowfish/assets/lib/zoom/zoom.min.umd.js
Normal file
2
themes/blowfish/assets/lib/zoom/zoom.min.umd.js
Normal file
File diff suppressed because one or more lines are too long
|
@ -1,5 +1,5 @@
|
|||
[module]
|
||||
[module.hugoVersion]
|
||||
extended = true
|
||||
min = "0.87.0"
|
||||
max = "0.147.1"
|
||||
min = "0.137.0"
|
||||
max = "0.148.0"
|
|
@ -2,8 +2,15 @@
|
|||
# These settings are required for the theme to function.
|
||||
|
||||
[goldmark]
|
||||
[goldmark.renderer]
|
||||
unsafe = true
|
||||
[goldmark.renderer]
|
||||
unsafe = true
|
||||
|
||||
[goldmark.extensions]
|
||||
[goldmark.extensions.passthrough]
|
||||
enable = true
|
||||
[goldmark.extensions.passthrough.delimiters]
|
||||
block = [['\[', '\]'], ['$$', '$$']]
|
||||
inline = [['\(', '\)']]
|
||||
|
||||
[highlight]
|
||||
noClasses = false
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
[hugoVersion]
|
||||
extended = false
|
||||
min = "0.87.0"
|
|
@ -18,18 +18,22 @@ replyByEmail = false
|
|||
# robots = ""
|
||||
|
||||
disableImageOptimization = false
|
||||
disableImageOptimizationMD = false
|
||||
disableTextInHeader = false
|
||||
# backgroundImageWidth = 1200
|
||||
|
||||
# defaultBackgroundImage = "IMAGE.jpg" # used as default for background images
|
||||
# defaultFeaturedImage = "IMAGE.jpg" # used as default for featured images in all articles
|
||||
# defaultSocialImage = "/android-chrome-512x512.png" # used as default for social media sharing (Open Graph and Twitter)
|
||||
|
||||
# highlightCurrentMenuArea = true
|
||||
# smartTOC = true
|
||||
# smartTOCHideUnfocusedChildren = true
|
||||
|
||||
fingerprintAlgorithm = "sha512" # Valid values are "sha512" (default), "sha384", "sha256"
|
||||
|
||||
giteaDefaultServer = "https://git.fsfe.org"
|
||||
forgejoDefaultServer = "https://v8.next.forgejo.org"
|
||||
forgejoDefaultServer = "https://v11.next.forgejo.org"
|
||||
|
||||
[header]
|
||||
layout = "basic" # valid options: basic, fixed, fixed-fill, fixed-gradient, fixed-fill-blur
|
||||
|
@ -51,6 +55,7 @@ forgejoDefaultServer = "https://v8.next.forgejo.org"
|
|||
cardView = false
|
||||
cardViewScreenWidth = false
|
||||
layoutBackgroundBlur = false # only used when layout equals background
|
||||
disableHeroImageFilter = false # only used when layout equals hero
|
||||
|
||||
[article]
|
||||
showDate = true
|
||||
|
@ -77,10 +82,11 @@ forgejoDefaultServer = "https://v8.next.forgejo.org"
|
|||
showTableOfContents = false
|
||||
# showRelatedContent = false
|
||||
# relatedContentLimit = 3
|
||||
showTaxonomies = false
|
||||
showTaxonomies = false # use showTaxonomies OR showCategoryOnly, not both
|
||||
showCategoryOnly = false # use showTaxonomies OR showCategoryOnly, not both
|
||||
showAuthorsBadges = false
|
||||
showWordCount = true
|
||||
# sharingLinks = [ "linkedin", "twitter", "bluesky", "mastodon", "reddit", "pinterest", "facebook", "email", "whatsapp", "telegram"]
|
||||
# sharingLinks = [ "linkedin", "twitter", "bluesky", "mastodon", "reddit", "pinterest", "facebook", "email", "whatsapp", "telegram", "line"]
|
||||
showZenMode = false
|
||||
|
||||
[list]
|
||||
|
@ -164,4 +170,7 @@ forgejoDefaultServer = "https://v8.next.forgejo.org"
|
|||
|
||||
[rssnext]
|
||||
# feedId = ""
|
||||
# userId = ""
|
||||
# userId = ""
|
||||
|
||||
[advertisement]
|
||||
# adsense = ""
|
||||
|
|
|
@ -1,533 +0,0 @@
|
|||
{
|
||||
"1C Enterprise": "#814CCC",
|
||||
"4D": "#004289",
|
||||
"ABAP": "#E8274B",
|
||||
"ABAP CDS": "#555e25",
|
||||
"ActionScript": "#882B0F",
|
||||
"Ada": "#02f88c",
|
||||
"Adobe Font Metrics": "#fa0f00",
|
||||
"Agda": "#315665",
|
||||
"AGS Script": "#B9D9FF",
|
||||
"AIDL": "#34EB6B",
|
||||
"AL": "#3AA2B5",
|
||||
"Alloy": "#64C800",
|
||||
"Alpine Abuild": "#0D597F",
|
||||
"Altium Designer": "#A89663",
|
||||
"AMPL": "#E6EFBB",
|
||||
"AngelScript": "#C7D7DC",
|
||||
"Ant Build System": "#A9157E",
|
||||
"ANTLR": "#9DC3FF",
|
||||
"ApacheConf": "#d12127",
|
||||
"Apex": "#1797c0",
|
||||
"API Blueprint": "#2ACCA8",
|
||||
"APL": "#5A8164",
|
||||
"Apollo Guidance Computer": "#0B3D91",
|
||||
"AppleScript": "#101F1F",
|
||||
"Arc": "#aa2afe",
|
||||
"AsciiDoc": "#73a0c5",
|
||||
"ASL": null,
|
||||
"ASP.NET": "#9400ff",
|
||||
"AspectJ": "#a957b0",
|
||||
"Assembly": "#6E4C13",
|
||||
"Astro": "#ff5a03",
|
||||
"Asymptote": "#ff0000",
|
||||
"ATS": "#1ac620",
|
||||
"Augeas": "#9CC134",
|
||||
"AutoHotkey": "#6594b9",
|
||||
"AutoIt": "#1C3552",
|
||||
"Avro IDL": "#0040FF",
|
||||
"Awk": "#c30e9b",
|
||||
"Ballerina": "#FF5000",
|
||||
"BASIC": "#ff0000",
|
||||
"Batchfile": "#C1F12E",
|
||||
"Beef": "#a52f4e",
|
||||
"Befunge": null,
|
||||
"BibTeX": "#778899",
|
||||
"Bicep": "#519aba",
|
||||
"Bison": "#6A463F",
|
||||
"BitBake": "#00bce4",
|
||||
"Blade": "#f7523f",
|
||||
"BlitzBasic": "#00FFAE",
|
||||
"BlitzMax": "#cd6400",
|
||||
"Bluespec": "#12223c",
|
||||
"Boo": "#d4bec1",
|
||||
"Boogie": "#c80fa0",
|
||||
"Brainfuck": "#2F2530",
|
||||
"Brightscript": "#662D91",
|
||||
"Browserslist": "#ffd539",
|
||||
"C": "#555555",
|
||||
"C#": "#178600",
|
||||
"C++": "#f34b7d",
|
||||
"C2hs Haskell": null,
|
||||
"Cabal Config": "#483465",
|
||||
"Cap'n Proto": "#c42727",
|
||||
"CartoCSS": null,
|
||||
"Ceylon": "#dfa535",
|
||||
"Chapel": "#8dc63f",
|
||||
"Charity": null,
|
||||
"ChucK": "#3f8000",
|
||||
"Cirru": "#ccccff",
|
||||
"Clarion": "#db901e",
|
||||
"Classic ASP": "#6a40fd",
|
||||
"Clean": "#3F85AF",
|
||||
"Click": "#E4E6F3",
|
||||
"CLIPS": "#00A300",
|
||||
"Clojure": "#db5855",
|
||||
"Closure Templates": "#0d948f",
|
||||
"Cloud Firestore Security Rules": "#FFA000",
|
||||
"CMake": "#DA3434",
|
||||
"COBOL": null,
|
||||
"CodeQL": "#140f46",
|
||||
"CoffeeScript": "#244776",
|
||||
"ColdFusion": "#ed2cd6",
|
||||
"ColdFusion CFC": "#ed2cd6",
|
||||
"COLLADA": "#F1A42B",
|
||||
"Common Lisp": "#3fb68b",
|
||||
"Common Workflow Language": "#B5314C",
|
||||
"Component Pascal": "#B0CE4E",
|
||||
"Cool": null,
|
||||
"Coq": "#d0b68c",
|
||||
"Crystal": "#000100",
|
||||
"CSON": "#244776",
|
||||
"Csound": "#1a1a1a",
|
||||
"Csound Document": "#1a1a1a",
|
||||
"Csound Score": "#1a1a1a",
|
||||
"CSS": "#563d7c",
|
||||
"CSV": "#237346",
|
||||
"Cuda": "#3A4E3A",
|
||||
"CUE": "#5886E1",
|
||||
"CWeb": "#00007a",
|
||||
"Cycript": null,
|
||||
"Cython": "#fedf5b",
|
||||
"D": "#ba595e",
|
||||
"Dafny": "#FFEC25",
|
||||
"Darcs Patch": "#8eff23",
|
||||
"Dart": "#00B4AB",
|
||||
"DataWeave": "#003a52",
|
||||
"Dhall": "#dfafff",
|
||||
"DIGITAL Command Language": null,
|
||||
"DirectX 3D File": "#aace60",
|
||||
"DM": "#447265",
|
||||
"Dockerfile": "#384d54",
|
||||
"Dogescript": "#cca760",
|
||||
"DTrace": null,
|
||||
"Dylan": "#6c616e",
|
||||
"E": "#ccce35",
|
||||
"Easybuild": "#069406",
|
||||
"eC": "#913960",
|
||||
"Ecere Projects": "#913960",
|
||||
"ECL": "#8a1267",
|
||||
"ECLiPSe": "#001d9d",
|
||||
"EditorConfig": "#fff1f2",
|
||||
"Eiffel": "#4d6977",
|
||||
"EJS": "#a91e50",
|
||||
"Elixir": "#6e4a7e",
|
||||
"Elm": "#60B5CC",
|
||||
"Emacs Lisp": "#c065db",
|
||||
"EmberScript": "#FFF4F3",
|
||||
"EQ": "#a78649",
|
||||
"Erlang": "#B83998",
|
||||
"F#": "#b845fc",
|
||||
"F*": "#572e30",
|
||||
"Factor": "#636746",
|
||||
"Fancy": "#7b9db4",
|
||||
"Fantom": "#14253c",
|
||||
"Faust": "#c37240",
|
||||
"Fennel": "#fff3d7",
|
||||
"FIGlet Font": "#FFDDBB",
|
||||
"Filebench WML": "#F6B900",
|
||||
"Filterscript": null,
|
||||
"fish": "#4aae47",
|
||||
"Fluent": "#ffcc33",
|
||||
"FLUX": "#88ccff",
|
||||
"Forth": "#341708",
|
||||
"Fortran": "#4d41b1",
|
||||
"Fortran Free Form": "#4d41b1",
|
||||
"FreeBasic": "#867db1",
|
||||
"FreeMarker": "#0050b2",
|
||||
"Frege": "#00cafe",
|
||||
"Futhark": "#5f021f",
|
||||
"G-code": "#D08CF2",
|
||||
"Game Maker Language": "#71b417",
|
||||
"GAML": "#FFC766",
|
||||
"GAMS": "#f49a22",
|
||||
"GAP": "#0000cc",
|
||||
"GCC Machine Description": "#FFCFAB",
|
||||
"GDB": null,
|
||||
"GDScript": "#355570",
|
||||
"GEDCOM": "#003058",
|
||||
"Gemfile.lock": "#701516",
|
||||
"Genie": "#fb855d",
|
||||
"Genshi": "#951531",
|
||||
"Gentoo Ebuild": "#9400ff",
|
||||
"Gentoo Eclass": "#9400ff",
|
||||
"Gerber Image": "#d20b00",
|
||||
"Gherkin": "#5B2063",
|
||||
"Git Attributes": "#F44D27",
|
||||
"Git Config": "#F44D27",
|
||||
"GLSL": "#5686a5",
|
||||
"Glyph": "#c1ac7f",
|
||||
"Gnuplot": "#f0a9f0",
|
||||
"Go": "#00ADD8",
|
||||
"Go Checksums": "#00ADD8",
|
||||
"Go Module": "#00ADD8",
|
||||
"Golo": "#88562A",
|
||||
"Gosu": "#82937f",
|
||||
"Grace": "#615f8b",
|
||||
"Gradle": "#02303a",
|
||||
"Grammatical Framework": "#ff0000",
|
||||
"GraphQL": "#e10098",
|
||||
"Graphviz (DOT)": "#2596be",
|
||||
"Groovy": "#4298b8",
|
||||
"Groovy Server Pages": "#4298b8",
|
||||
"Hack": "#878787",
|
||||
"Haml": "#ece2a9",
|
||||
"Handlebars": "#f7931e",
|
||||
"HAProxy": "#106da9",
|
||||
"Harbour": "#0e60e3",
|
||||
"Haskell": "#5e5086",
|
||||
"Haxe": "#df7900",
|
||||
"HCL": null,
|
||||
"HiveQL": "#dce200",
|
||||
"HLSL": "#aace60",
|
||||
"HolyC": "#ffefaf",
|
||||
"HTML": "#e34c26",
|
||||
"HTML+ECR": "#2e1052",
|
||||
"HTML+EEX": "#6e4a7e",
|
||||
"HTML+ERB": "#701516",
|
||||
"HTML+PHP": "#4f5d95",
|
||||
"HTML+Razor": "#512be4",
|
||||
"HTTP": "#005C9C",
|
||||
"HXML": "#f68712",
|
||||
"Hy": "#7790B2",
|
||||
"HyPhy": null,
|
||||
"IDL": "#a3522f",
|
||||
"Idris": "#b30000",
|
||||
"Ignore List": "#000000",
|
||||
"IGOR Pro": "#0000cc",
|
||||
"ImageJ Macro": "#99AAFF",
|
||||
"Inform 7": null,
|
||||
"INI": "#d1dbe0",
|
||||
"Inno Setup": "#264b99",
|
||||
"Io": "#a9188d",
|
||||
"Ioke": "#078193",
|
||||
"Isabelle": "#FEFE00",
|
||||
"Isabelle ROOT": "#FEFE00",
|
||||
"J": "#9EEDFF",
|
||||
"JAR Manifest": "#b07219",
|
||||
"Jasmin": "#d03600",
|
||||
"Java": "#b07219",
|
||||
"Java Properties": "#2A6277",
|
||||
"Java Server Pages": "#2A6277",
|
||||
"JavaScript": "#f1e05a",
|
||||
"JavaScript+ERB": "#f1e05a",
|
||||
"Jest Snapshot": "#15c213",
|
||||
"JFlex": "#DBCA00",
|
||||
"Jinja": "#a52a22",
|
||||
"Jison": "#56b3cb",
|
||||
"Jison Lex": "#56b3cb",
|
||||
"Jolie": "#843179",
|
||||
"jq": "#c7254e",
|
||||
"JSON": "#292929",
|
||||
"JSON with Comments": "#292929",
|
||||
"JSON5": "#267CB9",
|
||||
"JSONiq": "#40d47e",
|
||||
"JSONLD": "#0c479c",
|
||||
"Jsonnet": "#0064bd",
|
||||
"Julia": "#a270ba",
|
||||
"Jupyter Notebook": "#DA5B0B",
|
||||
"Kaitai Struct": "#773b37",
|
||||
"KakouneScript": "#6f8042",
|
||||
"KiCad Layout": "#2f4aab",
|
||||
"KiCad Legacy Layout": "#2f4aab",
|
||||
"KiCad Schematic": "#2f4aab",
|
||||
"Kotlin": "#A97BFF",
|
||||
"KRL": "#28430A",
|
||||
"LabVIEW": "#fede06",
|
||||
"Lark": "#2980B9",
|
||||
"Lasso": "#999999",
|
||||
"Latte": "#f2a542",
|
||||
"Lean": null,
|
||||
"Less": "#1d365d",
|
||||
"Lex": "#DBCA00",
|
||||
"LFE": "#4C3023",
|
||||
"LilyPond": "#9ccc7c",
|
||||
"Limbo": null,
|
||||
"Liquid": "#67b8de",
|
||||
"Literate Agda": "#315665",
|
||||
"Literate CoffeeScript": "#244776",
|
||||
"Literate Haskell": "#5e5086",
|
||||
"LiveScript": "#499886",
|
||||
"LLVM": "#185619",
|
||||
"Logos": null,
|
||||
"Logtalk": "#295b9a",
|
||||
"LOLCODE": "#cc9900",
|
||||
"LookML": "#652B81",
|
||||
"LoomScript": null,
|
||||
"LSL": "#3d9970",
|
||||
"Lua": "#000080",
|
||||
"M": null,
|
||||
"M4": null,
|
||||
"M4Sugar": null,
|
||||
"Macaulay2": "#d8ffff",
|
||||
"Makefile": "#427819",
|
||||
"Mako": "#7e858d",
|
||||
"Markdown": "#083fa1",
|
||||
"Marko": "#42bff2",
|
||||
"Mask": "#f97732",
|
||||
"Mathematica": "#dd1100",
|
||||
"MATLAB": "#e16737",
|
||||
"Max": "#c4a79c",
|
||||
"MAXScript": "#00a6a6",
|
||||
"mcfunction": "#E22837",
|
||||
"Mercury": "#ff2b2b",
|
||||
"Meson": "#007800",
|
||||
"Metal": "#8f14e9",
|
||||
"MiniD": null,
|
||||
"Mirah": "#c7a938",
|
||||
"mIRC Script": "#3d57c3",
|
||||
"MLIR": "#5EC8DB",
|
||||
"Modelica": "#de1d31",
|
||||
"Modula-2": "#10253f",
|
||||
"Modula-3": "#223388",
|
||||
"Module Management System": null,
|
||||
"Monkey": null,
|
||||
"Moocode": null,
|
||||
"MoonScript": "#ff4585",
|
||||
"Motorola 68K Assembly": "#005daa",
|
||||
"MQL4": "#62A8D6",
|
||||
"MQL5": "#4A76B8",
|
||||
"MTML": "#b7e1f4",
|
||||
"MUF": null,
|
||||
"mupad": "#244963",
|
||||
"Mustache": "#724b3b",
|
||||
"Myghty": null,
|
||||
"nanorc": "#2d004d",
|
||||
"NASL": null,
|
||||
"NCL": "#28431f",
|
||||
"Nearley": "#990000",
|
||||
"Nemerle": "#3d3c6e",
|
||||
"nesC": "#94B0C7",
|
||||
"NetLinx": "#0aa0ff",
|
||||
"NetLinx+ERB": "#747faa",
|
||||
"NetLogo": "#ff6375",
|
||||
"NewLisp": "#87AED7",
|
||||
"Nextflow": "#3ac486",
|
||||
"Nginx": "#009639",
|
||||
"Nim": "#ffc200",
|
||||
"Nit": "#009917",
|
||||
"Nix": "#7e7eff",
|
||||
"NPM Config": "#cb3837",
|
||||
"NSIS": null,
|
||||
"Nu": "#c9df40",
|
||||
"NumPy": "#9C8AF9",
|
||||
"Nunjucks": "#3d8137",
|
||||
"NWScript": "#111522",
|
||||
"Objective-C": "#438eff",
|
||||
"Objective-C++": "#6866fb",
|
||||
"Objective-J": "#ff0c5a",
|
||||
"ObjectScript": "#424893",
|
||||
"OCaml": "#3be133",
|
||||
"Odin": "#60AFFE",
|
||||
"Omgrofl": "#cabbff",
|
||||
"ooc": "#b0b77e",
|
||||
"Opa": null,
|
||||
"Opal": "#f7ede0",
|
||||
"Open Policy Agent": "#7d9199",
|
||||
"OpenCL": "#ed2e2d",
|
||||
"OpenEdge ABL": "#5ce600",
|
||||
"OpenQASM": "#AA70FF",
|
||||
"OpenRC runscript": null,
|
||||
"OpenSCAD": "#e5cd45",
|
||||
"Org": "#77aa99",
|
||||
"Ox": null,
|
||||
"Oxygene": "#cdd0e3",
|
||||
"Oz": "#fab738",
|
||||
"P4": "#7055b5",
|
||||
"Pan": "#cc0000",
|
||||
"Papyrus": "#6600cc",
|
||||
"Parrot": "#f3ca0a",
|
||||
"Parrot Assembly": null,
|
||||
"Parrot Internal Representation": null,
|
||||
"Pascal": "#E3F171",
|
||||
"Pawn": "#dbb284",
|
||||
"PEG.js": "#234d6b",
|
||||
"Pep8": "#C76F5B",
|
||||
"Perl": "#0298c3",
|
||||
"PHP": "#4F5D95",
|
||||
"PicoLisp": "#6067af",
|
||||
"PigLatin": "#fcd7de",
|
||||
"Pike": "#005390",
|
||||
"PLpgSQL": "#336790",
|
||||
"PLSQL": "#dad8d8",
|
||||
"PogoScript": "#d80074",
|
||||
"Pony": null,
|
||||
"PostCSS": "#dc3a0c",
|
||||
"PostScript": "#da291c",
|
||||
"POV-Ray SDL": "#6bac65",
|
||||
"PowerBuilder": "#8f0f8d",
|
||||
"PowerShell": "#012456",
|
||||
"Prisma": "#0c344b",
|
||||
"Processing": "#0096D8",
|
||||
"Prolog": "#74283c",
|
||||
"Propeller Spin": "#7fa2a7",
|
||||
"Pug": "#a86454",
|
||||
"Puppet": "#302B6D",
|
||||
"PureBasic": "#5a6986",
|
||||
"PureScript": "#1D222D",
|
||||
"Python": "#3572A5",
|
||||
"Python console": "#3572A5",
|
||||
"Python traceback": "#3572A5",
|
||||
"q": "#0040cd",
|
||||
"Q#": "#fed659",
|
||||
"QMake": null,
|
||||
"QML": "#44a51c",
|
||||
"Qt Script": "#00b841",
|
||||
"Quake": "#882233",
|
||||
"R": "#198CE7",
|
||||
"Racket": "#3c5caa",
|
||||
"Ragel": "#9d5200",
|
||||
"Raku": "#0000fb",
|
||||
"RAML": "#77d9fb",
|
||||
"Rascal": "#fffaa0",
|
||||
"RDoc": "#701516",
|
||||
"REALbasic": null,
|
||||
"Reason": "#ff5847",
|
||||
"Rebol": "#358a5b",
|
||||
"Record Jar": "#0673ba",
|
||||
"Red": "#f50000",
|
||||
"Redcode": null,
|
||||
"Regular Expression": "#009a00",
|
||||
"Ren'Py": "#ff7f7f",
|
||||
"RenderScript": null,
|
||||
"ReScript": "#ed5051",
|
||||
"reStructuredText": "#141414",
|
||||
"REXX": "#d90e09",
|
||||
"Ring": "#2D54CB",
|
||||
"Riot": "#A71E49",
|
||||
"RMarkdown": "#198ce7",
|
||||
"RobotFramework": "#00c0b5",
|
||||
"Roff": "#ecdebe",
|
||||
"Roff Manpage": "#ecdebe",
|
||||
"Rouge": "#cc0088",
|
||||
"RPC": null,
|
||||
"Ruby": "#701516",
|
||||
"RUNOFF": "#665a4e",
|
||||
"Rust": "#dea584",
|
||||
"Sage": null,
|
||||
"SaltStack": "#646464",
|
||||
"SAS": "#B34936",
|
||||
"Sass": "#a53b70",
|
||||
"Scala": "#c22d40",
|
||||
"Scaml": "#bd181a",
|
||||
"Scheme": "#1e4aec",
|
||||
"Scilab": "#ca0f21",
|
||||
"SCSS": "#c6538c",
|
||||
"sed": "#64b970",
|
||||
"Self": "#0579aa",
|
||||
"ShaderLab": "#222c37",
|
||||
"Shell": "#89e051",
|
||||
"ShellSession": null,
|
||||
"Shen": "#120F14",
|
||||
"Sieve": null,
|
||||
"Singularity": "#64E6AD",
|
||||
"Slash": "#007eff",
|
||||
"Slice": "#003fa2",
|
||||
"Slim": "#2b2b2b",
|
||||
"Smali": null,
|
||||
"Smalltalk": "#596706",
|
||||
"Smarty": "#f0c040",
|
||||
"SmPL": "#c94949",
|
||||
"SMT": null,
|
||||
"Solidity": "#AA6746",
|
||||
"SourcePawn": "#f69e1d",
|
||||
"SPARQL": "#0C4597",
|
||||
"SQF": "#3F3F3F",
|
||||
"SQL": "#e38c00",
|
||||
"SQLPL": "#e38c00",
|
||||
"Squirrel": "#800000",
|
||||
"SRecode Template": "#348a34",
|
||||
"Stan": "#b2011d",
|
||||
"Standard ML": "#dc566d",
|
||||
"Starlark": "#76d275",
|
||||
"Stata": "#1a5f91",
|
||||
"StringTemplate": "#3fb34f",
|
||||
"Stylus": "#ff6347",
|
||||
"SubRip Text": "#9e0101",
|
||||
"SugarSS": "#2fcc9f",
|
||||
"SuperCollider": "#46390b",
|
||||
"Svelte": "#ff3e00",
|
||||
"SVG": "#ff9900",
|
||||
"Swift": "#F05138",
|
||||
"SWIG": null,
|
||||
"SystemVerilog": "#DAE1C2",
|
||||
"Tcl": "#e4cc98",
|
||||
"Tcsh": null,
|
||||
"Terra": "#00004c",
|
||||
"TeX": "#3D6117",
|
||||
"Textile": "#ffe7ac",
|
||||
"TextMate Properties": "#df66e4",
|
||||
"Thrift": "#D12127",
|
||||
"TI Program": "#A0AA87",
|
||||
"TLA": "#4b0079",
|
||||
"TOML": "#9c4221",
|
||||
"TSQL": "#e38c00",
|
||||
"TSV": "#237346",
|
||||
"TSX": "#2b7489",
|
||||
"Turing": "#cf142b",
|
||||
"Twig": "#c1d026",
|
||||
"TXL": "#0178b8",
|
||||
"TypeScript": "#2b7489",
|
||||
"Unified Parallel C": "#4e3617",
|
||||
"Unity3D Asset": "#222c37",
|
||||
"Unix Assembly": null,
|
||||
"Uno": "#9933cc",
|
||||
"UnrealScript": "#a54c4d",
|
||||
"UrWeb": "#ccccee",
|
||||
"V": "#4f87c4",
|
||||
"Vala": "#fbe5cd",
|
||||
"Valve Data Format": "#f26025",
|
||||
"VBA": "#867db1",
|
||||
"VBScript": "#15dcdc",
|
||||
"VCL": "#148AA8",
|
||||
"Verilog": "#b2b7f8",
|
||||
"VHDL": "#adb2cb",
|
||||
"Vim Help File": "#199f4b",
|
||||
"Vim Script": "#199f4b",
|
||||
"Vim Snippet": "#199f4b",
|
||||
"Visual Basic .NET": "#945db7",
|
||||
"Volt": "#1F1F1F",
|
||||
"Vue": "#41b883",
|
||||
"wdl": "#42f1f4",
|
||||
"Web Ontology Language": "#5b70bd",
|
||||
"WebAssembly": "#04133b",
|
||||
"WebIDL": null,
|
||||
"Wikitext": "#fc5757",
|
||||
"Windows Registry Entries": "#52d5ff",
|
||||
"wisp": "#7582D1",
|
||||
"Wollok": "#a23738",
|
||||
"World of Warcraft Addon Data": "#f7e43f",
|
||||
"X10": "#4B6BEF",
|
||||
"xBase": "#403a40",
|
||||
"XC": "#99DA07",
|
||||
"XML": "#0060ac",
|
||||
"XML Property List": "#0060ac",
|
||||
"Xojo": "#81bd41",
|
||||
"Xonsh": "#285EEF",
|
||||
"XProc": null,
|
||||
"XQuery": "#5232e7",
|
||||
"XS": null,
|
||||
"XSLT": "#EB8CEB",
|
||||
"Xtend": "#24255d",
|
||||
"Yacc": "#4B6C4B",
|
||||
"YAML": "#cb171e",
|
||||
"YARA": "#220000",
|
||||
"YASnippet": "#32AB90",
|
||||
"ZAP": "#0d665e",
|
||||
"Zeek": null,
|
||||
"ZenScript": "#00BCD1",
|
||||
"Zephir": "#118f9e",
|
||||
"Zig": "#ec915c",
|
||||
"ZIL": "#dc75e5",
|
||||
"Zimpl": "#d67711"
|
||||
}
|
|
@ -1,533 +0,0 @@
|
|||
{
|
||||
"1C Enterprise": "#814CCC",
|
||||
"4D": "#004289",
|
||||
"ABAP": "#E8274B",
|
||||
"ABAP CDS": "#555e25",
|
||||
"ActionScript": "#882B0F",
|
||||
"Ada": "#02f88c",
|
||||
"Adobe Font Metrics": "#fa0f00",
|
||||
"Agda": "#315665",
|
||||
"AGS Script": "#B9D9FF",
|
||||
"AIDL": "#34EB6B",
|
||||
"AL": "#3AA2B5",
|
||||
"Alloy": "#64C800",
|
||||
"Alpine Abuild": "#0D597F",
|
||||
"Altium Designer": "#A89663",
|
||||
"AMPL": "#E6EFBB",
|
||||
"AngelScript": "#C7D7DC",
|
||||
"Ant Build System": "#A9157E",
|
||||
"ANTLR": "#9DC3FF",
|
||||
"ApacheConf": "#d12127",
|
||||
"Apex": "#1797c0",
|
||||
"API Blueprint": "#2ACCA8",
|
||||
"APL": "#5A8164",
|
||||
"Apollo Guidance Computer": "#0B3D91",
|
||||
"AppleScript": "#101F1F",
|
||||
"Arc": "#aa2afe",
|
||||
"AsciiDoc": "#73a0c5",
|
||||
"ASL": null,
|
||||
"ASP.NET": "#9400ff",
|
||||
"AspectJ": "#a957b0",
|
||||
"Assembly": "#6E4C13",
|
||||
"Astro": "#ff5a03",
|
||||
"Asymptote": "#ff0000",
|
||||
"ATS": "#1ac620",
|
||||
"Augeas": "#9CC134",
|
||||
"AutoHotkey": "#6594b9",
|
||||
"AutoIt": "#1C3552",
|
||||
"Avro IDL": "#0040FF",
|
||||
"Awk": "#c30e9b",
|
||||
"Ballerina": "#FF5000",
|
||||
"BASIC": "#ff0000",
|
||||
"Batchfile": "#C1F12E",
|
||||
"Beef": "#a52f4e",
|
||||
"Befunge": null,
|
||||
"BibTeX": "#778899",
|
||||
"Bicep": "#519aba",
|
||||
"Bison": "#6A463F",
|
||||
"BitBake": "#00bce4",
|
||||
"Blade": "#f7523f",
|
||||
"BlitzBasic": "#00FFAE",
|
||||
"BlitzMax": "#cd6400",
|
||||
"Bluespec": "#12223c",
|
||||
"Boo": "#d4bec1",
|
||||
"Boogie": "#c80fa0",
|
||||
"Brainfuck": "#2F2530",
|
||||
"Brightscript": "#662D91",
|
||||
"Browserslist": "#ffd539",
|
||||
"C": "#555555",
|
||||
"C#": "#178600",
|
||||
"C++": "#f34b7d",
|
||||
"C2hs Haskell": null,
|
||||
"Cabal Config": "#483465",
|
||||
"Cap'n Proto": "#c42727",
|
||||
"CartoCSS": null,
|
||||
"Ceylon": "#dfa535",
|
||||
"Chapel": "#8dc63f",
|
||||
"Charity": null,
|
||||
"ChucK": "#3f8000",
|
||||
"Cirru": "#ccccff",
|
||||
"Clarion": "#db901e",
|
||||
"Classic ASP": "#6a40fd",
|
||||
"Clean": "#3F85AF",
|
||||
"Click": "#E4E6F3",
|
||||
"CLIPS": "#00A300",
|
||||
"Clojure": "#db5855",
|
||||
"Closure Templates": "#0d948f",
|
||||
"Cloud Firestore Security Rules": "#FFA000",
|
||||
"CMake": "#DA3434",
|
||||
"COBOL": null,
|
||||
"CodeQL": "#140f46",
|
||||
"CoffeeScript": "#244776",
|
||||
"ColdFusion": "#ed2cd6",
|
||||
"ColdFusion CFC": "#ed2cd6",
|
||||
"COLLADA": "#F1A42B",
|
||||
"Common Lisp": "#3fb68b",
|
||||
"Common Workflow Language": "#B5314C",
|
||||
"Component Pascal": "#B0CE4E",
|
||||
"Cool": null,
|
||||
"Coq": "#d0b68c",
|
||||
"Crystal": "#000100",
|
||||
"CSON": "#244776",
|
||||
"Csound": "#1a1a1a",
|
||||
"Csound Document": "#1a1a1a",
|
||||
"Csound Score": "#1a1a1a",
|
||||
"CSS": "#563d7c",
|
||||
"CSV": "#237346",
|
||||
"Cuda": "#3A4E3A",
|
||||
"CUE": "#5886E1",
|
||||
"CWeb": "#00007a",
|
||||
"Cycript": null,
|
||||
"Cython": "#fedf5b",
|
||||
"D": "#ba595e",
|
||||
"Dafny": "#FFEC25",
|
||||
"Darcs Patch": "#8eff23",
|
||||
"Dart": "#00B4AB",
|
||||
"DataWeave": "#003a52",
|
||||
"Dhall": "#dfafff",
|
||||
"DIGITAL Command Language": null,
|
||||
"DirectX 3D File": "#aace60",
|
||||
"DM": "#447265",
|
||||
"Dockerfile": "#384d54",
|
||||
"Dogescript": "#cca760",
|
||||
"DTrace": null,
|
||||
"Dylan": "#6c616e",
|
||||
"E": "#ccce35",
|
||||
"Easybuild": "#069406",
|
||||
"eC": "#913960",
|
||||
"Ecere Projects": "#913960",
|
||||
"ECL": "#8a1267",
|
||||
"ECLiPSe": "#001d9d",
|
||||
"EditorConfig": "#fff1f2",
|
||||
"Eiffel": "#4d6977",
|
||||
"EJS": "#a91e50",
|
||||
"Elixir": "#6e4a7e",
|
||||
"Elm": "#60B5CC",
|
||||
"Emacs Lisp": "#c065db",
|
||||
"EmberScript": "#FFF4F3",
|
||||
"EQ": "#a78649",
|
||||
"Erlang": "#B83998",
|
||||
"F#": "#b845fc",
|
||||
"F*": "#572e30",
|
||||
"Factor": "#636746",
|
||||
"Fancy": "#7b9db4",
|
||||
"Fantom": "#14253c",
|
||||
"Faust": "#c37240",
|
||||
"Fennel": "#fff3d7",
|
||||
"FIGlet Font": "#FFDDBB",
|
||||
"Filebench WML": "#F6B900",
|
||||
"Filterscript": null,
|
||||
"fish": "#4aae47",
|
||||
"Fluent": "#ffcc33",
|
||||
"FLUX": "#88ccff",
|
||||
"Forth": "#341708",
|
||||
"Fortran": "#4d41b1",
|
||||
"Fortran Free Form": "#4d41b1",
|
||||
"FreeBasic": "#867db1",
|
||||
"FreeMarker": "#0050b2",
|
||||
"Frege": "#00cafe",
|
||||
"Futhark": "#5f021f",
|
||||
"G-code": "#D08CF2",
|
||||
"Game Maker Language": "#71b417",
|
||||
"GAML": "#FFC766",
|
||||
"GAMS": "#f49a22",
|
||||
"GAP": "#0000cc",
|
||||
"GCC Machine Description": "#FFCFAB",
|
||||
"GDB": null,
|
||||
"GDScript": "#355570",
|
||||
"GEDCOM": "#003058",
|
||||
"Gemfile.lock": "#701516",
|
||||
"Genie": "#fb855d",
|
||||
"Genshi": "#951531",
|
||||
"Gentoo Ebuild": "#9400ff",
|
||||
"Gentoo Eclass": "#9400ff",
|
||||
"Gerber Image": "#d20b00",
|
||||
"Gherkin": "#5B2063",
|
||||
"Git Attributes": "#F44D27",
|
||||
"Git Config": "#F44D27",
|
||||
"GLSL": "#5686a5",
|
||||
"Glyph": "#c1ac7f",
|
||||
"Gnuplot": "#f0a9f0",
|
||||
"Go": "#00ADD8",
|
||||
"Go Checksums": "#00ADD8",
|
||||
"Go Module": "#00ADD8",
|
||||
"Golo": "#88562A",
|
||||
"Gosu": "#82937f",
|
||||
"Grace": "#615f8b",
|
||||
"Gradle": "#02303a",
|
||||
"Grammatical Framework": "#ff0000",
|
||||
"GraphQL": "#e10098",
|
||||
"Graphviz (DOT)": "#2596be",
|
||||
"Groovy": "#4298b8",
|
||||
"Groovy Server Pages": "#4298b8",
|
||||
"Hack": "#878787",
|
||||
"Haml": "#ece2a9",
|
||||
"Handlebars": "#f7931e",
|
||||
"HAProxy": "#106da9",
|
||||
"Harbour": "#0e60e3",
|
||||
"Haskell": "#5e5086",
|
||||
"Haxe": "#df7900",
|
||||
"HCL": null,
|
||||
"HiveQL": "#dce200",
|
||||
"HLSL": "#aace60",
|
||||
"HolyC": "#ffefaf",
|
||||
"HTML": "#e34c26",
|
||||
"HTML+ECR": "#2e1052",
|
||||
"HTML+EEX": "#6e4a7e",
|
||||
"HTML+ERB": "#701516",
|
||||
"HTML+PHP": "#4f5d95",
|
||||
"HTML+Razor": "#512be4",
|
||||
"HTTP": "#005C9C",
|
||||
"HXML": "#f68712",
|
||||
"Hy": "#7790B2",
|
||||
"HyPhy": null,
|
||||
"IDL": "#a3522f",
|
||||
"Idris": "#b30000",
|
||||
"Ignore List": "#000000",
|
||||
"IGOR Pro": "#0000cc",
|
||||
"ImageJ Macro": "#99AAFF",
|
||||
"Inform 7": null,
|
||||
"INI": "#d1dbe0",
|
||||
"Inno Setup": "#264b99",
|
||||
"Io": "#a9188d",
|
||||
"Ioke": "#078193",
|
||||
"Isabelle": "#FEFE00",
|
||||
"Isabelle ROOT": "#FEFE00",
|
||||
"J": "#9EEDFF",
|
||||
"JAR Manifest": "#b07219",
|
||||
"Jasmin": "#d03600",
|
||||
"Java": "#b07219",
|
||||
"Java Properties": "#2A6277",
|
||||
"Java Server Pages": "#2A6277",
|
||||
"JavaScript": "#f1e05a",
|
||||
"JavaScript+ERB": "#f1e05a",
|
||||
"Jest Snapshot": "#15c213",
|
||||
"JFlex": "#DBCA00",
|
||||
"Jinja": "#a52a22",
|
||||
"Jison": "#56b3cb",
|
||||
"Jison Lex": "#56b3cb",
|
||||
"Jolie": "#843179",
|
||||
"jq": "#c7254e",
|
||||
"JSON": "#292929",
|
||||
"JSON with Comments": "#292929",
|
||||
"JSON5": "#267CB9",
|
||||
"JSONiq": "#40d47e",
|
||||
"JSONLD": "#0c479c",
|
||||
"Jsonnet": "#0064bd",
|
||||
"Julia": "#a270ba",
|
||||
"Jupyter Notebook": "#DA5B0B",
|
||||
"Kaitai Struct": "#773b37",
|
||||
"KakouneScript": "#6f8042",
|
||||
"KiCad Layout": "#2f4aab",
|
||||
"KiCad Legacy Layout": "#2f4aab",
|
||||
"KiCad Schematic": "#2f4aab",
|
||||
"Kotlin": "#A97BFF",
|
||||
"KRL": "#28430A",
|
||||
"LabVIEW": "#fede06",
|
||||
"Lark": "#2980B9",
|
||||
"Lasso": "#999999",
|
||||
"Latte": "#f2a542",
|
||||
"Lean": null,
|
||||
"Less": "#1d365d",
|
||||
"Lex": "#DBCA00",
|
||||
"LFE": "#4C3023",
|
||||
"LilyPond": "#9ccc7c",
|
||||
"Limbo": null,
|
||||
"Liquid": "#67b8de",
|
||||
"Literate Agda": "#315665",
|
||||
"Literate CoffeeScript": "#244776",
|
||||
"Literate Haskell": "#5e5086",
|
||||
"LiveScript": "#499886",
|
||||
"LLVM": "#185619",
|
||||
"Logos": null,
|
||||
"Logtalk": "#295b9a",
|
||||
"LOLCODE": "#cc9900",
|
||||
"LookML": "#652B81",
|
||||
"LoomScript": null,
|
||||
"LSL": "#3d9970",
|
||||
"Lua": "#000080",
|
||||
"M": null,
|
||||
"M4": null,
|
||||
"M4Sugar": null,
|
||||
"Macaulay2": "#d8ffff",
|
||||
"Makefile": "#427819",
|
||||
"Mako": "#7e858d",
|
||||
"Markdown": "#083fa1",
|
||||
"Marko": "#42bff2",
|
||||
"Mask": "#f97732",
|
||||
"Mathematica": "#dd1100",
|
||||
"MATLAB": "#e16737",
|
||||
"Max": "#c4a79c",
|
||||
"MAXScript": "#00a6a6",
|
||||
"mcfunction": "#E22837",
|
||||
"Mercury": "#ff2b2b",
|
||||
"Meson": "#007800",
|
||||
"Metal": "#8f14e9",
|
||||
"MiniD": null,
|
||||
"Mirah": "#c7a938",
|
||||
"mIRC Script": "#3d57c3",
|
||||
"MLIR": "#5EC8DB",
|
||||
"Modelica": "#de1d31",
|
||||
"Modula-2": "#10253f",
|
||||
"Modula-3": "#223388",
|
||||
"Module Management System": null,
|
||||
"Monkey": null,
|
||||
"Moocode": null,
|
||||
"MoonScript": "#ff4585",
|
||||
"Motorola 68K Assembly": "#005daa",
|
||||
"MQL4": "#62A8D6",
|
||||
"MQL5": "#4A76B8",
|
||||
"MTML": "#b7e1f4",
|
||||
"MUF": null,
|
||||
"mupad": "#244963",
|
||||
"Mustache": "#724b3b",
|
||||
"Myghty": null,
|
||||
"nanorc": "#2d004d",
|
||||
"NASL": null,
|
||||
"NCL": "#28431f",
|
||||
"Nearley": "#990000",
|
||||
"Nemerle": "#3d3c6e",
|
||||
"nesC": "#94B0C7",
|
||||
"NetLinx": "#0aa0ff",
|
||||
"NetLinx+ERB": "#747faa",
|
||||
"NetLogo": "#ff6375",
|
||||
"NewLisp": "#87AED7",
|
||||
"Nextflow": "#3ac486",
|
||||
"Nginx": "#009639",
|
||||
"Nim": "#ffc200",
|
||||
"Nit": "#009917",
|
||||
"Nix": "#7e7eff",
|
||||
"NPM Config": "#cb3837",
|
||||
"NSIS": null,
|
||||
"Nu": "#c9df40",
|
||||
"NumPy": "#9C8AF9",
|
||||
"Nunjucks": "#3d8137",
|
||||
"NWScript": "#111522",
|
||||
"Objective-C": "#438eff",
|
||||
"Objective-C++": "#6866fb",
|
||||
"Objective-J": "#ff0c5a",
|
||||
"ObjectScript": "#424893",
|
||||
"OCaml": "#3be133",
|
||||
"Odin": "#60AFFE",
|
||||
"Omgrofl": "#cabbff",
|
||||
"ooc": "#b0b77e",
|
||||
"Opa": null,
|
||||
"Opal": "#f7ede0",
|
||||
"Open Policy Agent": "#7d9199",
|
||||
"OpenCL": "#ed2e2d",
|
||||
"OpenEdge ABL": "#5ce600",
|
||||
"OpenQASM": "#AA70FF",
|
||||
"OpenRC runscript": null,
|
||||
"OpenSCAD": "#e5cd45",
|
||||
"Org": "#77aa99",
|
||||
"Ox": null,
|
||||
"Oxygene": "#cdd0e3",
|
||||
"Oz": "#fab738",
|
||||
"P4": "#7055b5",
|
||||
"Pan": "#cc0000",
|
||||
"Papyrus": "#6600cc",
|
||||
"Parrot": "#f3ca0a",
|
||||
"Parrot Assembly": null,
|
||||
"Parrot Internal Representation": null,
|
||||
"Pascal": "#E3F171",
|
||||
"Pawn": "#dbb284",
|
||||
"PEG.js": "#234d6b",
|
||||
"Pep8": "#C76F5B",
|
||||
"Perl": "#0298c3",
|
||||
"PHP": "#4F5D95",
|
||||
"PicoLisp": "#6067af",
|
||||
"PigLatin": "#fcd7de",
|
||||
"Pike": "#005390",
|
||||
"PLpgSQL": "#336790",
|
||||
"PLSQL": "#dad8d8",
|
||||
"PogoScript": "#d80074",
|
||||
"Pony": null,
|
||||
"PostCSS": "#dc3a0c",
|
||||
"PostScript": "#da291c",
|
||||
"POV-Ray SDL": "#6bac65",
|
||||
"PowerBuilder": "#8f0f8d",
|
||||
"PowerShell": "#012456",
|
||||
"Prisma": "#0c344b",
|
||||
"Processing": "#0096D8",
|
||||
"Prolog": "#74283c",
|
||||
"Propeller Spin": "#7fa2a7",
|
||||
"Pug": "#a86454",
|
||||
"Puppet": "#302B6D",
|
||||
"PureBasic": "#5a6986",
|
||||
"PureScript": "#1D222D",
|
||||
"Python": "#3572A5",
|
||||
"Python console": "#3572A5",
|
||||
"Python traceback": "#3572A5",
|
||||
"q": "#0040cd",
|
||||
"Q#": "#fed659",
|
||||
"QMake": null,
|
||||
"QML": "#44a51c",
|
||||
"Qt Script": "#00b841",
|
||||
"Quake": "#882233",
|
||||
"R": "#198CE7",
|
||||
"Racket": "#3c5caa",
|
||||
"Ragel": "#9d5200",
|
||||
"Raku": "#0000fb",
|
||||
"RAML": "#77d9fb",
|
||||
"Rascal": "#fffaa0",
|
||||
"RDoc": "#701516",
|
||||
"REALbasic": null,
|
||||
"Reason": "#ff5847",
|
||||
"Rebol": "#358a5b",
|
||||
"Record Jar": "#0673ba",
|
||||
"Red": "#f50000",
|
||||
"Redcode": null,
|
||||
"Regular Expression": "#009a00",
|
||||
"Ren'Py": "#ff7f7f",
|
||||
"RenderScript": null,
|
||||
"ReScript": "#ed5051",
|
||||
"reStructuredText": "#141414",
|
||||
"REXX": "#d90e09",
|
||||
"Ring": "#2D54CB",
|
||||
"Riot": "#A71E49",
|
||||
"RMarkdown": "#198ce7",
|
||||
"RobotFramework": "#00c0b5",
|
||||
"Roff": "#ecdebe",
|
||||
"Roff Manpage": "#ecdebe",
|
||||
"Rouge": "#cc0088",
|
||||
"RPC": null,
|
||||
"Ruby": "#701516",
|
||||
"RUNOFF": "#665a4e",
|
||||
"Rust": "#dea584",
|
||||
"Sage": null,
|
||||
"SaltStack": "#646464",
|
||||
"SAS": "#B34936",
|
||||
"Sass": "#a53b70",
|
||||
"Scala": "#c22d40",
|
||||
"Scaml": "#bd181a",
|
||||
"Scheme": "#1e4aec",
|
||||
"Scilab": "#ca0f21",
|
||||
"SCSS": "#c6538c",
|
||||
"sed": "#64b970",
|
||||
"Self": "#0579aa",
|
||||
"ShaderLab": "#222c37",
|
||||
"Shell": "#89e051",
|
||||
"ShellSession": null,
|
||||
"Shen": "#120F14",
|
||||
"Sieve": null,
|
||||
"Singularity": "#64E6AD",
|
||||
"Slash": "#007eff",
|
||||
"Slice": "#003fa2",
|
||||
"Slim": "#2b2b2b",
|
||||
"Smali": null,
|
||||
"Smalltalk": "#596706",
|
||||
"Smarty": "#f0c040",
|
||||
"SmPL": "#c94949",
|
||||
"SMT": null,
|
||||
"Solidity": "#AA6746",
|
||||
"SourcePawn": "#f69e1d",
|
||||
"SPARQL": "#0C4597",
|
||||
"SQF": "#3F3F3F",
|
||||
"SQL": "#e38c00",
|
||||
"SQLPL": "#e38c00",
|
||||
"Squirrel": "#800000",
|
||||
"SRecode Template": "#348a34",
|
||||
"Stan": "#b2011d",
|
||||
"Standard ML": "#dc566d",
|
||||
"Starlark": "#76d275",
|
||||
"Stata": "#1a5f91",
|
||||
"StringTemplate": "#3fb34f",
|
||||
"Stylus": "#ff6347",
|
||||
"SubRip Text": "#9e0101",
|
||||
"SugarSS": "#2fcc9f",
|
||||
"SuperCollider": "#46390b",
|
||||
"Svelte": "#ff3e00",
|
||||
"SVG": "#ff9900",
|
||||
"Swift": "#F05138",
|
||||
"SWIG": null,
|
||||
"SystemVerilog": "#DAE1C2",
|
||||
"Tcl": "#e4cc98",
|
||||
"Tcsh": null,
|
||||
"Terra": "#00004c",
|
||||
"TeX": "#3D6117",
|
||||
"Textile": "#ffe7ac",
|
||||
"TextMate Properties": "#df66e4",
|
||||
"Thrift": "#D12127",
|
||||
"TI Program": "#A0AA87",
|
||||
"TLA": "#4b0079",
|
||||
"TOML": "#9c4221",
|
||||
"TSQL": "#e38c00",
|
||||
"TSV": "#237346",
|
||||
"TSX": "#2b7489",
|
||||
"Turing": "#cf142b",
|
||||
"Twig": "#c1d026",
|
||||
"TXL": "#0178b8",
|
||||
"TypeScript": "#2b7489",
|
||||
"Unified Parallel C": "#4e3617",
|
||||
"Unity3D Asset": "#222c37",
|
||||
"Unix Assembly": null,
|
||||
"Uno": "#9933cc",
|
||||
"UnrealScript": "#a54c4d",
|
||||
"UrWeb": "#ccccee",
|
||||
"V": "#4f87c4",
|
||||
"Vala": "#fbe5cd",
|
||||
"Valve Data Format": "#f26025",
|
||||
"VBA": "#867db1",
|
||||
"VBScript": "#15dcdc",
|
||||
"VCL": "#148AA8",
|
||||
"Verilog": "#b2b7f8",
|
||||
"VHDL": "#adb2cb",
|
||||
"Vim Help File": "#199f4b",
|
||||
"Vim Script": "#199f4b",
|
||||
"Vim Snippet": "#199f4b",
|
||||
"Visual Basic .NET": "#945db7",
|
||||
"Volt": "#1F1F1F",
|
||||
"Vue": "#41b883",
|
||||
"wdl": "#42f1f4",
|
||||
"Web Ontology Language": "#5b70bd",
|
||||
"WebAssembly": "#04133b",
|
||||
"WebIDL": null,
|
||||
"Wikitext": "#fc5757",
|
||||
"Windows Registry Entries": "#52d5ff",
|
||||
"wisp": "#7582D1",
|
||||
"Wollok": "#a23738",
|
||||
"World of Warcraft Addon Data": "#f7e43f",
|
||||
"X10": "#4B6BEF",
|
||||
"xBase": "#403a40",
|
||||
"XC": "#99DA07",
|
||||
"XML": "#0060ac",
|
||||
"XML Property List": "#0060ac",
|
||||
"Xojo": "#81bd41",
|
||||
"Xonsh": "#285EEF",
|
||||
"XProc": null,
|
||||
"XQuery": "#5232e7",
|
||||
"XS": null,
|
||||
"XSLT": "#EB8CEB",
|
||||
"Xtend": "#24255d",
|
||||
"Yacc": "#4B6C4B",
|
||||
"YAML": "#cb171e",
|
||||
"YARA": "#220000",
|
||||
"YASnippet": "#32AB90",
|
||||
"ZAP": "#0d665e",
|
||||
"Zeek": null,
|
||||
"ZenScript": "#00BCD1",
|
||||
"Zephir": "#118f9e",
|
||||
"Zig": "#ec915c",
|
||||
"ZIL": "#dc75e5",
|
||||
"Zimpl": "#d67711"
|
||||
}
|
|
@ -1,533 +0,0 @@
|
|||
{
|
||||
"1C Enterprise": "#814CCC",
|
||||
"4D": "#004289",
|
||||
"ABAP": "#E8274B",
|
||||
"ABAP CDS": "#555e25",
|
||||
"ActionScript": "#882B0F",
|
||||
"Ada": "#02f88c",
|
||||
"Adobe Font Metrics": "#fa0f00",
|
||||
"Agda": "#315665",
|
||||
"AGS Script": "#B9D9FF",
|
||||
"AIDL": "#34EB6B",
|
||||
"AL": "#3AA2B5",
|
||||
"Alloy": "#64C800",
|
||||
"Alpine Abuild": "#0D597F",
|
||||
"Altium Designer": "#A89663",
|
||||
"AMPL": "#E6EFBB",
|
||||
"AngelScript": "#C7D7DC",
|
||||
"Ant Build System": "#A9157E",
|
||||
"ANTLR": "#9DC3FF",
|
||||
"ApacheConf": "#d12127",
|
||||
"Apex": "#1797c0",
|
||||
"API Blueprint": "#2ACCA8",
|
||||
"APL": "#5A8164",
|
||||
"Apollo Guidance Computer": "#0B3D91",
|
||||
"AppleScript": "#101F1F",
|
||||
"Arc": "#aa2afe",
|
||||
"AsciiDoc": "#73a0c5",
|
||||
"ASL": null,
|
||||
"ASP.NET": "#9400ff",
|
||||
"AspectJ": "#a957b0",
|
||||
"Assembly": "#6E4C13",
|
||||
"Astro": "#ff5a03",
|
||||
"Asymptote": "#ff0000",
|
||||
"ATS": "#1ac620",
|
||||
"Augeas": "#9CC134",
|
||||
"AutoHotkey": "#6594b9",
|
||||
"AutoIt": "#1C3552",
|
||||
"Avro IDL": "#0040FF",
|
||||
"Awk": "#c30e9b",
|
||||
"Ballerina": "#FF5000",
|
||||
"BASIC": "#ff0000",
|
||||
"Batchfile": "#C1F12E",
|
||||
"Beef": "#a52f4e",
|
||||
"Befunge": null,
|
||||
"BibTeX": "#778899",
|
||||
"Bicep": "#519aba",
|
||||
"Bison": "#6A463F",
|
||||
"BitBake": "#00bce4",
|
||||
"Blade": "#f7523f",
|
||||
"BlitzBasic": "#00FFAE",
|
||||
"BlitzMax": "#cd6400",
|
||||
"Bluespec": "#12223c",
|
||||
"Boo": "#d4bec1",
|
||||
"Boogie": "#c80fa0",
|
||||
"Brainfuck": "#2F2530",
|
||||
"Brightscript": "#662D91",
|
||||
"Browserslist": "#ffd539",
|
||||
"C": "#555555",
|
||||
"C#": "#178600",
|
||||
"C++": "#f34b7d",
|
||||
"C2hs Haskell": null,
|
||||
"Cabal Config": "#483465",
|
||||
"Cap'n Proto": "#c42727",
|
||||
"CartoCSS": null,
|
||||
"Ceylon": "#dfa535",
|
||||
"Chapel": "#8dc63f",
|
||||
"Charity": null,
|
||||
"ChucK": "#3f8000",
|
||||
"Cirru": "#ccccff",
|
||||
"Clarion": "#db901e",
|
||||
"Classic ASP": "#6a40fd",
|
||||
"Clean": "#3F85AF",
|
||||
"Click": "#E4E6F3",
|
||||
"CLIPS": "#00A300",
|
||||
"Clojure": "#db5855",
|
||||
"Closure Templates": "#0d948f",
|
||||
"Cloud Firestore Security Rules": "#FFA000",
|
||||
"CMake": "#DA3434",
|
||||
"COBOL": null,
|
||||
"CodeQL": "#140f46",
|
||||
"CoffeeScript": "#244776",
|
||||
"ColdFusion": "#ed2cd6",
|
||||
"ColdFusion CFC": "#ed2cd6",
|
||||
"COLLADA": "#F1A42B",
|
||||
"Common Lisp": "#3fb68b",
|
||||
"Common Workflow Language": "#B5314C",
|
||||
"Component Pascal": "#B0CE4E",
|
||||
"Cool": null,
|
||||
"Coq": "#d0b68c",
|
||||
"Crystal": "#000100",
|
||||
"CSON": "#244776",
|
||||
"Csound": "#1a1a1a",
|
||||
"Csound Document": "#1a1a1a",
|
||||
"Csound Score": "#1a1a1a",
|
||||
"CSS": "#563d7c",
|
||||
"CSV": "#237346",
|
||||
"Cuda": "#3A4E3A",
|
||||
"CUE": "#5886E1",
|
||||
"CWeb": "#00007a",
|
||||
"Cycript": null,
|
||||
"Cython": "#fedf5b",
|
||||
"D": "#ba595e",
|
||||
"Dafny": "#FFEC25",
|
||||
"Darcs Patch": "#8eff23",
|
||||
"Dart": "#00B4AB",
|
||||
"DataWeave": "#003a52",
|
||||
"Dhall": "#dfafff",
|
||||
"DIGITAL Command Language": null,
|
||||
"DirectX 3D File": "#aace60",
|
||||
"DM": "#447265",
|
||||
"Dockerfile": "#384d54",
|
||||
"Dogescript": "#cca760",
|
||||
"DTrace": null,
|
||||
"Dylan": "#6c616e",
|
||||
"E": "#ccce35",
|
||||
"Easybuild": "#069406",
|
||||
"eC": "#913960",
|
||||
"Ecere Projects": "#913960",
|
||||
"ECL": "#8a1267",
|
||||
"ECLiPSe": "#001d9d",
|
||||
"EditorConfig": "#fff1f2",
|
||||
"Eiffel": "#4d6977",
|
||||
"EJS": "#a91e50",
|
||||
"Elixir": "#6e4a7e",
|
||||
"Elm": "#60B5CC",
|
||||
"Emacs Lisp": "#c065db",
|
||||
"EmberScript": "#FFF4F3",
|
||||
"EQ": "#a78649",
|
||||
"Erlang": "#B83998",
|
||||
"F#": "#b845fc",
|
||||
"F*": "#572e30",
|
||||
"Factor": "#636746",
|
||||
"Fancy": "#7b9db4",
|
||||
"Fantom": "#14253c",
|
||||
"Faust": "#c37240",
|
||||
"Fennel": "#fff3d7",
|
||||
"FIGlet Font": "#FFDDBB",
|
||||
"Filebench WML": "#F6B900",
|
||||
"Filterscript": null,
|
||||
"fish": "#4aae47",
|
||||
"Fluent": "#ffcc33",
|
||||
"FLUX": "#88ccff",
|
||||
"Forth": "#341708",
|
||||
"Fortran": "#4d41b1",
|
||||
"Fortran Free Form": "#4d41b1",
|
||||
"FreeBasic": "#867db1",
|
||||
"FreeMarker": "#0050b2",
|
||||
"Frege": "#00cafe",
|
||||
"Futhark": "#5f021f",
|
||||
"G-code": "#D08CF2",
|
||||
"Game Maker Language": "#71b417",
|
||||
"GAML": "#FFC766",
|
||||
"GAMS": "#f49a22",
|
||||
"GAP": "#0000cc",
|
||||
"GCC Machine Description": "#FFCFAB",
|
||||
"GDB": null,
|
||||
"GDScript": "#355570",
|
||||
"GEDCOM": "#003058",
|
||||
"Gemfile.lock": "#701516",
|
||||
"Genie": "#fb855d",
|
||||
"Genshi": "#951531",
|
||||
"Gentoo Ebuild": "#9400ff",
|
||||
"Gentoo Eclass": "#9400ff",
|
||||
"Gerber Image": "#d20b00",
|
||||
"Gherkin": "#5B2063",
|
||||
"Git Attributes": "#F44D27",
|
||||
"Git Config": "#F44D27",
|
||||
"GLSL": "#5686a5",
|
||||
"Glyph": "#c1ac7f",
|
||||
"Gnuplot": "#f0a9f0",
|
||||
"Go": "#00ADD8",
|
||||
"Go Checksums": "#00ADD8",
|
||||
"Go Module": "#00ADD8",
|
||||
"Golo": "#88562A",
|
||||
"Gosu": "#82937f",
|
||||
"Grace": "#615f8b",
|
||||
"Gradle": "#02303a",
|
||||
"Grammatical Framework": "#ff0000",
|
||||
"GraphQL": "#e10098",
|
||||
"Graphviz (DOT)": "#2596be",
|
||||
"Groovy": "#4298b8",
|
||||
"Groovy Server Pages": "#4298b8",
|
||||
"Hack": "#878787",
|
||||
"Haml": "#ece2a9",
|
||||
"Handlebars": "#f7931e",
|
||||
"HAProxy": "#106da9",
|
||||
"Harbour": "#0e60e3",
|
||||
"Haskell": "#5e5086",
|
||||
"Haxe": "#df7900",
|
||||
"HCL": null,
|
||||
"HiveQL": "#dce200",
|
||||
"HLSL": "#aace60",
|
||||
"HolyC": "#ffefaf",
|
||||
"HTML": "#e34c26",
|
||||
"HTML+ECR": "#2e1052",
|
||||
"HTML+EEX": "#6e4a7e",
|
||||
"HTML+ERB": "#701516",
|
||||
"HTML+PHP": "#4f5d95",
|
||||
"HTML+Razor": "#512be4",
|
||||
"HTTP": "#005C9C",
|
||||
"HXML": "#f68712",
|
||||
"Hy": "#7790B2",
|
||||
"HyPhy": null,
|
||||
"IDL": "#a3522f",
|
||||
"Idris": "#b30000",
|
||||
"Ignore List": "#000000",
|
||||
"IGOR Pro": "#0000cc",
|
||||
"ImageJ Macro": "#99AAFF",
|
||||
"Inform 7": null,
|
||||
"INI": "#d1dbe0",
|
||||
"Inno Setup": "#264b99",
|
||||
"Io": "#a9188d",
|
||||
"Ioke": "#078193",
|
||||
"Isabelle": "#FEFE00",
|
||||
"Isabelle ROOT": "#FEFE00",
|
||||
"J": "#9EEDFF",
|
||||
"JAR Manifest": "#b07219",
|
||||
"Jasmin": "#d03600",
|
||||
"Java": "#b07219",
|
||||
"Java Properties": "#2A6277",
|
||||
"Java Server Pages": "#2A6277",
|
||||
"JavaScript": "#f1e05a",
|
||||
"JavaScript+ERB": "#f1e05a",
|
||||
"Jest Snapshot": "#15c213",
|
||||
"JFlex": "#DBCA00",
|
||||
"Jinja": "#a52a22",
|
||||
"Jison": "#56b3cb",
|
||||
"Jison Lex": "#56b3cb",
|
||||
"Jolie": "#843179",
|
||||
"jq": "#c7254e",
|
||||
"JSON": "#292929",
|
||||
"JSON with Comments": "#292929",
|
||||
"JSON5": "#267CB9",
|
||||
"JSONiq": "#40d47e",
|
||||
"JSONLD": "#0c479c",
|
||||
"Jsonnet": "#0064bd",
|
||||
"Julia": "#a270ba",
|
||||
"Jupyter Notebook": "#DA5B0B",
|
||||
"Kaitai Struct": "#773b37",
|
||||
"KakouneScript": "#6f8042",
|
||||
"KiCad Layout": "#2f4aab",
|
||||
"KiCad Legacy Layout": "#2f4aab",
|
||||
"KiCad Schematic": "#2f4aab",
|
||||
"Kotlin": "#A97BFF",
|
||||
"KRL": "#28430A",
|
||||
"LabVIEW": "#fede06",
|
||||
"Lark": "#2980B9",
|
||||
"Lasso": "#999999",
|
||||
"Latte": "#f2a542",
|
||||
"Lean": null,
|
||||
"Less": "#1d365d",
|
||||
"Lex": "#DBCA00",
|
||||
"LFE": "#4C3023",
|
||||
"LilyPond": "#9ccc7c",
|
||||
"Limbo": null,
|
||||
"Liquid": "#67b8de",
|
||||
"Literate Agda": "#315665",
|
||||
"Literate CoffeeScript": "#244776",
|
||||
"Literate Haskell": "#5e5086",
|
||||
"LiveScript": "#499886",
|
||||
"LLVM": "#185619",
|
||||
"Logos": null,
|
||||
"Logtalk": "#295b9a",
|
||||
"LOLCODE": "#cc9900",
|
||||
"LookML": "#652B81",
|
||||
"LoomScript": null,
|
||||
"LSL": "#3d9970",
|
||||
"Lua": "#000080",
|
||||
"M": null,
|
||||
"M4": null,
|
||||
"M4Sugar": null,
|
||||
"Macaulay2": "#d8ffff",
|
||||
"Makefile": "#427819",
|
||||
"Mako": "#7e858d",
|
||||
"Markdown": "#083fa1",
|
||||
"Marko": "#42bff2",
|
||||
"Mask": "#f97732",
|
||||
"Mathematica": "#dd1100",
|
||||
"MATLAB": "#e16737",
|
||||
"Max": "#c4a79c",
|
||||
"MAXScript": "#00a6a6",
|
||||
"mcfunction": "#E22837",
|
||||
"Mercury": "#ff2b2b",
|
||||
"Meson": "#007800",
|
||||
"Metal": "#8f14e9",
|
||||
"MiniD": null,
|
||||
"Mirah": "#c7a938",
|
||||
"mIRC Script": "#3d57c3",
|
||||
"MLIR": "#5EC8DB",
|
||||
"Modelica": "#de1d31",
|
||||
"Modula-2": "#10253f",
|
||||
"Modula-3": "#223388",
|
||||
"Module Management System": null,
|
||||
"Monkey": null,
|
||||
"Moocode": null,
|
||||
"MoonScript": "#ff4585",
|
||||
"Motorola 68K Assembly": "#005daa",
|
||||
"MQL4": "#62A8D6",
|
||||
"MQL5": "#4A76B8",
|
||||
"MTML": "#b7e1f4",
|
||||
"MUF": null,
|
||||
"mupad": "#244963",
|
||||
"Mustache": "#724b3b",
|
||||
"Myghty": null,
|
||||
"nanorc": "#2d004d",
|
||||
"NASL": null,
|
||||
"NCL": "#28431f",
|
||||
"Nearley": "#990000",
|
||||
"Nemerle": "#3d3c6e",
|
||||
"nesC": "#94B0C7",
|
||||
"NetLinx": "#0aa0ff",
|
||||
"NetLinx+ERB": "#747faa",
|
||||
"NetLogo": "#ff6375",
|
||||
"NewLisp": "#87AED7",
|
||||
"Nextflow": "#3ac486",
|
||||
"Nginx": "#009639",
|
||||
"Nim": "#ffc200",
|
||||
"Nit": "#009917",
|
||||
"Nix": "#7e7eff",
|
||||
"NPM Config": "#cb3837",
|
||||
"NSIS": null,
|
||||
"Nu": "#c9df40",
|
||||
"NumPy": "#9C8AF9",
|
||||
"Nunjucks": "#3d8137",
|
||||
"NWScript": "#111522",
|
||||
"Objective-C": "#438eff",
|
||||
"Objective-C++": "#6866fb",
|
||||
"Objective-J": "#ff0c5a",
|
||||
"ObjectScript": "#424893",
|
||||
"OCaml": "#3be133",
|
||||
"Odin": "#60AFFE",
|
||||
"Omgrofl": "#cabbff",
|
||||
"ooc": "#b0b77e",
|
||||
"Opa": null,
|
||||
"Opal": "#f7ede0",
|
||||
"Open Policy Agent": "#7d9199",
|
||||
"OpenCL": "#ed2e2d",
|
||||
"OpenEdge ABL": "#5ce600",
|
||||
"OpenQASM": "#AA70FF",
|
||||
"OpenRC runscript": null,
|
||||
"OpenSCAD": "#e5cd45",
|
||||
"Org": "#77aa99",
|
||||
"Ox": null,
|
||||
"Oxygene": "#cdd0e3",
|
||||
"Oz": "#fab738",
|
||||
"P4": "#7055b5",
|
||||
"Pan": "#cc0000",
|
||||
"Papyrus": "#6600cc",
|
||||
"Parrot": "#f3ca0a",
|
||||
"Parrot Assembly": null,
|
||||
"Parrot Internal Representation": null,
|
||||
"Pascal": "#E3F171",
|
||||
"Pawn": "#dbb284",
|
||||
"PEG.js": "#234d6b",
|
||||
"Pep8": "#C76F5B",
|
||||
"Perl": "#0298c3",
|
||||
"PHP": "#4F5D95",
|
||||
"PicoLisp": "#6067af",
|
||||
"PigLatin": "#fcd7de",
|
||||
"Pike": "#005390",
|
||||
"PLpgSQL": "#336790",
|
||||
"PLSQL": "#dad8d8",
|
||||
"PogoScript": "#d80074",
|
||||
"Pony": null,
|
||||
"PostCSS": "#dc3a0c",
|
||||
"PostScript": "#da291c",
|
||||
"POV-Ray SDL": "#6bac65",
|
||||
"PowerBuilder": "#8f0f8d",
|
||||
"PowerShell": "#012456",
|
||||
"Prisma": "#0c344b",
|
||||
"Processing": "#0096D8",
|
||||
"Prolog": "#74283c",
|
||||
"Propeller Spin": "#7fa2a7",
|
||||
"Pug": "#a86454",
|
||||
"Puppet": "#302B6D",
|
||||
"PureBasic": "#5a6986",
|
||||
"PureScript": "#1D222D",
|
||||
"Python": "#3572A5",
|
||||
"Python console": "#3572A5",
|
||||
"Python traceback": "#3572A5",
|
||||
"q": "#0040cd",
|
||||
"Q#": "#fed659",
|
||||
"QMake": null,
|
||||
"QML": "#44a51c",
|
||||
"Qt Script": "#00b841",
|
||||
"Quake": "#882233",
|
||||
"R": "#198CE7",
|
||||
"Racket": "#3c5caa",
|
||||
"Ragel": "#9d5200",
|
||||
"Raku": "#0000fb",
|
||||
"RAML": "#77d9fb",
|
||||
"Rascal": "#fffaa0",
|
||||
"RDoc": "#701516",
|
||||
"REALbasic": null,
|
||||
"Reason": "#ff5847",
|
||||
"Rebol": "#358a5b",
|
||||
"Record Jar": "#0673ba",
|
||||
"Red": "#f50000",
|
||||
"Redcode": null,
|
||||
"Regular Expression": "#009a00",
|
||||
"Ren'Py": "#ff7f7f",
|
||||
"RenderScript": null,
|
||||
"ReScript": "#ed5051",
|
||||
"reStructuredText": "#141414",
|
||||
"REXX": "#d90e09",
|
||||
"Ring": "#2D54CB",
|
||||
"Riot": "#A71E49",
|
||||
"RMarkdown": "#198ce7",
|
||||
"RobotFramework": "#00c0b5",
|
||||
"Roff": "#ecdebe",
|
||||
"Roff Manpage": "#ecdebe",
|
||||
"Rouge": "#cc0088",
|
||||
"RPC": null,
|
||||
"Ruby": "#701516",
|
||||
"RUNOFF": "#665a4e",
|
||||
"Rust": "#dea584",
|
||||
"Sage": null,
|
||||
"SaltStack": "#646464",
|
||||
"SAS": "#B34936",
|
||||
"Sass": "#a53b70",
|
||||
"Scala": "#c22d40",
|
||||
"Scaml": "#bd181a",
|
||||
"Scheme": "#1e4aec",
|
||||
"Scilab": "#ca0f21",
|
||||
"SCSS": "#c6538c",
|
||||
"sed": "#64b970",
|
||||
"Self": "#0579aa",
|
||||
"ShaderLab": "#222c37",
|
||||
"Shell": "#89e051",
|
||||
"ShellSession": null,
|
||||
"Shen": "#120F14",
|
||||
"Sieve": null,
|
||||
"Singularity": "#64E6AD",
|
||||
"Slash": "#007eff",
|
||||
"Slice": "#003fa2",
|
||||
"Slim": "#2b2b2b",
|
||||
"Smali": null,
|
||||
"Smalltalk": "#596706",
|
||||
"Smarty": "#f0c040",
|
||||
"SmPL": "#c94949",
|
||||
"SMT": null,
|
||||
"Solidity": "#AA6746",
|
||||
"SourcePawn": "#f69e1d",
|
||||
"SPARQL": "#0C4597",
|
||||
"SQF": "#3F3F3F",
|
||||
"SQL": "#e38c00",
|
||||
"SQLPL": "#e38c00",
|
||||
"Squirrel": "#800000",
|
||||
"SRecode Template": "#348a34",
|
||||
"Stan": "#b2011d",
|
||||
"Standard ML": "#dc566d",
|
||||
"Starlark": "#76d275",
|
||||
"Stata": "#1a5f91",
|
||||
"StringTemplate": "#3fb34f",
|
||||
"Stylus": "#ff6347",
|
||||
"SubRip Text": "#9e0101",
|
||||
"SugarSS": "#2fcc9f",
|
||||
"SuperCollider": "#46390b",
|
||||
"Svelte": "#ff3e00",
|
||||
"SVG": "#ff9900",
|
||||
"Swift": "#F05138",
|
||||
"SWIG": null,
|
||||
"SystemVerilog": "#DAE1C2",
|
||||
"Tcl": "#e4cc98",
|
||||
"Tcsh": null,
|
||||
"Terra": "#00004c",
|
||||
"TeX": "#3D6117",
|
||||
"Textile": "#ffe7ac",
|
||||
"TextMate Properties": "#df66e4",
|
||||
"Thrift": "#D12127",
|
||||
"TI Program": "#A0AA87",
|
||||
"TLA": "#4b0079",
|
||||
"TOML": "#9c4221",
|
||||
"TSQL": "#e38c00",
|
||||
"TSV": "#237346",
|
||||
"TSX": "#2b7489",
|
||||
"Turing": "#cf142b",
|
||||
"Twig": "#c1d026",
|
||||
"TXL": "#0178b8",
|
||||
"TypeScript": "#2b7489",
|
||||
"Unified Parallel C": "#4e3617",
|
||||
"Unity3D Asset": "#222c37",
|
||||
"Unix Assembly": null,
|
||||
"Uno": "#9933cc",
|
||||
"UnrealScript": "#a54c4d",
|
||||
"UrWeb": "#ccccee",
|
||||
"V": "#4f87c4",
|
||||
"Vala": "#fbe5cd",
|
||||
"Valve Data Format": "#f26025",
|
||||
"VBA": "#867db1",
|
||||
"VBScript": "#15dcdc",
|
||||
"VCL": "#148AA8",
|
||||
"Verilog": "#b2b7f8",
|
||||
"VHDL": "#adb2cb",
|
||||
"Vim Help File": "#199f4b",
|
||||
"Vim Script": "#199f4b",
|
||||
"Vim Snippet": "#199f4b",
|
||||
"Visual Basic .NET": "#945db7",
|
||||
"Volt": "#1F1F1F",
|
||||
"Vue": "#41b883",
|
||||
"wdl": "#42f1f4",
|
||||
"Web Ontology Language": "#5b70bd",
|
||||
"WebAssembly": "#04133b",
|
||||
"WebIDL": null,
|
||||
"Wikitext": "#fc5757",
|
||||
"Windows Registry Entries": "#52d5ff",
|
||||
"wisp": "#7582D1",
|
||||
"Wollok": "#a23738",
|
||||
"World of Warcraft Addon Data": "#f7e43f",
|
||||
"X10": "#4B6BEF",
|
||||
"xBase": "#403a40",
|
||||
"XC": "#99DA07",
|
||||
"XML": "#0060ac",
|
||||
"XML Property List": "#0060ac",
|
||||
"Xojo": "#81bd41",
|
||||
"Xonsh": "#285EEF",
|
||||
"XProc": null,
|
||||
"XQuery": "#5232e7",
|
||||
"XS": null,
|
||||
"XSLT": "#EB8CEB",
|
||||
"Xtend": "#24255d",
|
||||
"Yacc": "#4B6C4B",
|
||||
"YAML": "#cb171e",
|
||||
"YARA": "#220000",
|
||||
"YASnippet": "#32AB90",
|
||||
"ZAP": "#0d665e",
|
||||
"Zeek": null,
|
||||
"ZenScript": "#00BCD1",
|
||||
"Zephir": "#118f9e",
|
||||
"Zig": "#ec915c",
|
||||
"ZIL": "#dc75e5",
|
||||
"Zimpl": "#d67711"
|
||||
}
|
|
@ -1,533 +0,0 @@
|
|||
{
|
||||
"1C Enterprise": "#814CCC",
|
||||
"4D": "#004289",
|
||||
"ABAP": "#E8274B",
|
||||
"ABAP CDS": "#555e25",
|
||||
"ActionScript": "#882B0F",
|
||||
"Ada": "#02f88c",
|
||||
"Adobe Font Metrics": "#fa0f00",
|
||||
"Agda": "#315665",
|
||||
"AGS Script": "#B9D9FF",
|
||||
"AIDL": "#34EB6B",
|
||||
"AL": "#3AA2B5",
|
||||
"Alloy": "#64C800",
|
||||
"Alpine Abuild": "#0D597F",
|
||||
"Altium Designer": "#A89663",
|
||||
"AMPL": "#E6EFBB",
|
||||
"AngelScript": "#C7D7DC",
|
||||
"Ant Build System": "#A9157E",
|
||||
"ANTLR": "#9DC3FF",
|
||||
"ApacheConf": "#d12127",
|
||||
"Apex": "#1797c0",
|
||||
"API Blueprint": "#2ACCA8",
|
||||
"APL": "#5A8164",
|
||||
"Apollo Guidance Computer": "#0B3D91",
|
||||
"AppleScript": "#101F1F",
|
||||
"Arc": "#aa2afe",
|
||||
"AsciiDoc": "#73a0c5",
|
||||
"ASL": null,
|
||||
"ASP.NET": "#9400ff",
|
||||
"AspectJ": "#a957b0",
|
||||
"Assembly": "#6E4C13",
|
||||
"Astro": "#ff5a03",
|
||||
"Asymptote": "#ff0000",
|
||||
"ATS": "#1ac620",
|
||||
"Augeas": "#9CC134",
|
||||
"AutoHotkey": "#6594b9",
|
||||
"AutoIt": "#1C3552",
|
||||
"Avro IDL": "#0040FF",
|
||||
"Awk": "#c30e9b",
|
||||
"Ballerina": "#FF5000",
|
||||
"BASIC": "#ff0000",
|
||||
"Batchfile": "#C1F12E",
|
||||
"Beef": "#a52f4e",
|
||||
"Befunge": null,
|
||||
"BibTeX": "#778899",
|
||||
"Bicep": "#519aba",
|
||||
"Bison": "#6A463F",
|
||||
"BitBake": "#00bce4",
|
||||
"Blade": "#f7523f",
|
||||
"BlitzBasic": "#00FFAE",
|
||||
"BlitzMax": "#cd6400",
|
||||
"Bluespec": "#12223c",
|
||||
"Boo": "#d4bec1",
|
||||
"Boogie": "#c80fa0",
|
||||
"Brainfuck": "#2F2530",
|
||||
"Brightscript": "#662D91",
|
||||
"Browserslist": "#ffd539",
|
||||
"C": "#555555",
|
||||
"C#": "#178600",
|
||||
"C++": "#f34b7d",
|
||||
"C2hs Haskell": null,
|
||||
"Cabal Config": "#483465",
|
||||
"Cap'n Proto": "#c42727",
|
||||
"CartoCSS": null,
|
||||
"Ceylon": "#dfa535",
|
||||
"Chapel": "#8dc63f",
|
||||
"Charity": null,
|
||||
"ChucK": "#3f8000",
|
||||
"Cirru": "#ccccff",
|
||||
"Clarion": "#db901e",
|
||||
"Classic ASP": "#6a40fd",
|
||||
"Clean": "#3F85AF",
|
||||
"Click": "#E4E6F3",
|
||||
"CLIPS": "#00A300",
|
||||
"Clojure": "#db5855",
|
||||
"Closure Templates": "#0d948f",
|
||||
"Cloud Firestore Security Rules": "#FFA000",
|
||||
"CMake": "#DA3434",
|
||||
"COBOL": null,
|
||||
"CodeQL": "#140f46",
|
||||
"CoffeeScript": "#244776",
|
||||
"ColdFusion": "#ed2cd6",
|
||||
"ColdFusion CFC": "#ed2cd6",
|
||||
"COLLADA": "#F1A42B",
|
||||
"Common Lisp": "#3fb68b",
|
||||
"Common Workflow Language": "#B5314C",
|
||||
"Component Pascal": "#B0CE4E",
|
||||
"Cool": null,
|
||||
"Coq": "#d0b68c",
|
||||
"Crystal": "#000100",
|
||||
"CSON": "#244776",
|
||||
"Csound": "#1a1a1a",
|
||||
"Csound Document": "#1a1a1a",
|
||||
"Csound Score": "#1a1a1a",
|
||||
"CSS": "#563d7c",
|
||||
"CSV": "#237346",
|
||||
"Cuda": "#3A4E3A",
|
||||
"CUE": "#5886E1",
|
||||
"CWeb": "#00007a",
|
||||
"Cycript": null,
|
||||
"Cython": "#fedf5b",
|
||||
"D": "#ba595e",
|
||||
"Dafny": "#FFEC25",
|
||||
"Darcs Patch": "#8eff23",
|
||||
"Dart": "#00B4AB",
|
||||
"DataWeave": "#003a52",
|
||||
"Dhall": "#dfafff",
|
||||
"DIGITAL Command Language": null,
|
||||
"DirectX 3D File": "#aace60",
|
||||
"DM": "#447265",
|
||||
"Dockerfile": "#384d54",
|
||||
"Dogescript": "#cca760",
|
||||
"DTrace": null,
|
||||
"Dylan": "#6c616e",
|
||||
"E": "#ccce35",
|
||||
"Easybuild": "#069406",
|
||||
"eC": "#913960",
|
||||
"Ecere Projects": "#913960",
|
||||
"ECL": "#8a1267",
|
||||
"ECLiPSe": "#001d9d",
|
||||
"EditorConfig": "#fff1f2",
|
||||
"Eiffel": "#4d6977",
|
||||
"EJS": "#a91e50",
|
||||
"Elixir": "#6e4a7e",
|
||||
"Elm": "#60B5CC",
|
||||
"Emacs Lisp": "#c065db",
|
||||
"EmberScript": "#FFF4F3",
|
||||
"EQ": "#a78649",
|
||||
"Erlang": "#B83998",
|
||||
"F#": "#b845fc",
|
||||
"F*": "#572e30",
|
||||
"Factor": "#636746",
|
||||
"Fancy": "#7b9db4",
|
||||
"Fantom": "#14253c",
|
||||
"Faust": "#c37240",
|
||||
"Fennel": "#fff3d7",
|
||||
"FIGlet Font": "#FFDDBB",
|
||||
"Filebench WML": "#F6B900",
|
||||
"Filterscript": null,
|
||||
"fish": "#4aae47",
|
||||
"Fluent": "#ffcc33",
|
||||
"FLUX": "#88ccff",
|
||||
"Forth": "#341708",
|
||||
"Fortran": "#4d41b1",
|
||||
"Fortran Free Form": "#4d41b1",
|
||||
"FreeBasic": "#867db1",
|
||||
"FreeMarker": "#0050b2",
|
||||
"Frege": "#00cafe",
|
||||
"Futhark": "#5f021f",
|
||||
"G-code": "#D08CF2",
|
||||
"Game Maker Language": "#71b417",
|
||||
"GAML": "#FFC766",
|
||||
"GAMS": "#f49a22",
|
||||
"GAP": "#0000cc",
|
||||
"GCC Machine Description": "#FFCFAB",
|
||||
"GDB": null,
|
||||
"GDScript": "#355570",
|
||||
"GEDCOM": "#003058",
|
||||
"Gemfile.lock": "#701516",
|
||||
"Genie": "#fb855d",
|
||||
"Genshi": "#951531",
|
||||
"Gentoo Ebuild": "#9400ff",
|
||||
"Gentoo Eclass": "#9400ff",
|
||||
"Gerber Image": "#d20b00",
|
||||
"Gherkin": "#5B2063",
|
||||
"Git Attributes": "#F44D27",
|
||||
"Git Config": "#F44D27",
|
||||
"GLSL": "#5686a5",
|
||||
"Glyph": "#c1ac7f",
|
||||
"Gnuplot": "#f0a9f0",
|
||||
"Go": "#00ADD8",
|
||||
"Go Checksums": "#00ADD8",
|
||||
"Go Module": "#00ADD8",
|
||||
"Golo": "#88562A",
|
||||
"Gosu": "#82937f",
|
||||
"Grace": "#615f8b",
|
||||
"Gradle": "#02303a",
|
||||
"Grammatical Framework": "#ff0000",
|
||||
"GraphQL": "#e10098",
|
||||
"Graphviz (DOT)": "#2596be",
|
||||
"Groovy": "#4298b8",
|
||||
"Groovy Server Pages": "#4298b8",
|
||||
"Hack": "#878787",
|
||||
"Haml": "#ece2a9",
|
||||
"Handlebars": "#f7931e",
|
||||
"HAProxy": "#106da9",
|
||||
"Harbour": "#0e60e3",
|
||||
"Haskell": "#5e5086",
|
||||
"Haxe": "#df7900",
|
||||
"HCL": null,
|
||||
"HiveQL": "#dce200",
|
||||
"HLSL": "#aace60",
|
||||
"HolyC": "#ffefaf",
|
||||
"HTML": "#e34c26",
|
||||
"HTML+ECR": "#2e1052",
|
||||
"HTML+EEX": "#6e4a7e",
|
||||
"HTML+ERB": "#701516",
|
||||
"HTML+PHP": "#4f5d95",
|
||||
"HTML+Razor": "#512be4",
|
||||
"HTTP": "#005C9C",
|
||||
"HXML": "#f68712",
|
||||
"Hy": "#7790B2",
|
||||
"HyPhy": null,
|
||||
"IDL": "#a3522f",
|
||||
"Idris": "#b30000",
|
||||
"Ignore List": "#000000",
|
||||
"IGOR Pro": "#0000cc",
|
||||
"ImageJ Macro": "#99AAFF",
|
||||
"Inform 7": null,
|
||||
"INI": "#d1dbe0",
|
||||
"Inno Setup": "#264b99",
|
||||
"Io": "#a9188d",
|
||||
"Ioke": "#078193",
|
||||
"Isabelle": "#FEFE00",
|
||||
"Isabelle ROOT": "#FEFE00",
|
||||
"J": "#9EEDFF",
|
||||
"JAR Manifest": "#b07219",
|
||||
"Jasmin": "#d03600",
|
||||
"Java": "#b07219",
|
||||
"Java Properties": "#2A6277",
|
||||
"Java Server Pages": "#2A6277",
|
||||
"JavaScript": "#f1e05a",
|
||||
"JavaScript+ERB": "#f1e05a",
|
||||
"Jest Snapshot": "#15c213",
|
||||
"JFlex": "#DBCA00",
|
||||
"Jinja": "#a52a22",
|
||||
"Jison": "#56b3cb",
|
||||
"Jison Lex": "#56b3cb",
|
||||
"Jolie": "#843179",
|
||||
"jq": "#c7254e",
|
||||
"JSON": "#292929",
|
||||
"JSON with Comments": "#292929",
|
||||
"JSON5": "#267CB9",
|
||||
"JSONiq": "#40d47e",
|
||||
"JSONLD": "#0c479c",
|
||||
"Jsonnet": "#0064bd",
|
||||
"Julia": "#a270ba",
|
||||
"Jupyter Notebook": "#DA5B0B",
|
||||
"Kaitai Struct": "#773b37",
|
||||
"KakouneScript": "#6f8042",
|
||||
"KiCad Layout": "#2f4aab",
|
||||
"KiCad Legacy Layout": "#2f4aab",
|
||||
"KiCad Schematic": "#2f4aab",
|
||||
"Kotlin": "#A97BFF",
|
||||
"KRL": "#28430A",
|
||||
"LabVIEW": "#fede06",
|
||||
"Lark": "#2980B9",
|
||||
"Lasso": "#999999",
|
||||
"Latte": "#f2a542",
|
||||
"Lean": null,
|
||||
"Less": "#1d365d",
|
||||
"Lex": "#DBCA00",
|
||||
"LFE": "#4C3023",
|
||||
"LilyPond": "#9ccc7c",
|
||||
"Limbo": null,
|
||||
"Liquid": "#67b8de",
|
||||
"Literate Agda": "#315665",
|
||||
"Literate CoffeeScript": "#244776",
|
||||
"Literate Haskell": "#5e5086",
|
||||
"LiveScript": "#499886",
|
||||
"LLVM": "#185619",
|
||||
"Logos": null,
|
||||
"Logtalk": "#295b9a",
|
||||
"LOLCODE": "#cc9900",
|
||||
"LookML": "#652B81",
|
||||
"LoomScript": null,
|
||||
"LSL": "#3d9970",
|
||||
"Lua": "#000080",
|
||||
"M": null,
|
||||
"M4": null,
|
||||
"M4Sugar": null,
|
||||
"Macaulay2": "#d8ffff",
|
||||
"Makefile": "#427819",
|
||||
"Mako": "#7e858d",
|
||||
"Markdown": "#083fa1",
|
||||
"Marko": "#42bff2",
|
||||
"Mask": "#f97732",
|
||||
"Mathematica": "#dd1100",
|
||||
"MATLAB": "#e16737",
|
||||
"Max": "#c4a79c",
|
||||
"MAXScript": "#00a6a6",
|
||||
"mcfunction": "#E22837",
|
||||
"Mercury": "#ff2b2b",
|
||||
"Meson": "#007800",
|
||||
"Metal": "#8f14e9",
|
||||
"MiniD": null,
|
||||
"Mirah": "#c7a938",
|
||||
"mIRC Script": "#3d57c3",
|
||||
"MLIR": "#5EC8DB",
|
||||
"Modelica": "#de1d31",
|
||||
"Modula-2": "#10253f",
|
||||
"Modula-3": "#223388",
|
||||
"Module Management System": null,
|
||||
"Monkey": null,
|
||||
"Moocode": null,
|
||||
"MoonScript": "#ff4585",
|
||||
"Motorola 68K Assembly": "#005daa",
|
||||
"MQL4": "#62A8D6",
|
||||
"MQL5": "#4A76B8",
|
||||
"MTML": "#b7e1f4",
|
||||
"MUF": null,
|
||||
"mupad": "#244963",
|
||||
"Mustache": "#724b3b",
|
||||
"Myghty": null,
|
||||
"nanorc": "#2d004d",
|
||||
"NASL": null,
|
||||
"NCL": "#28431f",
|
||||
"Nearley": "#990000",
|
||||
"Nemerle": "#3d3c6e",
|
||||
"nesC": "#94B0C7",
|
||||
"NetLinx": "#0aa0ff",
|
||||
"NetLinx+ERB": "#747faa",
|
||||
"NetLogo": "#ff6375",
|
||||
"NewLisp": "#87AED7",
|
||||
"Nextflow": "#3ac486",
|
||||
"Nginx": "#009639",
|
||||
"Nim": "#ffc200",
|
||||
"Nit": "#009917",
|
||||
"Nix": "#7e7eff",
|
||||
"NPM Config": "#cb3837",
|
||||
"NSIS": null,
|
||||
"Nu": "#c9df40",
|
||||
"NumPy": "#9C8AF9",
|
||||
"Nunjucks": "#3d8137",
|
||||
"NWScript": "#111522",
|
||||
"Objective-C": "#438eff",
|
||||
"Objective-C++": "#6866fb",
|
||||
"Objective-J": "#ff0c5a",
|
||||
"ObjectScript": "#424893",
|
||||
"OCaml": "#3be133",
|
||||
"Odin": "#60AFFE",
|
||||
"Omgrofl": "#cabbff",
|
||||
"ooc": "#b0b77e",
|
||||
"Opa": null,
|
||||
"Opal": "#f7ede0",
|
||||
"Open Policy Agent": "#7d9199",
|
||||
"OpenCL": "#ed2e2d",
|
||||
"OpenEdge ABL": "#5ce600",
|
||||
"OpenQASM": "#AA70FF",
|
||||
"OpenRC runscript": null,
|
||||
"OpenSCAD": "#e5cd45",
|
||||
"Org": "#77aa99",
|
||||
"Ox": null,
|
||||
"Oxygene": "#cdd0e3",
|
||||
"Oz": "#fab738",
|
||||
"P4": "#7055b5",
|
||||
"Pan": "#cc0000",
|
||||
"Papyrus": "#6600cc",
|
||||
"Parrot": "#f3ca0a",
|
||||
"Parrot Assembly": null,
|
||||
"Parrot Internal Representation": null,
|
||||
"Pascal": "#E3F171",
|
||||
"Pawn": "#dbb284",
|
||||
"PEG.js": "#234d6b",
|
||||
"Pep8": "#C76F5B",
|
||||
"Perl": "#0298c3",
|
||||
"PHP": "#4F5D95",
|
||||
"PicoLisp": "#6067af",
|
||||
"PigLatin": "#fcd7de",
|
||||
"Pike": "#005390",
|
||||
"PLpgSQL": "#336790",
|
||||
"PLSQL": "#dad8d8",
|
||||
"PogoScript": "#d80074",
|
||||
"Pony": null,
|
||||
"PostCSS": "#dc3a0c",
|
||||
"PostScript": "#da291c",
|
||||
"POV-Ray SDL": "#6bac65",
|
||||
"PowerBuilder": "#8f0f8d",
|
||||
"PowerShell": "#012456",
|
||||
"Prisma": "#0c344b",
|
||||
"Processing": "#0096D8",
|
||||
"Prolog": "#74283c",
|
||||
"Propeller Spin": "#7fa2a7",
|
||||
"Pug": "#a86454",
|
||||
"Puppet": "#302B6D",
|
||||
"PureBasic": "#5a6986",
|
||||
"PureScript": "#1D222D",
|
||||
"Python": "#3572A5",
|
||||
"Python console": "#3572A5",
|
||||
"Python traceback": "#3572A5",
|
||||
"q": "#0040cd",
|
||||
"Q#": "#fed659",
|
||||
"QMake": null,
|
||||
"QML": "#44a51c",
|
||||
"Qt Script": "#00b841",
|
||||
"Quake": "#882233",
|
||||
"R": "#198CE7",
|
||||
"Racket": "#3c5caa",
|
||||
"Ragel": "#9d5200",
|
||||
"Raku": "#0000fb",
|
||||
"RAML": "#77d9fb",
|
||||
"Rascal": "#fffaa0",
|
||||
"RDoc": "#701516",
|
||||
"REALbasic": null,
|
||||
"Reason": "#ff5847",
|
||||
"Rebol": "#358a5b",
|
||||
"Record Jar": "#0673ba",
|
||||
"Red": "#f50000",
|
||||
"Redcode": null,
|
||||
"Regular Expression": "#009a00",
|
||||
"Ren'Py": "#ff7f7f",
|
||||
"RenderScript": null,
|
||||
"ReScript": "#ed5051",
|
||||
"reStructuredText": "#141414",
|
||||
"REXX": "#d90e09",
|
||||
"Ring": "#2D54CB",
|
||||
"Riot": "#A71E49",
|
||||
"RMarkdown": "#198ce7",
|
||||
"RobotFramework": "#00c0b5",
|
||||
"Roff": "#ecdebe",
|
||||
"Roff Manpage": "#ecdebe",
|
||||
"Rouge": "#cc0088",
|
||||
"RPC": null,
|
||||
"Ruby": "#701516",
|
||||
"RUNOFF": "#665a4e",
|
||||
"Rust": "#dea584",
|
||||
"Sage": null,
|
||||
"SaltStack": "#646464",
|
||||
"SAS": "#B34936",
|
||||
"Sass": "#a53b70",
|
||||
"Scala": "#c22d40",
|
||||
"Scaml": "#bd181a",
|
||||
"Scheme": "#1e4aec",
|
||||
"Scilab": "#ca0f21",
|
||||
"SCSS": "#c6538c",
|
||||
"sed": "#64b970",
|
||||
"Self": "#0579aa",
|
||||
"ShaderLab": "#222c37",
|
||||
"Shell": "#89e051",
|
||||
"ShellSession": null,
|
||||
"Shen": "#120F14",
|
||||
"Sieve": null,
|
||||
"Singularity": "#64E6AD",
|
||||
"Slash": "#007eff",
|
||||
"Slice": "#003fa2",
|
||||
"Slim": "#2b2b2b",
|
||||
"Smali": null,
|
||||
"Smalltalk": "#596706",
|
||||
"Smarty": "#f0c040",
|
||||
"SmPL": "#c94949",
|
||||
"SMT": null,
|
||||
"Solidity": "#AA6746",
|
||||
"SourcePawn": "#f69e1d",
|
||||
"SPARQL": "#0C4597",
|
||||
"SQF": "#3F3F3F",
|
||||
"SQL": "#e38c00",
|
||||
"SQLPL": "#e38c00",
|
||||
"Squirrel": "#800000",
|
||||
"SRecode Template": "#348a34",
|
||||
"Stan": "#b2011d",
|
||||
"Standard ML": "#dc566d",
|
||||
"Starlark": "#76d275",
|
||||
"Stata": "#1a5f91",
|
||||
"StringTemplate": "#3fb34f",
|
||||
"Stylus": "#ff6347",
|
||||
"SubRip Text": "#9e0101",
|
||||
"SugarSS": "#2fcc9f",
|
||||
"SuperCollider": "#46390b",
|
||||
"Svelte": "#ff3e00",
|
||||
"SVG": "#ff9900",
|
||||
"Swift": "#F05138",
|
||||
"SWIG": null,
|
||||
"SystemVerilog": "#DAE1C2",
|
||||
"Tcl": "#e4cc98",
|
||||
"Tcsh": null,
|
||||
"Terra": "#00004c",
|
||||
"TeX": "#3D6117",
|
||||
"Textile": "#ffe7ac",
|
||||
"TextMate Properties": "#df66e4",
|
||||
"Thrift": "#D12127",
|
||||
"TI Program": "#A0AA87",
|
||||
"TLA": "#4b0079",
|
||||
"TOML": "#9c4221",
|
||||
"TSQL": "#e38c00",
|
||||
"TSV": "#237346",
|
||||
"TSX": "#2b7489",
|
||||
"Turing": "#cf142b",
|
||||
"Twig": "#c1d026",
|
||||
"TXL": "#0178b8",
|
||||
"TypeScript": "#2b7489",
|
||||
"Unified Parallel C": "#4e3617",
|
||||
"Unity3D Asset": "#222c37",
|
||||
"Unix Assembly": null,
|
||||
"Uno": "#9933cc",
|
||||
"UnrealScript": "#a54c4d",
|
||||
"UrWeb": "#ccccee",
|
||||
"V": "#4f87c4",
|
||||
"Vala": "#fbe5cd",
|
||||
"Valve Data Format": "#f26025",
|
||||
"VBA": "#867db1",
|
||||
"VBScript": "#15dcdc",
|
||||
"VCL": "#148AA8",
|
||||
"Verilog": "#b2b7f8",
|
||||
"VHDL": "#adb2cb",
|
||||
"Vim Help File": "#199f4b",
|
||||
"Vim Script": "#199f4b",
|
||||
"Vim Snippet": "#199f4b",
|
||||
"Visual Basic .NET": "#945db7",
|
||||
"Volt": "#1F1F1F",
|
||||
"Vue": "#41b883",
|
||||
"wdl": "#42f1f4",
|
||||
"Web Ontology Language": "#5b70bd",
|
||||
"WebAssembly": "#04133b",
|
||||
"WebIDL": null,
|
||||
"Wikitext": "#fc5757",
|
||||
"Windows Registry Entries": "#52d5ff",
|
||||
"wisp": "#7582D1",
|
||||
"Wollok": "#a23738",
|
||||
"World of Warcraft Addon Data": "#f7e43f",
|
||||
"X10": "#4B6BEF",
|
||||
"xBase": "#403a40",
|
||||
"XC": "#99DA07",
|
||||
"XML": "#0060ac",
|
||||
"XML Property List": "#0060ac",
|
||||
"Xojo": "#81bd41",
|
||||
"Xonsh": "#285EEF",
|
||||
"XProc": null,
|
||||
"XQuery": "#5232e7",
|
||||
"XS": null,
|
||||
"XSLT": "#EB8CEB",
|
||||
"Xtend": "#24255d",
|
||||
"Yacc": "#4B6C4B",
|
||||
"YAML": "#cb171e",
|
||||
"YARA": "#220000",
|
||||
"YASnippet": "#32AB90",
|
||||
"ZAP": "#0d665e",
|
||||
"Zeek": null,
|
||||
"ZenScript": "#00BCD1",
|
||||
"Zephir": "#118f9e",
|
||||
"Zig": "#ec915c",
|
||||
"ZIL": "#dc75e5",
|
||||
"Zimpl": "#d67711"
|
||||
}
|
533
themes/blowfish/data/repoColors.json
Normal file
533
themes/blowfish/data/repoColors.json
Normal file
|
@ -0,0 +1,533 @@
|
|||
{
|
||||
"1C Enterprise": "#814CCC",
|
||||
"4D": "#004289",
|
||||
"ABAP": "#E8274B",
|
||||
"ABAP CDS": "#555e25",
|
||||
"ActionScript": "#882B0F",
|
||||
"Ada": "#02f88c",
|
||||
"Adobe Font Metrics": "#fa0f00",
|
||||
"Agda": "#315665",
|
||||
"AGS Script": "#B9D9FF",
|
||||
"AIDL": "#34EB6B",
|
||||
"AL": "#3AA2B5",
|
||||
"Alloy": "#64C800",
|
||||
"Alpine Abuild": "#0D597F",
|
||||
"Altium Designer": "#A89663",
|
||||
"AMPL": "#E6EFBB",
|
||||
"AngelScript": "#C7D7DC",
|
||||
"Ant Build System": "#A9157E",
|
||||
"ANTLR": "#9DC3FF",
|
||||
"ApacheConf": "#d12127",
|
||||
"Apex": "#1797c0",
|
||||
"API Blueprint": "#2ACCA8",
|
||||
"APL": "#5A8164",
|
||||
"Apollo Guidance Computer": "#0B3D91",
|
||||
"AppleScript": "#101F1F",
|
||||
"Arc": "#aa2afe",
|
||||
"AsciiDoc": "#73a0c5",
|
||||
"ASL": null,
|
||||
"ASP.NET": "#9400ff",
|
||||
"AspectJ": "#a957b0",
|
||||
"Assembly": "#6E4C13",
|
||||
"Astro": "#ff5a03",
|
||||
"Asymptote": "#ff0000",
|
||||
"ATS": "#1ac620",
|
||||
"Augeas": "#9CC134",
|
||||
"AutoHotkey": "#6594b9",
|
||||
"AutoIt": "#1C3552",
|
||||
"Avro IDL": "#0040FF",
|
||||
"Awk": "#c30e9b",
|
||||
"Ballerina": "#FF5000",
|
||||
"BASIC": "#ff0000",
|
||||
"Batchfile": "#C1F12E",
|
||||
"Beef": "#a52f4e",
|
||||
"Befunge": null,
|
||||
"BibTeX": "#778899",
|
||||
"Bicep": "#519aba",
|
||||
"Bison": "#6A463F",
|
||||
"BitBake": "#00bce4",
|
||||
"Blade": "#f7523f",
|
||||
"BlitzBasic": "#00FFAE",
|
||||
"BlitzMax": "#cd6400",
|
||||
"Bluespec": "#12223c",
|
||||
"Boo": "#d4bec1",
|
||||
"Boogie": "#c80fa0",
|
||||
"Brainfuck": "#2F2530",
|
||||
"Brightscript": "#662D91",
|
||||
"Browserslist": "#ffd539",
|
||||
"C": "#555555",
|
||||
"C#": "#178600",
|
||||
"C++": "#f34b7d",
|
||||
"C2hs Haskell": null,
|
||||
"Cabal Config": "#483465",
|
||||
"Cap'n Proto": "#c42727",
|
||||
"CartoCSS": null,
|
||||
"Ceylon": "#dfa535",
|
||||
"Chapel": "#8dc63f",
|
||||
"Charity": null,
|
||||
"ChucK": "#3f8000",
|
||||
"Cirru": "#ccccff",
|
||||
"Clarion": "#db901e",
|
||||
"Classic ASP": "#6a40fd",
|
||||
"Clean": "#3F85AF",
|
||||
"Click": "#E4E6F3",
|
||||
"CLIPS": "#00A300",
|
||||
"Clojure": "#db5855",
|
||||
"Closure Templates": "#0d948f",
|
||||
"Cloud Firestore Security Rules": "#FFA000",
|
||||
"CMake": "#DA3434",
|
||||
"COBOL": null,
|
||||
"CodeQL": "#140f46",
|
||||
"CoffeeScript": "#244776",
|
||||
"ColdFusion": "#ed2cd6",
|
||||
"ColdFusion CFC": "#ed2cd6",
|
||||
"COLLADA": "#F1A42B",
|
||||
"Common Lisp": "#3fb68b",
|
||||
"Common Workflow Language": "#B5314C",
|
||||
"Component Pascal": "#B0CE4E",
|
||||
"Cool": null,
|
||||
"Coq": "#d0b68c",
|
||||
"Crystal": "#000100",
|
||||
"CSON": "#244776",
|
||||
"Csound": "#1a1a1a",
|
||||
"Csound Document": "#1a1a1a",
|
||||
"Csound Score": "#1a1a1a",
|
||||
"CSS": "#563d7c",
|
||||
"CSV": "#237346",
|
||||
"Cuda": "#3A4E3A",
|
||||
"CUE": "#5886E1",
|
||||
"CWeb": "#00007a",
|
||||
"Cycript": null,
|
||||
"Cython": "#fedf5b",
|
||||
"D": "#ba595e",
|
||||
"Dafny": "#FFEC25",
|
||||
"Darcs Patch": "#8eff23",
|
||||
"Dart": "#00B4AB",
|
||||
"DataWeave": "#003a52",
|
||||
"Dhall": "#dfafff",
|
||||
"DIGITAL Command Language": null,
|
||||
"DirectX 3D File": "#aace60",
|
||||
"DM": "#447265",
|
||||
"Dockerfile": "#384d54",
|
||||
"Dogescript": "#cca760",
|
||||
"DTrace": null,
|
||||
"Dylan": "#6c616e",
|
||||
"E": "#ccce35",
|
||||
"Easybuild": "#069406",
|
||||
"eC": "#913960",
|
||||
"Ecere Projects": "#913960",
|
||||
"ECL": "#8a1267",
|
||||
"ECLiPSe": "#001d9d",
|
||||
"EditorConfig": "#fff1f2",
|
||||
"Eiffel": "#4d6977",
|
||||
"EJS": "#a91e50",
|
||||
"Elixir": "#6e4a7e",
|
||||
"Elm": "#60B5CC",
|
||||
"Emacs Lisp": "#c065db",
|
||||
"EmberScript": "#FFF4F3",
|
||||
"EQ": "#a78649",
|
||||
"Erlang": "#B83998",
|
||||
"F#": "#b845fc",
|
||||
"F*": "#572e30",
|
||||
"Factor": "#636746",
|
||||
"Fancy": "#7b9db4",
|
||||
"Fantom": "#14253c",
|
||||
"Faust": "#c37240",
|
||||
"Fennel": "#fff3d7",
|
||||
"FIGlet Font": "#FFDDBB",
|
||||
"Filebench WML": "#F6B900",
|
||||
"Filterscript": null,
|
||||
"fish": "#4aae47",
|
||||
"Fluent": "#ffcc33",
|
||||
"FLUX": "#88ccff",
|
||||
"Forth": "#341708",
|
||||
"Fortran": "#4d41b1",
|
||||
"Fortran Free Form": "#4d41b1",
|
||||
"FreeBasic": "#867db1",
|
||||
"FreeMarker": "#0050b2",
|
||||
"Frege": "#00cafe",
|
||||
"Futhark": "#5f021f",
|
||||
"G-code": "#D08CF2",
|
||||
"Game Maker Language": "#71b417",
|
||||
"GAML": "#FFC766",
|
||||
"GAMS": "#f49a22",
|
||||
"GAP": "#0000cc",
|
||||
"GCC Machine Description": "#FFCFAB",
|
||||
"GDB": null,
|
||||
"GDScript": "#355570",
|
||||
"GEDCOM": "#003058",
|
||||
"Gemfile.lock": "#701516",
|
||||
"Genie": "#fb855d",
|
||||
"Genshi": "#951531",
|
||||
"Gentoo Ebuild": "#9400ff",
|
||||
"Gentoo Eclass": "#9400ff",
|
||||
"Gerber Image": "#d20b00",
|
||||
"Gherkin": "#5B2063",
|
||||
"Git Attributes": "#F44D27",
|
||||
"Git Config": "#F44D27",
|
||||
"GLSL": "#5686a5",
|
||||
"Glyph": "#c1ac7f",
|
||||
"Gnuplot": "#f0a9f0",
|
||||
"Go": "#00ADD8",
|
||||
"Go Checksums": "#00ADD8",
|
||||
"Go Module": "#00ADD8",
|
||||
"Golo": "#88562A",
|
||||
"Gosu": "#82937f",
|
||||
"Grace": "#615f8b",
|
||||
"Gradle": "#02303a",
|
||||
"Grammatical Framework": "#ff0000",
|
||||
"GraphQL": "#e10098",
|
||||
"Graphviz (DOT)": "#2596be",
|
||||
"Groovy": "#4298b8",
|
||||
"Groovy Server Pages": "#4298b8",
|
||||
"Hack": "#878787",
|
||||
"Haml": "#ece2a9",
|
||||
"Handlebars": "#f7931e",
|
||||
"HAProxy": "#106da9",
|
||||
"Harbour": "#0e60e3",
|
||||
"Haskell": "#5e5086",
|
||||
"Haxe": "#df7900",
|
||||
"HCL": null,
|
||||
"HiveQL": "#dce200",
|
||||
"HLSL": "#aace60",
|
||||
"HolyC": "#ffefaf",
|
||||
"HTML": "#e34c26",
|
||||
"HTML+ECR": "#2e1052",
|
||||
"HTML+EEX": "#6e4a7e",
|
||||
"HTML+ERB": "#701516",
|
||||
"HTML+PHP": "#4f5d95",
|
||||
"HTML+Razor": "#512be4",
|
||||
"HTTP": "#005C9C",
|
||||
"HXML": "#f68712",
|
||||
"Hy": "#7790B2",
|
||||
"HyPhy": null,
|
||||
"IDL": "#a3522f",
|
||||
"Idris": "#b30000",
|
||||
"Ignore List": "#000000",
|
||||
"IGOR Pro": "#0000cc",
|
||||
"ImageJ Macro": "#99AAFF",
|
||||
"Inform 7": null,
|
||||
"INI": "#d1dbe0",
|
||||
"Inno Setup": "#264b99",
|
||||
"Io": "#a9188d",
|
||||
"Ioke": "#078193",
|
||||
"Isabelle": "#FEFE00",
|
||||
"Isabelle ROOT": "#FEFE00",
|
||||
"J": "#9EEDFF",
|
||||
"JAR Manifest": "#b07219",
|
||||
"Jasmin": "#d03600",
|
||||
"Java": "#b07219",
|
||||
"Java Properties": "#2A6277",
|
||||
"Java Server Pages": "#2A6277",
|
||||
"JavaScript": "#f1e05a",
|
||||
"JavaScript+ERB": "#f1e05a",
|
||||
"Jest Snapshot": "#15c213",
|
||||
"JFlex": "#DBCA00",
|
||||
"Jinja": "#a52a22",
|
||||
"Jison": "#56b3cb",
|
||||
"Jison Lex": "#56b3cb",
|
||||
"Jolie": "#843179",
|
||||
"jq": "#c7254e",
|
||||
"JSON": "#292929",
|
||||
"JSON with Comments": "#292929",
|
||||
"JSON5": "#267CB9",
|
||||
"JSONiq": "#40d47e",
|
||||
"JSONLD": "#0c479c",
|
||||
"Jsonnet": "#0064bd",
|
||||
"Julia": "#a270ba",
|
||||
"Jupyter Notebook": "#DA5B0B",
|
||||
"Kaitai Struct": "#773b37",
|
||||
"KakouneScript": "#6f8042",
|
||||
"KiCad Layout": "#2f4aab",
|
||||
"KiCad Legacy Layout": "#2f4aab",
|
||||
"KiCad Schematic": "#2f4aab",
|
||||
"Kotlin": "#A97BFF",
|
||||
"KRL": "#28430A",
|
||||
"LabVIEW": "#fede06",
|
||||
"Lark": "#2980B9",
|
||||
"Lasso": "#999999",
|
||||
"Latte": "#f2a542",
|
||||
"Lean": null,
|
||||
"Less": "#1d365d",
|
||||
"Lex": "#DBCA00",
|
||||
"LFE": "#4C3023",
|
||||
"LilyPond": "#9ccc7c",
|
||||
"Limbo": null,
|
||||
"Liquid": "#67b8de",
|
||||
"Literate Agda": "#315665",
|
||||
"Literate CoffeeScript": "#244776",
|
||||
"Literate Haskell": "#5e5086",
|
||||
"LiveScript": "#499886",
|
||||
"LLVM": "#185619",
|
||||
"Logos": null,
|
||||
"Logtalk": "#295b9a",
|
||||
"LOLCODE": "#cc9900",
|
||||
"LookML": "#652B81",
|
||||
"LoomScript": null,
|
||||
"LSL": "#3d9970",
|
||||
"Lua": "#000080",
|
||||
"M": null,
|
||||
"M4": null,
|
||||
"M4Sugar": null,
|
||||
"Macaulay2": "#d8ffff",
|
||||
"Makefile": "#427819",
|
||||
"Mako": "#7e858d",
|
||||
"Markdown": "#083fa1",
|
||||
"Marko": "#42bff2",
|
||||
"Mask": "#f97732",
|
||||
"Mathematica": "#dd1100",
|
||||
"MATLAB": "#e16737",
|
||||
"Max": "#c4a79c",
|
||||
"MAXScript": "#00a6a6",
|
||||
"mcfunction": "#E22837",
|
||||
"Mercury": "#ff2b2b",
|
||||
"Meson": "#007800",
|
||||
"Metal": "#8f14e9",
|
||||
"MiniD": null,
|
||||
"Mirah": "#c7a938",
|
||||
"mIRC Script": "#3d57c3",
|
||||
"MLIR": "#5EC8DB",
|
||||
"Modelica": "#de1d31",
|
||||
"Modula-2": "#10253f",
|
||||
"Modula-3": "#223388",
|
||||
"Module Management System": null,
|
||||
"Monkey": null,
|
||||
"Moocode": null,
|
||||
"MoonScript": "#ff4585",
|
||||
"Motorola 68K Assembly": "#005daa",
|
||||
"MQL4": "#62A8D6",
|
||||
"MQL5": "#4A76B8",
|
||||
"MTML": "#b7e1f4",
|
||||
"MUF": null,
|
||||
"mupad": "#244963",
|
||||
"Mustache": "#724b3b",
|
||||
"Myghty": null,
|
||||
"nanorc": "#2d004d",
|
||||
"NASL": null,
|
||||
"NCL": "#28431f",
|
||||
"Nearley": "#990000",
|
||||
"Nemerle": "#3d3c6e",
|
||||
"nesC": "#94B0C7",
|
||||
"NetLinx": "#0aa0ff",
|
||||
"NetLinx+ERB": "#747faa",
|
||||
"NetLogo": "#ff6375",
|
||||
"NewLisp": "#87AED7",
|
||||
"Nextflow": "#3ac486",
|
||||
"Nginx": "#009639",
|
||||
"Nim": "#ffc200",
|
||||
"Nit": "#009917",
|
||||
"Nix": "#7e7eff",
|
||||
"NPM Config": "#cb3837",
|
||||
"NSIS": null,
|
||||
"Nu": "#c9df40",
|
||||
"NumPy": "#9C8AF9",
|
||||
"Nunjucks": "#3d8137",
|
||||
"NWScript": "#111522",
|
||||
"Objective-C": "#438eff",
|
||||
"Objective-C++": "#6866fb",
|
||||
"Objective-J": "#ff0c5a",
|
||||
"ObjectScript": "#424893",
|
||||
"OCaml": "#3be133",
|
||||
"Odin": "#60AFFE",
|
||||
"Omgrofl": "#cabbff",
|
||||
"ooc": "#b0b77e",
|
||||
"Opa": null,
|
||||
"Opal": "#f7ede0",
|
||||
"Open Policy Agent": "#7d9199",
|
||||
"OpenCL": "#ed2e2d",
|
||||
"OpenEdge ABL": "#5ce600",
|
||||
"OpenQASM": "#AA70FF",
|
||||
"OpenRC runscript": null,
|
||||
"OpenSCAD": "#e5cd45",
|
||||
"Org": "#77aa99",
|
||||
"Ox": null,
|
||||
"Oxygene": "#cdd0e3",
|
||||
"Oz": "#fab738",
|
||||
"P4": "#7055b5",
|
||||
"Pan": "#cc0000",
|
||||
"Papyrus": "#6600cc",
|
||||
"Parrot": "#f3ca0a",
|
||||
"Parrot Assembly": null,
|
||||
"Parrot Internal Representation": null,
|
||||
"Pascal": "#E3F171",
|
||||
"Pawn": "#dbb284",
|
||||
"PEG.js": "#234d6b",
|
||||
"Pep8": "#C76F5B",
|
||||
"Perl": "#0298c3",
|
||||
"PHP": "#4F5D95",
|
||||
"PicoLisp": "#6067af",
|
||||
"PigLatin": "#fcd7de",
|
||||
"Pike": "#005390",
|
||||
"PLpgSQL": "#336790",
|
||||
"PLSQL": "#dad8d8",
|
||||
"PogoScript": "#d80074",
|
||||
"Pony": null,
|
||||
"PostCSS": "#dc3a0c",
|
||||
"PostScript": "#da291c",
|
||||
"POV-Ray SDL": "#6bac65",
|
||||
"PowerBuilder": "#8f0f8d",
|
||||
"PowerShell": "#012456",
|
||||
"Prisma": "#0c344b",
|
||||
"Processing": "#0096D8",
|
||||
"Prolog": "#74283c",
|
||||
"Propeller Spin": "#7fa2a7",
|
||||
"Pug": "#a86454",
|
||||
"Puppet": "#302B6D",
|
||||
"PureBasic": "#5a6986",
|
||||
"PureScript": "#1D222D",
|
||||
"Python": "#3572A5",
|
||||
"Python console": "#3572A5",
|
||||
"Python traceback": "#3572A5",
|
||||
"q": "#0040cd",
|
||||
"Q#": "#fed659",
|
||||
"QMake": null,
|
||||
"QML": "#44a51c",
|
||||
"Qt Script": "#00b841",
|
||||
"Quake": "#882233",
|
||||
"R": "#198CE7",
|
||||
"Racket": "#3c5caa",
|
||||
"Ragel": "#9d5200",
|
||||
"Raku": "#0000fb",
|
||||
"RAML": "#77d9fb",
|
||||
"Rascal": "#fffaa0",
|
||||
"RDoc": "#701516",
|
||||
"REALbasic": null,
|
||||
"Reason": "#ff5847",
|
||||
"Rebol": "#358a5b",
|
||||
"Record Jar": "#0673ba",
|
||||
"Red": "#f50000",
|
||||
"Redcode": null,
|
||||
"Regular Expression": "#009a00",
|
||||
"Ren'Py": "#ff7f7f",
|
||||
"RenderScript": null,
|
||||
"ReScript": "#ed5051",
|
||||
"reStructuredText": "#141414",
|
||||
"REXX": "#d90e09",
|
||||
"Ring": "#2D54CB",
|
||||
"Riot": "#A71E49",
|
||||
"RMarkdown": "#198ce7",
|
||||
"RobotFramework": "#00c0b5",
|
||||
"Roff": "#ecdebe",
|
||||
"Roff Manpage": "#ecdebe",
|
||||
"Rouge": "#cc0088",
|
||||
"RPC": null,
|
||||
"Ruby": "#701516",
|
||||
"RUNOFF": "#665a4e",
|
||||
"Rust": "#dea584",
|
||||
"Sage": null,
|
||||
"SaltStack": "#646464",
|
||||
"SAS": "#B34936",
|
||||
"Sass": "#a53b70",
|
||||
"Scala": "#c22d40",
|
||||
"Scaml": "#bd181a",
|
||||
"Scheme": "#1e4aec",
|
||||
"Scilab": "#ca0f21",
|
||||
"SCSS": "#c6538c",
|
||||
"sed": "#64b970",
|
||||
"Self": "#0579aa",
|
||||
"ShaderLab": "#222c37",
|
||||
"Shell": "#89e051",
|
||||
"ShellSession": null,
|
||||
"Shen": "#120F14",
|
||||
"Sieve": null,
|
||||
"Singularity": "#64E6AD",
|
||||
"Slash": "#007eff",
|
||||
"Slice": "#003fa2",
|
||||
"Slim": "#2b2b2b",
|
||||
"Smali": null,
|
||||
"Smalltalk": "#596706",
|
||||
"Smarty": "#f0c040",
|
||||
"SmPL": "#c94949",
|
||||
"SMT": null,
|
||||
"Solidity": "#AA6746",
|
||||
"SourcePawn": "#f69e1d",
|
||||
"SPARQL": "#0C4597",
|
||||
"SQF": "#3F3F3F",
|
||||
"SQL": "#e38c00",
|
||||
"SQLPL": "#e38c00",
|
||||
"Squirrel": "#800000",
|
||||
"SRecode Template": "#348a34",
|
||||
"Stan": "#b2011d",
|
||||
"Standard ML": "#dc566d",
|
||||
"Starlark": "#76d275",
|
||||
"Stata": "#1a5f91",
|
||||
"StringTemplate": "#3fb34f",
|
||||
"Stylus": "#ff6347",
|
||||
"SubRip Text": "#9e0101",
|
||||
"SugarSS": "#2fcc9f",
|
||||
"SuperCollider": "#46390b",
|
||||
"Svelte": "#ff3e00",
|
||||
"SVG": "#ff9900",
|
||||
"Swift": "#F05138",
|
||||
"SWIG": null,
|
||||
"SystemVerilog": "#DAE1C2",
|
||||
"Tcl": "#e4cc98",
|
||||
"Tcsh": null,
|
||||
"Terra": "#00004c",
|
||||
"TeX": "#3D6117",
|
||||
"Textile": "#ffe7ac",
|
||||
"TextMate Properties": "#df66e4",
|
||||
"Thrift": "#D12127",
|
||||
"TI Program": "#A0AA87",
|
||||
"TLA": "#4b0079",
|
||||
"TOML": "#9c4221",
|
||||
"TSQL": "#e38c00",
|
||||
"TSV": "#237346",
|
||||
"TSX": "#2b7489",
|
||||
"Turing": "#cf142b",
|
||||
"Twig": "#c1d026",
|
||||
"TXL": "#0178b8",
|
||||
"TypeScript": "#2b7489",
|
||||
"Unified Parallel C": "#4e3617",
|
||||
"Unity3D Asset": "#222c37",
|
||||
"Unix Assembly": null,
|
||||
"Uno": "#9933cc",
|
||||
"UnrealScript": "#a54c4d",
|
||||
"UrWeb": "#ccccee",
|
||||
"V": "#4f87c4",
|
||||
"Vala": "#fbe5cd",
|
||||
"Valve Data Format": "#f26025",
|
||||
"VBA": "#867db1",
|
||||
"VBScript": "#15dcdc",
|
||||
"VCL": "#148AA8",
|
||||
"Verilog": "#b2b7f8",
|
||||
"VHDL": "#adb2cb",
|
||||
"Vim Help File": "#199f4b",
|
||||
"Vim Script": "#199f4b",
|
||||
"Vim Snippet": "#199f4b",
|
||||
"Visual Basic .NET": "#945db7",
|
||||
"Volt": "#1F1F1F",
|
||||
"Vue": "#41b883",
|
||||
"wdl": "#42f1f4",
|
||||
"Web Ontology Language": "#5b70bd",
|
||||
"WebAssembly": "#04133b",
|
||||
"WebIDL": null,
|
||||
"Wikitext": "#fc5757",
|
||||
"Windows Registry Entries": "#52d5ff",
|
||||
"wisp": "#7582D1",
|
||||
"Wollok": "#a23738",
|
||||
"World of Warcraft Addon Data": "#f7e43f",
|
||||
"X10": "#4B6BEF",
|
||||
"xBase": "#403a40",
|
||||
"XC": "#99DA07",
|
||||
"XML": "#0060ac",
|
||||
"XML Property List": "#0060ac",
|
||||
"Xojo": "#81bd41",
|
||||
"Xonsh": "#285EEF",
|
||||
"XProc": null,
|
||||
"XQuery": "#5232e7",
|
||||
"XS": null,
|
||||
"XSLT": "#EB8CEB",
|
||||
"Xtend": "#24255d",
|
||||
"Yacc": "#4B6C4B",
|
||||
"YAML": "#cb171e",
|
||||
"YARA": "#220000",
|
||||
"YASnippet": "#32AB90",
|
||||
"ZAP": "#0d665e",
|
||||
"Zeek": null,
|
||||
"ZenScript": "#00BCD1",
|
||||
"Zephir": "#118f9e",
|
||||
"Zig": "#ec915c",
|
||||
"ZIL": "#dc75e5",
|
||||
"Zimpl": "#d67711"
|
||||
}
|
|
@ -9,6 +9,11 @@
|
|||
"title": "sharing.facebook",
|
||||
"url": "https://www.facebook.com/sharer/sharer.php?u=%s"e=%s"
|
||||
},
|
||||
"line": {
|
||||
"icon": "line",
|
||||
"title": "sharing.line",
|
||||
"url": "https://line.me/R/share?text=%s%%20%s"
|
||||
},
|
||||
"linkedin": {
|
||||
"icon": "linkedin",
|
||||
"title": "sharing.linkedin",
|
||||
|
@ -48,5 +53,5 @@
|
|||
"icon": "mastodon",
|
||||
"title": "sharing.mastodon",
|
||||
"url": "https://s2f.kytta.dev/?text=%[2]s %[1]s"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,75 +1,71 @@
|
|||
const fs = require('fs');
|
||||
const fs = require("fs");
|
||||
|
||||
const configDir = "./exampleSite/config/_default";
|
||||
const contentDir = "./exampleSite/content";
|
||||
const defaultLang = "en";
|
||||
|
||||
var targetLangs = []
|
||||
var targetLangs = [];
|
||||
|
||||
function readConfigs() {
|
||||
const files = fs.readdirSync(configDir);
|
||||
files.forEach(file => {
|
||||
//console.log(file)
|
||||
if(file.indexOf("languages.") > -1) {
|
||||
var lang = file.split(".")[1];
|
||||
//console.log(lang)
|
||||
if(lang != defaultLang) {
|
||||
targetLangs.push(lang);
|
||||
}
|
||||
}
|
||||
});
|
||||
const files = fs.readdirSync(configDir);
|
||||
files.forEach((file) => {
|
||||
//console.log(file)
|
||||
if (file.indexOf("languages.") > -1) {
|
||||
var lang = file.split(".")[1];
|
||||
//console.log(lang)
|
||||
if (lang != defaultLang) {
|
||||
targetLangs.push(lang);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
async function processFile(filePath, file) {
|
||||
if (filePath.indexOf("index.md") > -1) {
|
||||
if (filePath.indexOf("index.md") > -1) {
|
||||
//console.log("processing", filePath)
|
||||
|
||||
//console.log("processing", filePath)
|
||||
|
||||
for(var i in targetLangs) {
|
||||
const targetLang = targetLangs[i];
|
||||
var targetFilePath = filePath.replace(".md", "." + targetLang + ".md");
|
||||
//var targetFileName = file.replace(".md", "." + targetLang + ".md");
|
||||
for (var i in targetLangs) {
|
||||
const targetLang = targetLangs[i];
|
||||
var targetFilePath = filePath.replace(".md", "." + targetLang + ".md");
|
||||
//var targetFileName = file.replace(".md", "." + targetLang + ".md");
|
||||
|
||||
if(fs.existsSync(targetFilePath)) {
|
||||
//console.log("file already exists", targetFilePath);
|
||||
if (fs.existsSync(targetFilePath)) {
|
||||
//console.log("file already exists", targetFilePath);
|
||||
|
||||
const data = fs.readFileSync(filePath, 'utf8');
|
||||
const data2 = fs.readFileSync(targetFilePath, 'utf8');
|
||||
if(data != data2) {
|
||||
//console.log("file contents are different", targetFilePath);
|
||||
}else{
|
||||
//console.log("file contents are the same", targetFilePath);
|
||||
console.log(targetFilePath);
|
||||
//process.exit(1);
|
||||
}
|
||||
|
||||
}else{
|
||||
//console.log("file does not exist", targetFilePath);
|
||||
}
|
||||
const data = fs.readFileSync(filePath, "utf8");
|
||||
const data2 = fs.readFileSync(targetFilePath, "utf8");
|
||||
if (data != data2) {
|
||||
//console.log("file contents are different", targetFilePath);
|
||||
} else {
|
||||
//console.log("file contents are the same", targetFilePath);
|
||||
console.log(targetFilePath);
|
||||
//process.exit(1);
|
||||
}
|
||||
|
||||
} else
|
||||
return
|
||||
} else {
|
||||
//console.log("file does not exist", targetFilePath);
|
||||
}
|
||||
}
|
||||
} else return;
|
||||
}
|
||||
|
||||
async function processFolder(folderPath) {
|
||||
const files = fs.readdirSync(folderPath);
|
||||
const files = fs.readdirSync(folderPath);
|
||||
|
||||
for (var i in files) {
|
||||
const file = files[i];
|
||||
const filePath = `${folderPath}/${file}`;
|
||||
const isDir = fs.lstatSync(filePath).isDirectory();
|
||||
if (isDir) {
|
||||
await processFolder(filePath);
|
||||
} else {
|
||||
await processFile(filePath, file);
|
||||
}
|
||||
for (var i in files) {
|
||||
const file = files[i];
|
||||
const filePath = `${folderPath}/${file}`;
|
||||
const isDir = fs.lstatSync(filePath).isDirectory();
|
||||
if (isDir) {
|
||||
await processFolder(filePath);
|
||||
} else {
|
||||
await processFile(filePath, file);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function createLinks() {
|
||||
processFolder(contentDir);
|
||||
processFolder(contentDir);
|
||||
}
|
||||
|
||||
readConfigs();
|
||||
createLinks();
|
||||
createLinks();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const fs = require('fs');
|
||||
const translate = require('@iamtraction/google-translate');
|
||||
const fs = require("fs/promises");
|
||||
const translate = require("@iamtraction/google-translate");
|
||||
|
||||
const defaultLang = "en";
|
||||
const targetLang = process.argv[2] || "en";
|
||||
|
@ -8,56 +8,54 @@ const targetLangIso = targetLang == "pt" ? "pt-pt" : targetLang;
|
|||
const targetFilePath = filePath.replace(".md", "." + targetLangIso + ".md");
|
||||
|
||||
async function convert(text, from, to) {
|
||||
var options = {
|
||||
from: from,
|
||||
to: to
|
||||
};
|
||||
var translated_text = await translate(text, options);
|
||||
return translated_text.text;
|
||||
const options = { from, to };
|
||||
const translated_text = await translate(text, options);
|
||||
return translated_text.text;
|
||||
}
|
||||
|
||||
console.log(filePath);
|
||||
console.log(targetFilePath);
|
||||
|
||||
async function processFrontMatter(block) {
|
||||
var array = block.split("\n");
|
||||
var translatedBlock = "";
|
||||
for (var i = 0; i < array.length; i++) {
|
||||
if (array[i].indexOf(":") > -1) {
|
||||
var elements = array[i].split(":");
|
||||
var newElement = "";
|
||||
if (elements[0] == "title" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "summary" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "categories" ||
|
||||
elements[0] == "tags") {
|
||||
var translatedElement = elements[1] ? await convert(elements[1], defaultLang, targetLang) : elements[1];
|
||||
newElement = elements[0] + ": " + translatedElement;
|
||||
} else {
|
||||
newElement = array[i];
|
||||
}
|
||||
} else {
|
||||
newElement = array[i];
|
||||
}
|
||||
translatedBlock += newElement + "\n";
|
||||
const array = block.split("\n");
|
||||
let translatedBlock = "";
|
||||
for (const line of array) {
|
||||
let newElement = line;
|
||||
if (line.indexOf(":") > -1) {
|
||||
const elements = line.split(":");
|
||||
if (
|
||||
elements[0] == "title" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "summary" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "categories" ||
|
||||
elements[0] == "tags"
|
||||
) {
|
||||
const translatedElement = elements[1]
|
||||
? await convert(elements[1], defaultLang, targetLang)
|
||||
: elements[1];
|
||||
newElement = elements[0] + ": " + translatedElement;
|
||||
}
|
||||
}
|
||||
return translatedBlock;
|
||||
translatedBlock += newElement + "\n";
|
||||
}
|
||||
return translatedBlock;
|
||||
}
|
||||
|
||||
|
||||
async function main() {
|
||||
const fileContent = fs.readFileSync(filePath, 'utf8');
|
||||
const fileContent = await fs.readFile(filePath, "utf8");
|
||||
|
||||
var array = fileContent.split("---\n")
|
||||
var frontMatter = array[1];
|
||||
var content = array[2];
|
||||
const array = fileContent.split("---\n");
|
||||
const frontMatter = array[1];
|
||||
const content = array[2];
|
||||
|
||||
var translatedFrontMatter = await processFrontMatter(frontMatter);
|
||||
var translatedContent = await convert(content, defaultLang, targetLang);
|
||||
const translatedFrontMatter = await processFrontMatter(frontMatter);
|
||||
const translatedContent = await convert(content, defaultLang, targetLang);
|
||||
|
||||
var newFileContent = "---\n" + translatedFrontMatter + "---\n" + translatedContent;
|
||||
fs.writeFileSync(targetFilePath, newFileContent, 'utf8');
|
||||
const newFileContent =
|
||||
"---\n" + translatedFrontMatter + "---\n" + translatedContent;
|
||||
await fs.writeFile(targetFilePath, newFileContent, "utf8");
|
||||
}
|
||||
|
||||
main();
|
||||
main();
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const fs = require('fs');
|
||||
const translate = require('@iamtraction/google-translate');
|
||||
const fs = require("fs/promises");
|
||||
const translate = require("@iamtraction/google-translate");
|
||||
|
||||
const configDir = "./exampleSite/config/_default";
|
||||
const contentDir = "./exampleSite/content";
|
||||
|
@ -7,98 +7,104 @@ const defaultLang = "en";
|
|||
const targetLang = process.argv[2] || "en";
|
||||
const targetLangIso = targetLang == "pt" ? "pt-pt" : targetLang;
|
||||
|
||||
|
||||
function createConfigs() {
|
||||
const files = fs.readdirSync(configDir);
|
||||
files.forEach(file => {
|
||||
const filePath = `${configDir}/${file}`;
|
||||
if (filePath.indexOf("languages.en.toml") > -1 ||
|
||||
filePath.indexOf("menus.en.toml") > -1) {
|
||||
var fileContent = fs.readFileSync(filePath, 'utf8');
|
||||
fs.writeFileSync(filePath.replace(".en.toml", "." + targetLangIso + ".toml"), fileContent, 'utf8');
|
||||
}
|
||||
});
|
||||
async function createConfigs() {
|
||||
const files = await fs.readdir(configDir);
|
||||
for (const file of files) {
|
||||
const filePath = `${configDir}/${file}`;
|
||||
if (
|
||||
filePath.indexOf("languages.en.toml") > -1 ||
|
||||
filePath.indexOf("menus.en.toml") > -1
|
||||
) {
|
||||
const fileContent = await fs.readFile(filePath, "utf8");
|
||||
await fs.writeFile(
|
||||
filePath.replace(".en.toml", "." + targetLangIso + ".toml"),
|
||||
fileContent,
|
||||
"utf8"
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function convert(text, from, to) {
|
||||
var options = {
|
||||
from: from,
|
||||
to: to
|
||||
};
|
||||
var translated_text = await translate(text, options)
|
||||
.catch(err => {
|
||||
console.error(err);
|
||||
});;
|
||||
return translated_text && translated_text.text? translated_text.text : '';
|
||||
const options = { from, to };
|
||||
const translated_text = await translate(text, options).catch((err) => {
|
||||
console.error(err);
|
||||
});
|
||||
return translated_text && translated_text.text ? translated_text.text : "";
|
||||
}
|
||||
|
||||
async function processFrontMatter(block) {
|
||||
var array = block.split("\n");
|
||||
var translatedBlock = "";
|
||||
for (var i = 0; i < array.length; i++) {
|
||||
if (array[i].indexOf(":") > -1) {
|
||||
var elements = array[i].split(":");
|
||||
var newElement = "";
|
||||
if (elements[0] == "title" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "summary" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "categories" ||
|
||||
elements[0] == "tags") {
|
||||
var translatedElement = elements[1] ? await convert(elements[1], defaultLang, targetLang) : elements[1];
|
||||
newElement = elements[0] + ": " + translatedElement;
|
||||
} else {
|
||||
newElement = array[i];
|
||||
}
|
||||
} else {
|
||||
newElement = array[i];
|
||||
}
|
||||
translatedBlock += newElement + "\n";
|
||||
const array = block.split("\n");
|
||||
let translatedBlock = "";
|
||||
for (const line of array) {
|
||||
let newElement = line;
|
||||
if (line.indexOf(":") > -1) {
|
||||
const elements = line.split(":");
|
||||
if (
|
||||
elements[0] == "title" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "summary" ||
|
||||
elements[0] == "description" ||
|
||||
elements[0] == "categories" ||
|
||||
elements[0] == "tags"
|
||||
) {
|
||||
const translatedElement = elements[1]
|
||||
? await convert(elements[1], defaultLang, targetLang)
|
||||
: elements[1];
|
||||
newElement = elements[0] + ": " + translatedElement;
|
||||
}
|
||||
}
|
||||
return translatedBlock;
|
||||
translatedBlock += newElement + "\n";
|
||||
}
|
||||
return translatedBlock;
|
||||
}
|
||||
|
||||
async function processFile(filePath) {
|
||||
console.log("translating", filePath)
|
||||
if (filePath.indexOf("index.md") > -1) {
|
||||
console.log("translating", filePath);
|
||||
if (filePath.indexOf("index.md") > -1) {
|
||||
const targetFilePath = filePath.replace(
|
||||
".md",
|
||||
"." + targetLangIso + ".md"
|
||||
);
|
||||
|
||||
const targetFilePath = filePath.replace(".md", "." + targetLangIso + ".md");
|
||||
const fileContent = await fs.readFile(filePath, "utf8");
|
||||
|
||||
const fileContent = fs.readFileSync(filePath, 'utf8');
|
||||
const array = fileContent.split("---\n");
|
||||
const frontMatter = array[1];
|
||||
const content = array[2];
|
||||
|
||||
var array = fileContent.split("---\n")
|
||||
var frontMatter = array[1];
|
||||
var content = array[2];
|
||||
const translatedFrontMatter = await processFrontMatter(frontMatter);
|
||||
const translatedContent = await convert(content, defaultLang, targetLang);
|
||||
|
||||
var translatedFrontMatter = await processFrontMatter(frontMatter);
|
||||
var translatedContent = await convert(content, defaultLang, targetLang);
|
||||
|
||||
var newFileContent = "---\n" + translatedFrontMatter + "---\n" + translatedContent;
|
||||
fs.writeFileSync(targetFilePath, newFileContent, 'utf8');
|
||||
|
||||
} else
|
||||
return
|
||||
const newFileContent =
|
||||
"---\n" + translatedFrontMatter + "---\n" + translatedContent;
|
||||
await fs.writeFile(targetFilePath, newFileContent, "utf8");
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
async function processFolder(folderPath) {
|
||||
const files = fs.readdirSync(folderPath);
|
||||
const files = await fs.readdir(folderPath);
|
||||
|
||||
for (var i in files) {
|
||||
const file = files[i];
|
||||
const filePath = `${folderPath}/${file}`;
|
||||
const isDir = fs.lstatSync(filePath).isDirectory();
|
||||
console.log(filePath, isDir);
|
||||
if (isDir) {
|
||||
await processFolder(filePath);
|
||||
} else {
|
||||
await processFile(filePath);
|
||||
}
|
||||
for (const file of files) {
|
||||
const filePath = `${folderPath}/${file}`;
|
||||
const isDir = (await fs.lstat(filePath)).isDirectory();
|
||||
console.log(filePath, isDir);
|
||||
if (isDir) {
|
||||
await processFolder(filePath);
|
||||
} else {
|
||||
await processFile(filePath);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function createContent() {
|
||||
processFolder(contentDir);
|
||||
await processFolder(contentDir);
|
||||
}
|
||||
|
||||
createConfigs();
|
||||
createContent();
|
||||
(async () => {
|
||||
await createConfigs();
|
||||
await createContent();
|
||||
})();
|
||||
|
||||
|
|
|
@ -1,66 +1,71 @@
|
|||
const fs = require('fs');
|
||||
const fs = require("fs/promises");
|
||||
|
||||
const configDir = "./exampleSite/config/_default";
|
||||
const contentDir = "./exampleSite/content";
|
||||
const defaultLang = "en";
|
||||
|
||||
var targetLangs = []
|
||||
const targetLangs = [];
|
||||
|
||||
function readConfigs() {
|
||||
const files = fs.readdirSync(configDir);
|
||||
files.forEach(file => {
|
||||
console.log(file)
|
||||
if(file.indexOf("languages.") > -1) {
|
||||
var lang = file.split(".")[1];
|
||||
console.log(lang)
|
||||
if(lang != defaultLang) {
|
||||
targetLangs.push(lang);
|
||||
}
|
||||
}
|
||||
});
|
||||
async function readConfigs() {
|
||||
const files = await fs.readdir(configDir);
|
||||
for (const file of files) {
|
||||
console.log(file);
|
||||
if (file.indexOf("languages.") > -1) {
|
||||
const lang = file.split(".")[1];
|
||||
console.log(lang);
|
||||
if (lang != defaultLang) {
|
||||
targetLangs.push(lang);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function processFile(filePath, file) {
|
||||
if (filePath.indexOf("index.md") > -1) {
|
||||
if (filePath.indexOf("index.md") > -1) {
|
||||
console.log("processing", filePath);
|
||||
|
||||
console.log("processing", filePath)
|
||||
|
||||
for(var i in targetLangs) {
|
||||
const targetLang = targetLangs[i];
|
||||
var targetFilePath = filePath.replace(".md", "." + targetLang + ".md");
|
||||
//var targetFileName = file.replace(".md", "." + targetLang + ".md");
|
||||
for (const targetLang of targetLangs) {
|
||||
const targetFilePath = filePath.replace(".md", "." + targetLang + ".md");
|
||||
|
||||
if(fs.existsSync(targetFilePath)) {
|
||||
console.log("file already exists", targetFilePath);
|
||||
}else{
|
||||
console.log("creating file", targetFilePath);
|
||||
//fs.symlinkSync(file, targetFilePath, 'junction');
|
||||
fs.copyFileSync(filePath, targetFilePath);
|
||||
}
|
||||
}
|
||||
let exists = true;
|
||||
try {
|
||||
await fs.access(targetFilePath);
|
||||
} catch {
|
||||
exists = false;
|
||||
}
|
||||
|
||||
} else
|
||||
return
|
||||
if (exists) {
|
||||
console.log("file already exists", targetFilePath);
|
||||
} else {
|
||||
console.log("creating file", targetFilePath);
|
||||
await fs.copyFile(filePath, targetFilePath);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
async function processFolder(folderPath) {
|
||||
const files = fs.readdirSync(folderPath);
|
||||
const files = await fs.readdir(folderPath);
|
||||
|
||||
for (var i in files) {
|
||||
const file = files[i];
|
||||
const filePath = `${folderPath}/${file}`;
|
||||
const isDir = fs.lstatSync(filePath).isDirectory();
|
||||
if (isDir) {
|
||||
await processFolder(filePath);
|
||||
} else {
|
||||
await processFile(filePath, file);
|
||||
}
|
||||
for (const file of files) {
|
||||
const filePath = `${folderPath}/${file}`;
|
||||
const isDir = (await fs.lstat(filePath)).isDirectory();
|
||||
if (isDir) {
|
||||
await processFolder(filePath);
|
||||
} else {
|
||||
await processFile(filePath, file);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function createLinks() {
|
||||
processFolder(contentDir);
|
||||
await processFolder(contentDir);
|
||||
}
|
||||
|
||||
readConfigs();
|
||||
createLinks();
|
||||
(async () => {
|
||||
await readConfigs();
|
||||
await createLinks();
|
||||
})();
|
||||
|
||||
|
|
|
@ -58,6 +58,7 @@ search:
|
|||
sharing:
|
||||
email: "إرسال عبر البريد الإلكترونى"
|
||||
facebook: "النشر على فيسبوك"
|
||||
line: "شارك على لاين"
|
||||
linkedin: "النشر على لينكدان"
|
||||
pinterest: "النشر على بينترست"
|
||||
reddit: "النشر على ريديت"
|
||||
|
@ -67,4 +68,4 @@ shortcode:
|
|||
recent_articles: "تم النشر مؤخرا"
|
||||
|
||||
recent:
|
||||
show_more: "قراءة المزيد"
|
||||
show_more: "قراءة المزيد"
|
||||
|
|
|
@ -26,7 +26,6 @@ article:
|
|||
this_article: "Тази Статия"
|
||||
related_articles: "Подобни"
|
||||
|
||||
|
||||
author:
|
||||
byline_title: "Автор"
|
||||
|
||||
|
@ -60,6 +59,7 @@ search:
|
|||
sharing:
|
||||
email: "Изпрати чрез имейл"
|
||||
facebook: "Сподели на Facebook"
|
||||
line: "Споделяне в LINE"
|
||||
linkedin: "Сподели на LinkedIn"
|
||||
pinterest: "Закачи в Pinterest"
|
||||
reddit: "Добави на Reddit"
|
||||
|
|
|
@ -1,71 +1,72 @@
|
|||
global:
|
||||
language: "BN"
|
||||
|
||||
article:
|
||||
anchor_label: "Anchor"
|
||||
date: "{{ .Date }}"
|
||||
date_updated: "সর্বশেষ সম্পাদনার তারিখ: {{ .Date }}"
|
||||
draft: "খসড়া"
|
||||
edit_title: "সম্পাদনা করুন"
|
||||
reading_time:
|
||||
one: "{{ .Count }} মিনিট"
|
||||
other: "{{ .Count }} মিনিট"
|
||||
reading_time_title: "পড়ার সময়"
|
||||
table_of_contents: "বিষয়সূচী"
|
||||
word_count:
|
||||
one: "{{ .Count }} টি শব্দ"
|
||||
other: "{{ .Count }} টি শব্দ"
|
||||
views:
|
||||
one: "{{ .Count }} বার দেখা হয়েছে"
|
||||
other: "{{ .Count }} বার দেখা হয়েছে"
|
||||
likes:
|
||||
one: "{{ .Count }} বার পছন্দ করা হয়েছে"
|
||||
other: "{{ .Count }} বার পছন্দ করা হয়েছে"
|
||||
part_of_series: "This article is part of a series."
|
||||
part: "Part"
|
||||
this_article: "This Article"
|
||||
related_articles: "Related"
|
||||
|
||||
author:
|
||||
byline_title: "লেখক"
|
||||
|
||||
code:
|
||||
copy: "কপি করুন"
|
||||
copied: "কপি হয়ে গেছে"
|
||||
|
||||
error:
|
||||
404_title: "পেজটি খুঁজে পাওয়া যায়নি :confused:"
|
||||
404_error: "Error 404"
|
||||
404_description: "মনে হচ্ছে, আপনার অনুরোধ করা পেজটি খুঁজে পাওয়া যায়নি।"
|
||||
|
||||
footer:
|
||||
dark_appearance: "ডার্ক মোডে স্যুইচ করুন"
|
||||
light_appearance: "লাইট মোডে স্যুইচ করুন"
|
||||
powered_by: "{{ .Hugo }} এবং {{ .Blowfish }} দ্বারা চালিত"
|
||||
|
||||
list:
|
||||
externalurl_title: "অন্য ওয়েবসাইটের লিংক"
|
||||
no_articles: "এখানে তালিকাভুক্ত করার মতো আপাতত কিছুই নেই।"
|
||||
|
||||
nav:
|
||||
scroll_to_top_title: "পেজের উপরের দিকে যান"
|
||||
skip_to_main: "মূল বিষয়ে যান"
|
||||
|
||||
search:
|
||||
open_button_title: "খুঁজুন (/)"
|
||||
close_button_title: "বন্ধ করুন (Esc)"
|
||||
input_placeholder: "খুঁজুন"
|
||||
|
||||
sharing:
|
||||
email: "ইমেল করুন"
|
||||
facebook: "ফেসবুকে শেয়ার করুন"
|
||||
linkedin: "লিংকডইনে শেয়ার করুন"
|
||||
pinterest: "পিন্টারেস্টে পিন করুন"
|
||||
reddit: "রেড্ডিটে জমা দিন"
|
||||
twitter: "ট্যুইট করুন"
|
||||
|
||||
shortcode:
|
||||
recent_articles: "সাম্প্রতিক"
|
||||
|
||||
recent:
|
||||
show_more: "আরো দেখুন"
|
||||
global:
|
||||
language: "BN"
|
||||
|
||||
article:
|
||||
anchor_label: "Anchor"
|
||||
date: "{{ .Date }}"
|
||||
date_updated: "সর্বশেষ সম্পাদনার তারিখ: {{ .Date }}"
|
||||
draft: "খসড়া"
|
||||
edit_title: "সম্পাদনা করুন"
|
||||
reading_time:
|
||||
one: "{{ .Count }} মিনিট"
|
||||
other: "{{ .Count }} মিনিট"
|
||||
reading_time_title: "পড়ার সময়"
|
||||
table_of_contents: "বিষয়সূচী"
|
||||
word_count:
|
||||
one: "{{ .Count }} টি শব্দ"
|
||||
other: "{{ .Count }} টি শব্দ"
|
||||
views:
|
||||
one: "{{ .Count }} বার দেখা হয়েছে"
|
||||
other: "{{ .Count }} বার দেখা হয়েছে"
|
||||
likes:
|
||||
one: "{{ .Count }} বার পছন্দ করা হয়েছে"
|
||||
other: "{{ .Count }} বার পছন্দ করা হয়েছে"
|
||||
part_of_series: "This article is part of a series."
|
||||
part: "Part"
|
||||
this_article: "This Article"
|
||||
related_articles: "Related"
|
||||
|
||||
author:
|
||||
byline_title: "লেখক"
|
||||
|
||||
code:
|
||||
copy: "কপি করুন"
|
||||
copied: "কপি হয়ে গেছে"
|
||||
|
||||
error:
|
||||
404_title: "পেজটি খুঁজে পাওয়া যায়নি :confused:"
|
||||
404_error: "Error 404"
|
||||
404_description: "মনে হচ্ছে, আপনার অনুরোধ করা পেজটি খুঁজে পাওয়া যায়নি।"
|
||||
|
||||
footer:
|
||||
dark_appearance: "ডার্ক মোডে স্যুইচ করুন"
|
||||
light_appearance: "লাইট মোডে স্যুইচ করুন"
|
||||
powered_by: "{{ .Hugo }} এবং {{ .Blowfish }} দ্বারা চালিত"
|
||||
|
||||
list:
|
||||
externalurl_title: "অন্য ওয়েবসাইটের লিংক"
|
||||
no_articles: "এখানে তালিকাভুক্ত করার মতো আপাতত কিছুই নেই।"
|
||||
|
||||
nav:
|
||||
scroll_to_top_title: "পেজের উপরের দিকে যান"
|
||||
skip_to_main: "মূল বিষয়ে যান"
|
||||
|
||||
search:
|
||||
open_button_title: "খুঁজুন (/)"
|
||||
close_button_title: "বন্ধ করুন (Esc)"
|
||||
input_placeholder: "খুঁজুন"
|
||||
|
||||
sharing:
|
||||
email: "ইমেল করুন"
|
||||
facebook: "ফেসবুকে শেয়ার করুন"
|
||||
line: "লাইনে শেয়ার করুন"
|
||||
linkedin: "লিংকডইনে শেয়ার করুন"
|
||||
pinterest: "পিন্টারেস্টে পিন করুন"
|
||||
reddit: "রেড্ডিটে জমা দিন"
|
||||
twitter: "ট্যুইট করুন"
|
||||
|
||||
shortcode:
|
||||
recent_articles: "সাম্প্রতিক"
|
||||
|
||||
recent:
|
||||
show_more: "আরো দেখুন"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "Enviar per correu electrònic"
|
||||
facebook: "Compartir amb Facebook"
|
||||
line: "Compartir amb LINE"
|
||||
linkedin: "Compartir amb LinkedIn"
|
||||
pinterest: "Compartir amb Pinterest"
|
||||
reddit: "Publicar a Reddit"
|
||||
|
@ -71,4 +72,4 @@ shortcode:
|
|||
recent_articles: "Recent"
|
||||
|
||||
recent:
|
||||
show_more: "Mostrar més"
|
||||
show_more: "Mostrar més"
|
||||
|
|
|
@ -1,71 +1,72 @@
|
|||
global:
|
||||
language: "CS"
|
||||
|
||||
article:
|
||||
anchor_label: "Kotva"
|
||||
date: "{{ .Date }}"
|
||||
date_updated: "Aktualizováno: {{ .Date }}"
|
||||
draft: "Návrh"
|
||||
edit_title: "Upravit"
|
||||
reading_time:
|
||||
one: "{{ .Count }} min"
|
||||
other: "{{ .Count }} min"
|
||||
reading_time_title: "Doba čtení"
|
||||
table_of_contents: "Obsah"
|
||||
word_count:
|
||||
one: "{{ .Count }} slovo"
|
||||
other: "{{ .Count }} slov"
|
||||
views:
|
||||
one: "{{ .Count }} zhlédnutí"
|
||||
other: "{{ .Count }} zhlédnutí"
|
||||
likes:
|
||||
one: "{{ .Count }} líbí se mi"
|
||||
other: "{{ .Count }} líbí se mi"
|
||||
part_of_series: "Tento článek patří do série."
|
||||
part: "Část"
|
||||
this_article: "Tento článek"
|
||||
related_articles: "Related"
|
||||
|
||||
author:
|
||||
byline_title: "Autor"
|
||||
|
||||
code:
|
||||
copy: "Kopírovat"
|
||||
copied: "Zkopírováno"
|
||||
|
||||
error:
|
||||
404_title: "Stránka nenalezena :confused:"
|
||||
404_error: "Error 404"
|
||||
404_description: "Zdá se, že stránka neexistuje."
|
||||
|
||||
footer:
|
||||
dark_appearance: "Přepnout na tmavý režim"
|
||||
light_appearance: "Přepnout na světlý režim"
|
||||
powered_by: "Postaveno na technologiích {{ .Hugo }} & {{ .Theme }}"
|
||||
|
||||
list:
|
||||
externalurl_title: "Odkaz na externí stránku"
|
||||
no_articles: "Tato sekce zatím neobsahuje žádné články."
|
||||
|
||||
nav:
|
||||
scroll_to_top_title: "Nahoru"
|
||||
skip_to_main: "Přeskočit na hlavní obsah"
|
||||
|
||||
search:
|
||||
open_button_title: "Vyhledat (/)"
|
||||
close_button_title: "Zavřít (Esc)"
|
||||
input_placeholder: "Hledat"
|
||||
|
||||
sharing:
|
||||
email: "Poslat emailem"
|
||||
facebook: "Sdílet na Facebook"
|
||||
linkedin: "Sdílet na LinkedIn"
|
||||
pinterest: "Připnout na Pinterest"
|
||||
reddit: "Přidat na Reddit"
|
||||
twitter: "Tweet na Twitter"
|
||||
|
||||
shortcode:
|
||||
recent_articles: "Nedávné"
|
||||
|
||||
recent:
|
||||
show_more: "Zobrazit další"
|
||||
global:
|
||||
language: "CS"
|
||||
|
||||
article:
|
||||
anchor_label: "Kotva"
|
||||
date: "{{ .Date }}"
|
||||
date_updated: "Aktualizováno: {{ .Date }}"
|
||||
draft: "Návrh"
|
||||
edit_title: "Upravit"
|
||||
reading_time:
|
||||
one: "{{ .Count }} min"
|
||||
other: "{{ .Count }} min"
|
||||
reading_time_title: "Doba čtení"
|
||||
table_of_contents: "Obsah"
|
||||
word_count:
|
||||
one: "{{ .Count }} slovo"
|
||||
other: "{{ .Count }} slov"
|
||||
views:
|
||||
one: "{{ .Count }} zhlédnutí"
|
||||
other: "{{ .Count }} zhlédnutí"
|
||||
likes:
|
||||
one: "{{ .Count }} líbí se mi"
|
||||
other: "{{ .Count }} líbí se mi"
|
||||
part_of_series: "Tento článek patří do série."
|
||||
part: "Část"
|
||||
this_article: "Tento článek"
|
||||
related_articles: "Related"
|
||||
|
||||
author:
|
||||
byline_title: "Autor"
|
||||
|
||||
code:
|
||||
copy: "Kopírovat"
|
||||
copied: "Zkopírováno"
|
||||
|
||||
error:
|
||||
404_title: "Stránka nenalezena :confused:"
|
||||
404_error: "Error 404"
|
||||
404_description: "Zdá se, že stránka neexistuje."
|
||||
|
||||
footer:
|
||||
dark_appearance: "Přepnout na tmavý režim"
|
||||
light_appearance: "Přepnout na světlý režim"
|
||||
powered_by: "Postaveno na technologiích {{ .Hugo }} & {{ .Theme }}"
|
||||
|
||||
list:
|
||||
externalurl_title: "Odkaz na externí stránku"
|
||||
no_articles: "Tato sekce zatím neobsahuje žádné články."
|
||||
|
||||
nav:
|
||||
scroll_to_top_title: "Nahoru"
|
||||
skip_to_main: "Přeskočit na hlavní obsah"
|
||||
|
||||
search:
|
||||
open_button_title: "Vyhledat (/)"
|
||||
close_button_title: "Zavřít (Esc)"
|
||||
input_placeholder: "Hledat"
|
||||
|
||||
sharing:
|
||||
email: "Poslat emailem"
|
||||
facebook: "Sdílet na Facebook"
|
||||
line: "Sdílejte na LINE"
|
||||
linkedin: "Sdílet na LinkedIn"
|
||||
pinterest: "Připnout na Pinterest"
|
||||
reddit: "Přidat na Reddit"
|
||||
twitter: "Tweet na Twitter"
|
||||
|
||||
shortcode:
|
||||
recent_articles: "Nedávné"
|
||||
|
||||
recent:
|
||||
show_more: "Zobrazit další"
|
||||
|
|
|
@ -13,8 +13,8 @@ article:
|
|||
reading_time_title: "Lesezeit"
|
||||
table_of_contents: "Inhaltsverzeichnis"
|
||||
word_count:
|
||||
one: "{{ .Count }} Wort"
|
||||
other: "{{ .Count }} Wörter"
|
||||
one: "{{ .Count }} Wort"
|
||||
other: "{{ .Count }} Wörter"
|
||||
part_of_series: "Dieser Artikel ist Teil einer Serie."
|
||||
part: "Teil"
|
||||
this_article: "Dieser Artikel"
|
||||
|
@ -42,17 +42,18 @@ list:
|
|||
no_articles: "Es gibt hier noch keine Beiträge."
|
||||
|
||||
nav:
|
||||
scroll_to_top_title: "Zum Anfang scrollen"
|
||||
skip_to_main: "Zum Hauptinhalt springen"
|
||||
scroll_to_top_title: "Zum Anfang scrollen"
|
||||
skip_to_main: "Zum Hauptinhalt springen"
|
||||
|
||||
search:
|
||||
open_button_title: "Suche (/)"
|
||||
close_button_title: "Schließen (Esc)"
|
||||
input_placeholder: "Suchen"
|
||||
open_button_title: "Suche (/)"
|
||||
close_button_title: "Schließen (Esc)"
|
||||
input_placeholder: "Suchen"
|
||||
|
||||
sharing:
|
||||
email: "Per E-Mail teilen"
|
||||
facebook: "Auf Facebook teilen"
|
||||
line: "Auf LINE teilen"
|
||||
linkedin: "Auf LinkedIn teilen"
|
||||
pinterest: "Auf Pinterest pinnen"
|
||||
reddit: "An Reddit senden"
|
||||
|
@ -61,6 +62,5 @@ sharing:
|
|||
shortcode:
|
||||
recent_articles: "Neue Beiträge"
|
||||
|
||||
|
||||
recent:
|
||||
show_more: "Zeige Mehr"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "Send via email"
|
||||
facebook: "Share on Facebook"
|
||||
line: "Share on LINE"
|
||||
linkedin: "Share on LinkedIn"
|
||||
pinterest: "Pin on Pinterest"
|
||||
reddit: "Submit to Reddit"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "Sendi per retpoŝto"
|
||||
facebook: "Konigi en Facebook"
|
||||
line: "Konigi en LINE"
|
||||
linkedin: "Konigi en LinkedIn"
|
||||
pinterest: "Alpingli sur Pinterest"
|
||||
reddit: "Sendi al Reddit"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "Enviar vía email"
|
||||
facebook: "Compartir en Facebook"
|
||||
line: "Compartir en LINE"
|
||||
linkedin: "Compartir en LinkedIn"
|
||||
pinterest: "Pinear en Pinterest"
|
||||
reddit: "Publicar en Reddit"
|
||||
|
@ -71,4 +72,4 @@ shortcode:
|
|||
recent_articles: "Reciente"
|
||||
|
||||
recent:
|
||||
show_more: "Mostrar más"
|
||||
show_more: "Mostrar más"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "ارسال ایمیل"
|
||||
facebook: "اشتراک گذاری در فیسبوک"
|
||||
line: "اشتراک گذاری در لاین"
|
||||
linkedin: "اشتراک گذاری در لینکداین"
|
||||
pinterest: "اشتراک گذاری در پینترست"
|
||||
reddit: "اشتراک گذاری در ردیت"
|
||||
|
|
|
@ -53,6 +53,7 @@ search:
|
|||
sharing:
|
||||
email: "Lähetä sähköpostilla"
|
||||
facebook: "Jaa Facebookissa"
|
||||
line: "Jaa LINEssä"
|
||||
linkedin: "Jaa LinkedInissä"
|
||||
pinterest: "Kiinnitä Pinterestiin"
|
||||
reddit: "Lähetä Reddittiin"
|
||||
|
@ -62,4 +63,4 @@ shortcode:
|
|||
recent_articles: "Viimeaikaiset"
|
||||
|
||||
recent:
|
||||
show_more: "Näytä Lisää"
|
||||
show_more: "Näytä Lisää"
|
||||
|
|
|
@ -56,6 +56,7 @@ search:
|
|||
sharing:
|
||||
email: "Envoyer par email"
|
||||
facebook: "Poster sur Facebook"
|
||||
line: "Partager sur LINE"
|
||||
linkedin: "Poster sur LinkedIn"
|
||||
pinterest: "Poster sur Pinterest"
|
||||
reddit: "Poster sur Reddit"
|
||||
|
|
|
@ -38,11 +38,11 @@ code:
|
|||
|
||||
error:
|
||||
404_title: "Páxina non atopada :confused:"
|
||||
404_error: "Error 404"
|
||||
404_error: "Erro 404"
|
||||
404_description: "Parece que a páxina que solicitaches non existe."
|
||||
|
||||
footer:
|
||||
dark_appearance: "Cambiar a modo oscuro"
|
||||
dark_appearance: "Cambiar a modo escuro"
|
||||
light_appearance: "Cambiar a modo claro"
|
||||
powered_by: "Desenvolvida con {{ .Hugo }} & {{ .Theme }}"
|
||||
|
||||
|
@ -62,10 +62,14 @@ search:
|
|||
sharing:
|
||||
email: "Enviar vía email"
|
||||
facebook: "Compartir en Facebook"
|
||||
line: "Compartir en LINE"
|
||||
linkedin: "Compartir en LinkedIn"
|
||||
pinterest: "Pinear en Pinterest"
|
||||
reddit: "Publicar en Reddit"
|
||||
twitter: "Tuitear en Twitter"
|
||||
bluesky: "Publicar en Bluesky"
|
||||
whatsapp: "Compartir vía WhatsApp"
|
||||
telegram: "Compartir vía Telegram"
|
||||
|
||||
shortcode:
|
||||
recent_articles: "Recente"
|
||||
|
|
|
@ -53,6 +53,7 @@ search:
|
|||
sharing:
|
||||
email: "שליחת אימייל"
|
||||
facebook: "שיתוף בפייסבוק"
|
||||
line: "שיתוף בליין"
|
||||
linkedin: "שיתוף בלינקדאין"
|
||||
pinterest: "שיתוף בפינטרסט"
|
||||
reddit: "שליחה לרדיט"
|
||||
|
@ -62,4 +63,4 @@ shortcode:
|
|||
recent_articles: "חדשים"
|
||||
|
||||
recent:
|
||||
show_more: "להראות יותר"
|
||||
show_more: "להראות יותר"
|
||||
|
|
|
@ -59,6 +59,7 @@ search:
|
|||
sharing:
|
||||
email: "Pošalji putem e-pošte"
|
||||
facebook: "Podijeli na Facebook"
|
||||
line: "Podijeli na LINE"
|
||||
linkedin: "Podijeli na LinkedIn"
|
||||
pinterest: "Podijeli na Pinterest"
|
||||
reddit: "Objavi na Reddit"
|
||||
|
|
|
@ -53,6 +53,7 @@ search:
|
|||
sharing:
|
||||
email: "Küldés emailben"
|
||||
facebook: "Megosztás a Facebookon"
|
||||
line: "Megosztás a LINE-on"
|
||||
linkedin: "Megosztás a LinkedInen"
|
||||
pinterest: "Megosztás a Pinteresten"
|
||||
reddit: "Megosztás a Redditen"
|
||||
|
@ -62,4 +63,4 @@ shortcode:
|
|||
recent_articles: "Friss"
|
||||
|
||||
recent:
|
||||
show_more: "Mutass Többet"
|
||||
show_more: "Mutass Többet"
|
||||
|
|
|
@ -59,6 +59,7 @@ search:
|
|||
sharing:
|
||||
email: "Kirim lewat surel"
|
||||
facebook: "Bagikan ke Facebook"
|
||||
line: "Bagikan ke LINE"
|
||||
linkedin: "Bagikan ke LinkedIn"
|
||||
pinterest: "Pin di Pinterest"
|
||||
reddit: "Kirim ke Reddit"
|
||||
|
|
|
@ -53,6 +53,7 @@ search:
|
|||
sharing:
|
||||
email: "Invia tramite email"
|
||||
facebook: "Condividi su Facebook"
|
||||
line: "Condividi su LINE"
|
||||
linkedin: "Condividi su LinkedIn"
|
||||
pinterest: "Pinna su Pinterest"
|
||||
reddit: "Invia a Reddit"
|
||||
|
@ -62,4 +63,4 @@ shortcode:
|
|||
recent_articles: "Recenti"
|
||||
|
||||
recent:
|
||||
show_more: "Mostra di Più"
|
||||
show_more: "Mostra di Più"
|
||||
|
|
|
@ -38,13 +38,13 @@ code:
|
|||
|
||||
error:
|
||||
404_title: "ページが見つかりませんでした。 :confused:"
|
||||
404_error: "Error 404"
|
||||
404_error: "404エラー"
|
||||
404_description: "ご要望のページは存在しないようです。"
|
||||
|
||||
footer:
|
||||
dark_appearance: "ダークモードへ切り替え"
|
||||
light_appearance: "ライトモードへ切り替え"
|
||||
powered_by: "Powered by {{ .Hugo }} & {{ .Theme }}"
|
||||
powered_by: "{{ .Hugo }} & {{ .Theme }} で構築されています"
|
||||
|
||||
list:
|
||||
externalurl_title: "外部サイトへリンク"
|
||||
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: " Eメールを送る"
|
||||
facebook: "Facebookでシェアする"
|
||||
line: "LINEでシェアする"
|
||||
linkedin: "LinkedInでシェアする"
|
||||
pinterest: "Pinterestでピンする"
|
||||
reddit: "Redditに投稿する"
|
||||
|
|
|
@ -59,6 +59,7 @@ search:
|
|||
sharing:
|
||||
email: "이메일로 전송"
|
||||
facebook: "Facebook에서 공유"
|
||||
line: "LINE에 공유하기"
|
||||
linkedin: "LinkedIn에서 공유"
|
||||
pinterest: "Pinterest에 고정"
|
||||
reddit: "Reddit에 게시"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "Delen via email"
|
||||
facebook: "Delen op Facebook"
|
||||
line: "Delen op LINE"
|
||||
linkedin: "Delen op LinkedIn"
|
||||
pinterest: "Delen op Pinterest"
|
||||
reddit: "Indienen op Reddit"
|
||||
|
|
|
@ -36,7 +36,8 @@ code:
|
|||
error:
|
||||
404_title: "Strona nie znaleziona :confused:"
|
||||
404_error: "Błąd 404"
|
||||
404_description: "Wydaje się, że strona, którą chcesz wyświetlić, nie istnieje."
|
||||
404_description:
|
||||
"Wydaje się, że strona, którą chcesz wyświetlić, nie istnieje."
|
||||
|
||||
footer:
|
||||
dark_appearance: "Zmień na tryb ciemny"
|
||||
|
@ -59,6 +60,7 @@ search:
|
|||
sharing:
|
||||
email: "Wyślij jako email"
|
||||
facebook: "Udostępnij na Facebooku"
|
||||
line: "Udostępnij na LINE"
|
||||
linkedin: "Udostępnij na LinkedInie"
|
||||
pinterest: "Przypnij na Pinterest"
|
||||
reddit: "Prześlij na Reddita"
|
||||
|
@ -68,4 +70,4 @@ shortcode:
|
|||
recent_articles: "Ostatnie artykuły"
|
||||
|
||||
recent:
|
||||
show_more: "Pokaż Więcej"
|
||||
show_more: "Pokaż Więcej"
|
||||
|
|
|
@ -31,7 +31,7 @@ code:
|
|||
copied: "Copiado"
|
||||
|
||||
error:
|
||||
404_title: "Página não econtrada :confused:"
|
||||
404_title: "Página não encontrada :confused:"
|
||||
404_error: "Erro 404"
|
||||
404_description: "Aparentemente a página requisitada não existe."
|
||||
|
||||
|
@ -56,6 +56,7 @@ search:
|
|||
sharing:
|
||||
email: "Enviar por email"
|
||||
facebook: "Compartilhar pelo Facebook"
|
||||
line: "Compartilhar pelo LINE"
|
||||
linkedin: "Compartilhar pelo LinkedIn"
|
||||
pinterest: "Pin no Pinterest"
|
||||
reddit: "Postar no Reddit"
|
||||
|
@ -65,4 +66,4 @@ shortcode:
|
|||
recent_articles: "Recente"
|
||||
|
||||
recent:
|
||||
show_more: "Mostrar Mais"
|
||||
show_more: "Mostrar Mais"
|
||||
|
|
|
@ -31,7 +31,7 @@ code:
|
|||
copied: "Copiado"
|
||||
|
||||
error:
|
||||
404_title: "Página não econtrada :confused:"
|
||||
404_title: "Página não encontrada :confused:"
|
||||
404_error: "Erro 404"
|
||||
404_description: "Aparentemente a página pretendida não existe."
|
||||
|
||||
|
@ -56,6 +56,7 @@ search:
|
|||
sharing:
|
||||
email: "Partilhar por email"
|
||||
facebook: "Partilhar pelo Facebook"
|
||||
line: "Partilhar pelo LINE"
|
||||
linkedin: "Partilhar pelo LinkedIn"
|
||||
pinterest: "Partilhar no Pinterest"
|
||||
reddit: "Partilhar no Reddit"
|
||||
|
|
|
@ -53,6 +53,7 @@ search:
|
|||
sharing:
|
||||
email: "Trimite pe email"
|
||||
facebook: "Postează pe Facebook"
|
||||
line: "Postează LINE"
|
||||
linkedin: "Postează LinkedIn"
|
||||
pinterest: "Pune pe Pinterest"
|
||||
reddit: "Postează pe Reddit"
|
||||
|
@ -62,4 +63,4 @@ shortcode:
|
|||
recent_articles: "Cele mai noi"
|
||||
|
||||
recent:
|
||||
show_more: "Afișați mai multe"
|
||||
show_more: "Afișați mai multe"
|
||||
|
|
|
@ -59,6 +59,7 @@ search:
|
|||
sharing:
|
||||
email: "Отправить по электронной почте"
|
||||
facebook: "Поделиться через Facebook"
|
||||
line: "Поделиться через LINE"
|
||||
linkedin: "Поделиться через LinkedIn"
|
||||
pinterest: "Добавить в Pinterest"
|
||||
reddit: "Отправить в Reddit"
|
||||
|
|
77
themes/blowfish/i18n/th.yaml
Normal file
77
themes/blowfish/i18n/th.yaml
Normal file
|
@ -0,0 +1,77 @@
|
|||
global:
|
||||
language: "TH"
|
||||
|
||||
article:
|
||||
anchor_label: "จุดยึด"
|
||||
date: "{{ .Date }}"
|
||||
date_updated: "อัปเดต: {{ .Date }}"
|
||||
draft: "ฉบับร่าง"
|
||||
edit_title: "แก้ไขเนื้อหา"
|
||||
reading_time:
|
||||
one: "{{ .Count }} นาที"
|
||||
other: "{{ .Count }} นาที"
|
||||
reading_time_title: "ใช้เวลาอ่าน"
|
||||
table_of_contents: "หัวข้อเนื้อหา"
|
||||
word_count:
|
||||
one: "{{ .Count }} คำ"
|
||||
other: "{{ .Count }} คำ"
|
||||
views:
|
||||
one: "{{ .Count }} ครั้ง"
|
||||
other: "{{ .Count }} ครั้ง"
|
||||
likes:
|
||||
one: "{{ .Count }} ไลค์"
|
||||
other: "{{ .Count }} ไลค์"
|
||||
part_of_series: "บทความในชุดเดียวกัน"
|
||||
part: "ตอนที่"
|
||||
this_article: "บทความนี้"
|
||||
related_articles: "บทความที่เกี่ยวข้อง"
|
||||
zen_mode_title:
|
||||
enable: "เปิดโหมดเซน"
|
||||
disable: "ปิดโหมดเซน"
|
||||
|
||||
author:
|
||||
byline_title: "ผู้เขียน"
|
||||
|
||||
code:
|
||||
copy: "คัดลอก"
|
||||
copied: "คัดลอกแล้ว"
|
||||
|
||||
error:
|
||||
404_title: "ไม่พบหน้าที่ต้องการ :confused:"
|
||||
404_error: "ข้อผิดพลาด 404"
|
||||
404_description: "ดูเหมือนว่าหน้าที่คุณต้องการจะไม่มีอยู่"
|
||||
|
||||
footer:
|
||||
dark_appearance: "เปลี่ยนเป็นธีมมืด"
|
||||
light_appearance: "เปลี่ยนเป็นธีมสว่าง"
|
||||
powered_by: "สร้างด้วย {{ .Hugo }} & {{ .Theme }}"
|
||||
|
||||
list:
|
||||
externalurl_title: "ลิงก์ไปยังเว็บไซต์ภายนอก"
|
||||
no_articles: "ยังไม่มีบทความให้แสดงในส่วนนี้"
|
||||
|
||||
nav:
|
||||
scroll_to_top_title: "เลื่อนขึ้นด้านบน"
|
||||
skip_to_main: "ข้ามไปยังเนื้อหาหลัก"
|
||||
|
||||
search:
|
||||
open_button_title: "ค้นหา (/)"
|
||||
close_button_title: "ปิด (Esc)"
|
||||
input_placeholder: "ค้นหา"
|
||||
|
||||
sharing:
|
||||
email: "ส่งทางอีเมล"
|
||||
facebook: "แชร์บน Facebook"
|
||||
linkedin: "แชร์บน LinkedIn"
|
||||
pinterest: "ปักหมุดบน Pinterest"
|
||||
reddit: "โพสต์บน Reddit"
|
||||
twitter: "ทวีตบน Twitter"
|
||||
bluesky: "โพสต์บน Bluesky"
|
||||
whatsapp: "แชร์ทาง WhatsApp"
|
||||
telegram: "แชร์ทาง Telegram"
|
||||
|
||||
shortcode:
|
||||
recent_articles: "บทความล่าสุด"
|
||||
|
||||
recent:
|
||||
show_more: "แสดงเพิ่มเติม"
|
|
@ -52,6 +52,7 @@ search:
|
|||
sharing:
|
||||
email: "Email ile gönder"
|
||||
facebook: "Facebook'ta paylaş"
|
||||
line: "LINE'da paylaş"
|
||||
linkedin: "LinkedIn'te paylaş"
|
||||
pinterest: "Pinterest'te pinle"
|
||||
reddit: "Reddit'te gönder"
|
||||
|
@ -62,4 +63,4 @@ shortcode:
|
|||
icon_none: "Icon bulunamadı."
|
||||
|
||||
recent:
|
||||
show_more: "Daha Fazla Göster"
|
||||
show_more: "Daha Fazla Göster"
|
||||
|
|
|
@ -66,6 +66,7 @@ search:
|
|||
sharing:
|
||||
email: "Надіслати електронною поштою"
|
||||
facebook: "Поширити на Facebook"
|
||||
line: "Поширити на LINE"
|
||||
linkedin: "Поширити на LinkedIn"
|
||||
pinterest: "Зберегти на Pinterest"
|
||||
reddit: "Опублікувати на Reddit"
|
||||
|
|
|
@ -62,6 +62,7 @@ search:
|
|||
sharing:
|
||||
email: "Gửi qua email"
|
||||
facebook: "Chia sẻ lên Facebook"
|
||||
line: "Chia sẻ lên LINE"
|
||||
linkedin: "Chia sẻ lên LinkedIn"
|
||||
pinterest: "Ghim lên Pinterest"
|
||||
reddit: "Gửi lên Reddit"
|
||||
|
|
|
@ -52,6 +52,7 @@ search:
|
|||
sharing:
|
||||
email: "通过电子邮件发送"
|
||||
facebook: "分享到 Facebook"
|
||||
line: "分享到 LINE"
|
||||
linkedin: "分享到 LinkedIn"
|
||||
pinterest: "钉到 Pinterest"
|
||||
reddit: "提交到 Reddit"
|
||||
|
|
|
@ -52,6 +52,7 @@ search:
|
|||
sharing:
|
||||
email: "以電子郵件發送"
|
||||
facebook: "分享到 Facebook"
|
||||
line: "分享到 LINE"
|
||||
linkedin: "分享到 LinkedIn"
|
||||
pinterest: "釘到 Pinterest"
|
||||
reddit: "發送到 Reddit"
|
||||
|
|
|
@ -1,12 +1,10 @@
|
|||
{{ $strAnchor := urlize .Anchor }}
|
||||
{{ $replacedAnchor := replaceRE "%25" "" $strAnchor }}
|
||||
{{ $anchor := anchorize .Anchor }}
|
||||
<h{{ .Level }} class="relative group">{{ .Text | safeHTML }}
|
||||
<div id="{{ .Anchor | safeURL | urlize }}" class="anchor"></div>
|
||||
{{ if.Page.Params.showHeadingAnchors | default (.Page.Site.Params.article.showHeadingAnchors | default true) }}
|
||||
<div id="{{ $anchor }}" class="anchor"></div>
|
||||
{{ if .Page.Params.showHeadingAnchors | default (.Page.Site.Params.article.showHeadingAnchors | default true) }}
|
||||
<span
|
||||
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
|
||||
<a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700"
|
||||
style="text-decoration-line: none !important;" href="#{{ $replacedAnchor | safeURL }}" aria-label="{{ i18n "article.anchor_label" }}">#</a>
|
||||
<a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#{{ $anchor }}" aria-label="{{ i18n "article.anchor_label" }}">#</a>
|
||||
</span>
|
||||
{{ end }}
|
||||
</h{{ .Level }}>
|
||||
|
|
|
@ -1,48 +1,55 @@
|
|||
{{- $disableImageOptimization := .Page.Site.Params.disableImageOptimization | default false }}
|
||||
{{ define "RenderImageSimple" -}}
|
||||
<img class="my-0 rounded-md" loading="lazy" alt="{{ .alt }}" src="{{ .src }}">
|
||||
{{- end }}
|
||||
|
||||
{{ define "RenderImageResponsive" -}}
|
||||
<img
|
||||
class="my-0 rounded-md"
|
||||
loading="lazy"
|
||||
decoding="async"
|
||||
fetchpriority="low"
|
||||
alt="{{ .alt }}"
|
||||
srcset="
|
||||
{{ (.resource.Resize "330x").RelPermalink }} 330w,
|
||||
{{ (.resource.Resize "660x").RelPermalink }} 660w,
|
||||
{{ (.resource.Resize "1280x").RelPermalink }} 1280w
|
||||
"
|
||||
data-zoom-src="{{ .resource.RelPermalink }}"
|
||||
src="{{ .resource.RelPermalink }}">
|
||||
{{- end }}
|
||||
|
||||
{{ define "RenderImageCaption" -}}
|
||||
{{- with .caption }}
|
||||
<figcaption>{{ . | markdownify }}</figcaption>
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- $disableImageOptimizationMD := .Page.Site.Params.disableImageOptimizationMD | default false }}
|
||||
{{- $url := urls.Parse .Destination }}
|
||||
{{- $altText := .Text }}
|
||||
{{- $caption := .Title }}
|
||||
{{- if findRE "^https?" $url.Scheme }}
|
||||
<figure>
|
||||
<img class="my-0 rounded-md" loading="lazy" src="{{ $url.String }}" alt="{{ $altText }}" />
|
||||
{{ with $caption }}<figcaption>{{ . | markdownify }}</figcaption>{{ end }}
|
||||
</figure>
|
||||
{{- else }}
|
||||
{{- $resource := "" }}
|
||||
{{- if $.Page.Resources.GetMatch ($url.String) }}
|
||||
{{- $resource = $.Page.Resources.GetMatch ($url.String) }}
|
||||
{{- else if resources.GetMatch ($url.String) }}
|
||||
{{- $resource = resources.Get ($url.String) }}
|
||||
{{- end }}
|
||||
{{- with $resource }}
|
||||
<figure>
|
||||
{{- if or $disableImageOptimization (eq .MediaType.SubType "svg")}}
|
||||
<img
|
||||
class="my-0 rounded-md"
|
||||
loading="lazy"
|
||||
src="{{ .RelPermalink }}"
|
||||
alt="{{ $altText }}"
|
||||
/>
|
||||
{{- else }}
|
||||
<img
|
||||
class="my-0 rounded-md"
|
||||
loading="lazy"
|
||||
srcset="
|
||||
{{ (.Resize "330x").RelPermalink }} 330w,
|
||||
{{ (.Resize "660x").RelPermalink }} 660w,
|
||||
{{ (.Resize "1024x").RelPermalink }} 1024w,
|
||||
{{ (.Resize "1320x").RelPermalink }} 2x"
|
||||
data-zoom-src="{{ (.Resize "1320x").RelPermalink }}"
|
||||
src="{{ (.Resize "660x").RelPermalink }}"
|
||||
alt="{{ $altText }}"
|
||||
/>
|
||||
{{- end }}
|
||||
{{ with $caption }}<figcaption>{{ . | markdownify }}</figcaption>{{ end }}
|
||||
</figure>
|
||||
{{- else }}
|
||||
<figure>
|
||||
<img class="my-0 rounded-md" loading="lazy" src="{{ $url.String }}" alt="{{ $altText }}" />
|
||||
{{ with $caption }}<figcaption>{{ . | markdownify }}</figcaption>{{ end }}
|
||||
</figure>
|
||||
{{- end }}
|
||||
{{- $isRemote := findRE "^https?" $url.Scheme }}
|
||||
{{- $resource := "" }}
|
||||
|
||||
{{- if not $isRemote }}
|
||||
{{- $resource = or ($.Page.Resources.GetMatch $url.String) (resources.Get $url.String) }}
|
||||
{{- end }}
|
||||
|
||||
|
||||
<figure>
|
||||
{{- if $isRemote }}
|
||||
{{ template "RenderImageSimple" (dict "src" $url.String "alt" $altText) }}
|
||||
{{- else if $resource }}
|
||||
{{- $isSVG := eq $resource.MediaType.SubType "svg" }}
|
||||
{{- $shouldOptimize := and (not $disableImageOptimizationMD) (not $isSVG) }}
|
||||
{{- if $shouldOptimize }}
|
||||
{{ template "RenderImageResponsive" (dict "resource" $resource "alt" $altText) }}
|
||||
{{- else }}
|
||||
{{ template "RenderImageSimple" (dict "src" $resource.RelPermalink "alt" $altText) }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{ template "RenderImageSimple" (dict "src" $url.String "alt" $altText) }}
|
||||
{{- end }}
|
||||
|
||||
{{ template "RenderImageCaption" (dict "caption" $caption) }}
|
||||
</figure>
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
<a href="{{ .Destination | safeURL }}"
|
||||
{{- with .Title -}}
|
||||
<a
|
||||
href="{{ .Destination | safeURL }}"
|
||||
{{- with .Title -}}
|
||||
title="{{ . }}"
|
||||
{{- end }}
|
||||
{{- if or (strings.HasPrefix .Destination "http:") (strings.HasPrefix .Destination "https:") }} target="_blank"{{ end }}>
|
||||
{{- .Text | safeHTML -}}
|
||||
</a>
|
||||
{{- end }}
|
||||
{{- if or (strings.HasPrefix .Destination "http:") (strings.HasPrefix .Destination "https:") }}
|
||||
target="_blank"
|
||||
{{ end }}>
|
||||
{{- .Text | safeHTML -}}
|
||||
</a>
|
||||
{{- /* Trim EOF */ -}}
|
||||
|
|
|
@ -1,42 +1,58 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="{{ with .Site.Params.isoCode | default (.Site.LanguageCode | default " en") }} {{- . -}} {{ end }}" dir="{{ if .Site.Params.rtl | default false -}}
|
||||
<!doctype html>
|
||||
<html
|
||||
lang="{{ with .Site.Params.isoCode | default (.Site.LanguageCode | default " en") }}{{- . -}}{{ end }}"
|
||||
dir="{{ if .Site.Params.rtl | default false -}}
|
||||
rtl
|
||||
{{- else -}}
|
||||
ltr
|
||||
{{- end }}" class="scroll-smooth" data-default-appearance="{{ .Site.Params.defaultAppearance | default " light" }}"
|
||||
{{- end }}"
|
||||
class="scroll-smooth"
|
||||
data-default-appearance="{{ .Site.Params.defaultAppearance | default " light" }}"
|
||||
data-auto-appearance="{{ .Site.Params.autoSwitchAppearance | default " true" }}">
|
||||
{{- partial "head.html" . -}}
|
||||
{{- partial "head.html" . -}}
|
||||
|
||||
<body
|
||||
class="flex flex-col h-screen px-6 m-auto text-lg leading-7 max-w-7xl bg-neutral text-neutral-900 dark:bg-neutral-800 dark:text-neutral sm:px-14 md:px-24 lg:px-32 scrollbar-thin scrollbar-track-neutral-200 scrollbar-thumb-neutral-400 dark:scrollbar-track-neutral-800 dark:scrollbar-thumb-neutral-600">
|
||||
<div id="the-top" class="absolute flex self-center">
|
||||
<a class="px-3 py-1 text-sm -translate-y-8 rounded-b-lg bg-primary-200 focus:translate-y-0 dark:bg-neutral-600"
|
||||
href="#main-content"><span
|
||||
class="font-bold text-primary-600 ltr:pr-2 rtl:pl-2 dark:text-primary-400">↓</span>{{ i18n
|
||||
"nav.skip_to_main" }}</a>
|
||||
</div>
|
||||
{{ $header := print "header/" .Site.Params.header.layout ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $header ) }}
|
||||
{{ partial $header . }}
|
||||
{{ else }}
|
||||
{{ partial "header/basic.html" . }}
|
||||
{{ end }}
|
||||
<div class="relative flex flex-col grow">
|
||||
<main id="main-content" class="grow">
|
||||
{{ block "main" . }}{{ end }}
|
||||
{{ if and (.Site.Params.footer.showScrollToTop | default true) (gt .WordCount 1) }}
|
||||
{{- partial "scroll-to-top.html" . -}}
|
||||
{{ end }}
|
||||
</main>
|
||||
{{- partial "footer.html" . -}}
|
||||
{{ if .Site.Params.enableSearch | default false }}
|
||||
{{- partial "search.html" . -}}
|
||||
|
||||
<body
|
||||
class="flex flex-col h-screen px-6 m-auto text-lg leading-7 max-w-7xl bg-neutral text-neutral-900 dark:bg-neutral-800 dark:text-neutral sm:px-14 md:px-24 lg:px-32 scrollbar-thin scrollbar-track-neutral-200 scrollbar-thumb-neutral-400 dark:scrollbar-track-neutral-800 dark:scrollbar-thumb-neutral-600">
|
||||
<div id="the-top" class="absolute flex self-center">
|
||||
<a
|
||||
class="px-3 py-1 text-sm -translate-y-8 rounded-b-lg bg-primary-200 focus:translate-y-0 dark:bg-neutral-600"
|
||||
href="#main-content"
|
||||
><span class="font-bold text-primary-600 ltr:pr-2 rtl:pl-2 dark:text-primary-400">↓</span>{{ i18n
|
||||
"nav.skip_to_main"
|
||||
}}</a
|
||||
>
|
||||
</div>
|
||||
{{ $header := print "header/" .Site.Params.header.layout ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $header ) }}
|
||||
{{ partial $header . }}
|
||||
{{ else }}
|
||||
{{ partial "header/basic.html" . }}
|
||||
{{ end }}
|
||||
</div>
|
||||
</body>
|
||||
{{ if .Site.Params.buymeacoffee.globalWidget | default false }}
|
||||
<script data-name="BMC-Widget" data-cfasync="false" src="https://cdnjs.buymeacoffee.com/1.0.0/widget.prod.min.js"
|
||||
data-id="{{ .Site.Params.buymeacoffee.identifier }}" data-description="Support me on Buy me a coffee!" data-message="{{ .Site.Params.buymeacoffee.globalWidgetMessage | default "" }}"
|
||||
data-color="{{ .Site.Params.buymeacoffee.globalWidgetColor | default "#FFDD00" }}" data-position="{{ .Site.Params.buymeacoffee.globalWidgetPosition | default "Left" }}" data-x_margin="18" data-y_margin="18"></script>
|
||||
{{ end }}
|
||||
<div class="relative flex flex-col grow">
|
||||
<main id="main-content" class="grow">
|
||||
{{ block "main" . }}{{ end }}
|
||||
{{ if and (.Site.Params.footer.showScrollToTop | default true) (gt .WordCount 1) }}
|
||||
{{- partial "scroll-to-top.html" . -}}
|
||||
{{ end }}
|
||||
</main>
|
||||
{{- partial "footer.html" . -}}
|
||||
{{ if .Site.Params.enableSearch | default false }}
|
||||
{{- partial "search.html" . -}}
|
||||
{{ end }}
|
||||
</div>
|
||||
</body>
|
||||
{{ if .Site.Params.buymeacoffee.globalWidget | default false }}
|
||||
<script
|
||||
data-name="BMC-Widget"
|
||||
data-cfasync="false"
|
||||
src="https://cdnjs.buymeacoffee.com/1.0.0/widget.prod.min.js"
|
||||
data-id="{{ .Site.Params.buymeacoffee.identifier }}"
|
||||
data-description="Support me on Buy me a coffee!"
|
||||
data-message="{{ .Site.Params.buymeacoffee.globalWidgetMessage | default "" }}"
|
||||
data-color="{{ .Site.Params.buymeacoffee.globalWidgetColor | default "#FFDD00" }}"
|
||||
data-position="{{ .Site.Params.buymeacoffee.globalWidgetPosition | default "Left" }}"
|
||||
data-x_margin="18"
|
||||
data-y_margin="18"></script>
|
||||
{{ end }}
|
||||
</html>
|
||||
|
|
|
@ -26,13 +26,9 @@
|
|||
{{ $lang := print "." .Lang ".md" }}
|
||||
{{ $path = replace $path $lang ".md" }}
|
||||
{{end}}
|
||||
<script>
|
||||
var oid = "views_{{ $path }}"
|
||||
var oid_likes = "likes_{{ $path }}"
|
||||
</script>
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint "sha512" }}
|
||||
<script type="text/javascript" src="{{ $jsPage.RelPermalink }}" integrity="{{ $jsPage.Data.Integrity }}"></script>
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint ($.Site.Params.fingerprintAlgorithm | default "sha512") }}
|
||||
<script type="text/javascript" src="{{ $jsPage.RelPermalink }}" integrity="{{ $jsPage.Data.Integrity }}" data-oid="views_{{ $path }}" data-oid-likes="likes_{{ $path }}"></script>
|
||||
{{ end }}
|
||||
</header>
|
||||
<section class="{{ if $toc -}}
|
||||
|
@ -91,7 +87,7 @@
|
|||
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ if $cardViewScreenWidth }}
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px]" style="left: calc(max(-50vw,-800px) + 50%);">
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px] left-[calc(max(-50vw,-800px)+50%)]">
|
||||
{{ end }}
|
||||
<h2 class="mt-12 mb-3 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
|
@ -107,7 +103,7 @@
|
|||
{{ else }}
|
||||
|
||||
{{ if $cardViewScreenWidth }}
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px]" style="left: calc(max(-50vw,-800px) + 50%);">
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px] left-[calc(max(-50vw,-800px)+50%)]">
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5">
|
||||
{{ else }}
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
|
|
|
@ -1,108 +1,124 @@
|
|||
{{ define "main" }}
|
||||
{{ .Scratch.Set "scope" "single" }}
|
||||
{{ .Scratch.Set "scope" "single" }}
|
||||
|
||||
<article>
|
||||
{{ if .Params.showHero | default (.Site.Params.article.showHero | default false) }}
|
||||
{{ $heroStyle := .Params.heroStyle }}
|
||||
{{ if not $heroStyle }}{{ $heroStyle = .Site.Params.article.heroStyle }}{{ end }}
|
||||
{{ $heroStyle := print "hero/" $heroStyle ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $heroStyle ) }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<header id="single_header" class="mt-5 max-w-prose">
|
||||
{{ if .Params.showBreadcrumbs | default (.Site.Params.article.showBreadcrumbs | default false) }}
|
||||
{{ partial "breadcrumbs.html" . }}
|
||||
{{ end }}
|
||||
<h1 class="mt-0 text-4xl font-extrabold text-neutral-900 dark:text-neutral">
|
||||
{{ .Title | emojify }}
|
||||
</h1>
|
||||
<div class="mt-1 mb-6 text-base text-neutral-500 dark:text-neutral-400 print:hidden">
|
||||
{{ partial "article-meta/basic.html" (dict "context" . "scope" "single") }}
|
||||
</div>
|
||||
|
||||
{{ $authorsData := .Site.Data.authors }}
|
||||
{{ $taxonomies := .Site.Taxonomies.authors }}
|
||||
{{ $baseURL := .Site.BaseURL }}
|
||||
{{ $taxonomyLink := 0 }}
|
||||
{{ $showAuthor := 0 }}
|
||||
|
||||
{{ if not (strings.HasSuffix $baseURL "/") }}
|
||||
{{ $baseURL = delimit (slice $baseURL "/") "" }}
|
||||
<article>
|
||||
{{ if .Params.showHero | default (.Site.Params.article.showHero | default false) }}
|
||||
{{ $heroStyle := .Params.heroStyle }}
|
||||
{{ if not $heroStyle }}{{ $heroStyle = .Site.Params.article.heroStyle }}{{ end }}
|
||||
{{ $heroStyle := print "hero/" $heroStyle ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $heroStyle ) }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ if not (.Params.showAuthorBottom | default ( .Site.Params.article.showAuthorBottom | default false)) }}
|
||||
|
||||
{{ if .Params.showAuthor | default (.Site.Params.article.showAuthor | default true) }}
|
||||
{{ $showAuthor = 1 }}
|
||||
{{ partial "author.html" . }}
|
||||
|
||||
<header id="single_header" class="mt-5 max-w-prose">
|
||||
{{ if .Params.showBreadcrumbs | default (.Site.Params.article.showBreadcrumbs | default false) }}
|
||||
{{ partial "breadcrumbs.html" . }}
|
||||
{{ end }}
|
||||
|
||||
{{ range $author := .Page.Params.authors }}
|
||||
{{ $authorData := index $authorsData $author }}
|
||||
{{- if $authorData -}}
|
||||
{{ range $taxonomyname, $taxonomy := $taxonomies }}
|
||||
{{ if (eq $taxonomyname $author) }}
|
||||
{{ $taxonomyLink = delimit (slice $baseURL "authors/" $author "/") "" }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $finalLink := $taxonomyLink }}
|
||||
{{ $currentLang := $.Site.Language.Lang }}
|
||||
{{ if eq $.Site.LanguagePrefix "" }}
|
||||
{{ $finalLink = printf "%sauthors/%s/" $baseURL $author }}
|
||||
{{ else }}
|
||||
{{ $finalLink = printf "%s%s/authors/%s/" $baseURL $currentLang $author }}
|
||||
{{ end }}
|
||||
|
||||
{{ partial "author-extra.html" (dict "context" . "data" $authorData "link" $finalLink) }}
|
||||
{{- end -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if or $taxonomyLink $showAuthor }}
|
||||
<div class="mb-5"></div>
|
||||
{{ end }}
|
||||
|
||||
{{ end }}
|
||||
|
||||
</header>
|
||||
|
||||
<section class="flex flex-col max-w-full mt-0 prose dark:prose-invert lg:flex-row">
|
||||
|
||||
{{ if or (and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")) (.Site.Params.article.showRelatedPosts | default false) }} <div
|
||||
class="order-first lg:ml-auto px-0 lg:order-last ltr:lg:pl-8 rtl:lg:pr-8">
|
||||
<div class="toc ltr:pl-5 rtl:pr-5 print:hidden lg:sticky {{ if hasPrefix .Site.Params.header.layout "fixed" -}}
|
||||
lg:top-[140px]{{ else }}lg:top-10{{ end }}">
|
||||
|
||||
{{ if and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul") }} {{ partial "toc.html" . }} {{ end }} {{ if .Site.Params.article.showRelatedPosts |
|
||||
default false }} sd {{ end }} </div>
|
||||
<h1 class="mt-0 text-4xl font-extrabold text-neutral-900 dark:text-neutral">
|
||||
{{ .Title | emojify }}
|
||||
</h1>
|
||||
<div class="mt-1 mb-6 text-base text-neutral-500 dark:text-neutral-400 print:hidden">
|
||||
{{ partial "article-meta/basic.html" (dict "context" . "scope" "single") }}
|
||||
</div>
|
||||
|
||||
{{ $authorsData := .Site.Data.authors }}
|
||||
{{ $taxonomies := .Site.Taxonomies.authors }}
|
||||
{{ $baseURL := .Site.BaseURL }}
|
||||
{{ $taxonomyLink := 0 }}
|
||||
{{ $showAuthor := 0 }}
|
||||
|
||||
{{ if not (strings.HasSuffix $baseURL "/") }}
|
||||
{{ $baseURL = delimit (slice $baseURL "/") "" }}
|
||||
{{ end }}
|
||||
|
||||
{{ if not (.Params.showAuthorBottom | default ( .Site.Params.article.showAuthorBottom | default false)) }}
|
||||
|
||||
{{ if .Params.showAuthor | default (.Site.Params.article.showAuthor | default true) }}
|
||||
{{ $showAuthor = 1 }}
|
||||
{{ partial "author.html" . }}
|
||||
{{ end }}
|
||||
|
||||
{{ range $author := .Page.Params.authors }}
|
||||
{{ $authorData := index $authorsData $author }}
|
||||
{{- if $authorData -}}
|
||||
{{ range $taxonomyname, $taxonomy := $taxonomies }}
|
||||
{{ if (eq $taxonomyname $author) }}
|
||||
{{ $taxonomyLink = delimit (slice $baseURL "authors/" $author "/") "" }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $finalLink := $taxonomyLink }}
|
||||
{{ $currentLang := $.Site.Language.Lang }}
|
||||
{{ if eq $.Site.LanguagePrefix "" }}
|
||||
{{ $finalLink = printf "%sauthors/%s/" $baseURL $author }}
|
||||
{{ else }}
|
||||
{{ $finalLink = printf "%s%s/authors/%s/" $baseURL $currentLang $author }}
|
||||
{{ end }}
|
||||
|
||||
{{ partial "author-extra.html" (dict "context" . "data" $authorData "link" $finalLink) }}
|
||||
{{- end -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if or $taxonomyLink $showAuthor }}
|
||||
<div class="mb-5"></div>
|
||||
{{ end }}
|
||||
|
||||
{{ end }}
|
||||
|
||||
</header>
|
||||
|
||||
<section class="flex flex-col max-w-full mt-0 prose dark:prose-invert lg:flex-row">
|
||||
{{ if or (and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")) (.Site.Params.article.showRelatedPosts | default false)
|
||||
}}
|
||||
<div class="order-first lg:ml-auto px-0 lg:order-last ltr:lg:pl-8 rtl:lg:pr-8">
|
||||
<div
|
||||
class="toc ltr:pl-5 rtl:pr-5 print:hidden lg:sticky {{ if hasPrefix .Site.Params.header.layout "fixed" -}}
|
||||
lg:top-[140px]
|
||||
{{ else }}
|
||||
lg:top-10
|
||||
{{ end }}
|
||||
">
|
||||
{{ if and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")
|
||||
}}
|
||||
{{ partial "toc.html" . }}
|
||||
{{ end }}
|
||||
{{ if .Site.Params.article.showRelatedPosts |
|
||||
default false
|
||||
}}
|
||||
sd
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
|
||||
<div class="min-w-0 min-h-0 max-w-fit">
|
||||
|
||||
{{ partial "series/series.html" . }}
|
||||
|
||||
|
||||
<div class="article-content max-w-prose mb-20">
|
||||
{{ .Content }}
|
||||
{{ $defaultReplyByEmail := .Site.Params.replyByEmail }}
|
||||
{{ $replyByEmail := default $defaultReplyByEmail .Params.replyByEmail }}
|
||||
{{ if $replyByEmail }}
|
||||
<strong class="block mt-8">
|
||||
<a target="_blank"
|
||||
class="m-1 rounded bg-neutral-300 p-1.5 text-neutral-700 hover:bg-primary-500 hover:text-neutral dark:bg-neutral-700 dark:text-neutral-300 dark:hover:bg-primary-400 dark:hover:text-neutral-800"
|
||||
href="mailto:{{ .Site.Params.Author.email }}?subject={{ replace (printf "Reply to %s" .Title) "\"" "'" }}">
|
||||
<a
|
||||
target="_blank"
|
||||
class="m-1 rounded bg-neutral-300 p-1.5 text-neutral-700 hover:bg-primary-500 hover:text-neutral dark:bg-neutral-700 dark:text-neutral-300 dark:hover:bg-primary-400 dark:hover:text-neutral-800"
|
||||
href="mailto:{{ .Site.Params.Author.email }}?subject={{ replace (printf "Reply to %s" .Title) "\"" "'" }}">
|
||||
Reply by Email
|
||||
</a>
|
||||
</strong>
|
||||
{{ end }}
|
||||
</div>
|
||||
|
||||
|
||||
{{ if (.Params.showAuthorBottom | default ( .Site.Params.article.showAuthorBottom | default false)) }}
|
||||
|
||||
{{ if .Params.showAuthor | default (.Site.Params.article.showAuthor | default true) }}
|
||||
|
@ -123,48 +139,48 @@
|
|||
{{ end }}
|
||||
|
||||
{{ if or $taxonomyLink $showAuthor }}
|
||||
<div class="mb-10"></div>
|
||||
<div class="mb-10"></div>
|
||||
{{ end }}
|
||||
|
||||
{{ end }}
|
||||
|
||||
{{ partial "series/series-closed.html" . }}
|
||||
{{ partial "sharing-links.html" . }}
|
||||
{{ partial "related.html" . }}
|
||||
{{ partial "related.html" . }}
|
||||
</div>
|
||||
|
||||
|
||||
{{ $translations := .AllTranslations }}
|
||||
{{ with .File }}
|
||||
{{ $path := .Path }}
|
||||
{{range $translations}}
|
||||
{{ range $translations }}
|
||||
{{ $lang := print "." .Lang ".md" }}
|
||||
{{ $path = replace $path $lang ".md" }}
|
||||
{{end}}
|
||||
<script>
|
||||
var oid = "views_{{ $path }}"
|
||||
var oid_likes = "likes_{{ $path }}"
|
||||
</script>
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint "sha512" }}
|
||||
<script type="text/javascript" src="{{ $jsPage.RelPermalink }}" integrity="{{ $jsPage.Data.Integrity }}"></script>
|
||||
{{ end }}
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint ($.Site.Params.fingerprintAlgorithm | default "sha512") }}
|
||||
<script
|
||||
type="text/javascript"
|
||||
src="{{ $jsPage.RelPermalink }}"
|
||||
integrity="{{ $jsPage.Data.Integrity }}"
|
||||
data-oid="views_{{ $path }}"
|
||||
data-oid-likes="likes_{{ $path }}"></script>
|
||||
{{ end }}
|
||||
|
||||
</section>
|
||||
<footer class="pt-8 max-w-prose print:hidden">
|
||||
|
||||
{{ partial "article-pagination.html" . }}
|
||||
{{ if .Params.showComments | default (.Site.Params.article.showComments | default false) }}
|
||||
{{ if templates.Exists "partials/comments.html" }}
|
||||
<div class="pt-3">
|
||||
<hr class="border-dotted border-neutral-300 dark:border-neutral-600" />
|
||||
<div class="pt-3">
|
||||
{{ partial "comments.html" . }}
|
||||
</div>
|
||||
</div>
|
||||
{{ else }}
|
||||
{{ warnf "[BLOWFISH] Comments are enabled for %s but no comments partial exists." .File.Path }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</footer>
|
||||
</article>
|
||||
</section>
|
||||
<footer class="pt-8 max-w-prose print:hidden">
|
||||
{{ partial "article-pagination.html" . }}
|
||||
{{ if .Params.showComments | default (.Site.Params.article.showComments | default false) }}
|
||||
{{ if templates.Exists "partials/comments.html" }}
|
||||
<div class="pt-3">
|
||||
<hr class="border-dotted border-neutral-300 dark:border-neutral-600">
|
||||
<div class="pt-3">
|
||||
{{ partial "comments.html" . }}
|
||||
</div>
|
||||
</div>
|
||||
{{ else }}
|
||||
{{ warnf "[BLOWFISH] Comments are enabled for %s but no comments partial exists." .File.Path }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</footer>
|
||||
</article>
|
||||
{{ end }}
|
||||
|
|
|
@ -1,131 +1,128 @@
|
|||
{{ define "main" }}
|
||||
{{ .Scratch.Set "scope" "term" }}
|
||||
{{ if .Site.Params.term.showHero | default false }}
|
||||
{{ $heroStyle := print "hero/" .Site.Params.term.heroStyle ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $heroStyle ) }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{- end -}}
|
||||
|
||||
{{ .Scratch.Set "scope" "term" }}
|
||||
{{ if .Site.Params.term.showHero | default false }}
|
||||
{{ $heroStyle := print "hero/" .Site.Params.term.heroStyle ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $heroStyle ) }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{- end -}}
|
||||
|
||||
{{ $toc := and (.Params.showTableOfContents | default (.Site.Params.term.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul") }} <header>
|
||||
{{ if .Params.showBreadcrumbs | default (.Site.Params.term.showBreadcrumbs | default false) }}
|
||||
{{ partial "breadcrumbs.html" . }}
|
||||
{{ end }}
|
||||
<h1 class="mt-5 text-4xl font-extrabold text-neutral-900 dark:text-neutral">{{ .Title }}</h1>
|
||||
<div class="mt-1 mb-2 text-base text-neutral-500 dark:text-neutral-400 print:hidden">
|
||||
{{ partial "article-meta/term.html" (dict "context" . "scope" "single") }}
|
||||
</div>
|
||||
{{ $toc := and (.Params.showTableOfContents | default (.Site.Params.term.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")
|
||||
}}
|
||||
<header>
|
||||
{{ if .Params.showBreadcrumbs | default (.Site.Params.term.showBreadcrumbs | default false) }}
|
||||
{{ partial "breadcrumbs.html" . }}
|
||||
{{ end }}
|
||||
<h1 class="mt-5 text-4xl font-extrabold text-neutral-900 dark:text-neutral">{{ .Title }}</h1>
|
||||
<div class="mt-1 mb-2 text-base text-neutral-500 dark:text-neutral-400 print:hidden">
|
||||
{{ partial "article-meta/term.html" (dict "context" . "scope" "single") }}
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<section class="flex flex-col max-w-full mt-0 mb-5 prose dark:prose-invert lg:flex-row">
|
||||
{{ if .Content }}
|
||||
<div class="min-w-0 min-h-0 max-w-prose">
|
||||
{{ .Content }}
|
||||
</div>
|
||||
<script>
|
||||
var oid = "views_term_{{ .Data.Term }}"
|
||||
var oid_likes = "likes_term_{{ .Data.Term }}"
|
||||
</script>
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint "sha512" }}
|
||||
<script type="text/javascript" src="{{ $jsPage.RelPermalink }}" integrity="{{ $jsPage.Data.Integrity }}"></script>
|
||||
<div class="min-w-0 min-h-0 max-w-prose">
|
||||
{{ .Content }}
|
||||
</div>
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }}
|
||||
<script
|
||||
type="text/javascript"
|
||||
src="{{ $jsPage.RelPermalink }}"
|
||||
integrity="{{ $jsPage.Data.Integrity }}"
|
||||
data-oid="views_term_{{ .Data.Term }}"
|
||||
data-oid-likes="likes_term_{{ .Data.Term }}"></script>
|
||||
{{ end }}
|
||||
</section>
|
||||
|
||||
|
||||
{{ if gt .Pages 0 }}
|
||||
{{ $cardView := .Params.cardView | default (.Site.Params.term.cardView | default false) }}
|
||||
{{ $cardViewScreenWidth := .Site.Params.term.cardViewScreenWidth | default false }}
|
||||
{{ $groupByYear := .Params.groupByYear | default ($.Site.Params.term.groupByYear | default false) }}
|
||||
|
||||
{{ $cardView := .Params.cardView | default (.Site.Params.term.cardView | default false) }}
|
||||
{{ $cardViewScreenWidth := .Site.Params.term.cardViewScreenWidth | default false }}
|
||||
{{ $groupByYear := .Params.groupByYear | default ($.Site.Params.term.groupByYear | default false) }}
|
||||
{{ if not $cardView }}
|
||||
|
||||
{{ if not $cardView }}
|
||||
<section class="space-y-10 w-full">
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ if $groupByYear }}
|
||||
<h2 class="mt-12 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
</h2>
|
||||
{{ end }}
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/simple.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ else if and $cardView (not $cardViewScreenWidth) }}
|
||||
|
||||
{{ if $groupByYear }}
|
||||
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
<h2 class="mt-12 mb-3 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
</h2>
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
{{ else }}
|
||||
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
{{ else if and $cardView $cardViewScreenWidth }}
|
||||
|
||||
{{ if $groupByYear }}
|
||||
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px] left-[calc(max(-50vw,-800px)+50%)]">
|
||||
<h2 class="mt-12 mb-3 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
</h2>
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5">
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ else }}
|
||||
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px] left-[calc(max(-50vw,-800px)+50%)]">
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5">
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</section>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
<section class="space-y-10 w-full">
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ if $groupByYear }}
|
||||
<h2 class="mt-12 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
</h2>
|
||||
{{ end }}
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/simple.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</section>
|
||||
|
||||
{{ else if and $cardView (not $cardViewScreenWidth) }}
|
||||
|
||||
{{ if $groupByYear }}
|
||||
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
<h2 class="mt-12 mb-3 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
</h2>
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
{{ else }}
|
||||
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</section>
|
||||
|
||||
{{ end }}
|
||||
|
||||
{{ else if and $cardView $cardViewScreenWidth }}
|
||||
|
||||
{{ if $groupByYear }}
|
||||
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px]" style="left: calc(max(-50vw,-800px) + 50%);">
|
||||
<h2 class="mt-12 mb-3 text-2xl font-bold text-neutral-700 first:mt-8 dark:text-neutral-300">
|
||||
{{ .Key }}
|
||||
</h2>
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5">
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
<section class="mt-10 prose dark:prose-invert">
|
||||
<p class="py-8 border-t">
|
||||
<em>{{ i18n "term.no_articles" | emojify }}</em>
|
||||
</p>
|
||||
</section>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ else }}
|
||||
|
||||
<div class="relative w-screen max-w-[1600px] px-[30px]" style="left: calc(max(-50vw,-800px) + 50%);">
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5">
|
||||
{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
|
||||
{{ range .Pages }}
|
||||
{{ partial "article-link/card.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</section>
|
||||
</div>
|
||||
|
||||
{{ end }}
|
||||
|
||||
{{end}}
|
||||
|
||||
{{ else }}
|
||||
<section class="mt-10 prose dark:prose-invert">
|
||||
<p class="py-8 border-t">
|
||||
<em>{{ i18n "term.no_articles" | emojify }}</em>
|
||||
</p>
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
{{ partial "pagination.html" . }}
|
||||
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
|
|
@ -1,17 +1,18 @@
|
|||
{{ define "main" }}
|
||||
{{ .Scratch.Set "scope" "list" }}
|
||||
{{ if .Site.Params.taxonomy.showHero | default false }}
|
||||
{{ $heroStyle := print "hero/" .Site.Params.taxonomy.heroStyle ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $heroStyle ) }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{- end -}}
|
||||
|
||||
{{ .Scratch.Set "scope" "list" }}
|
||||
{{ if .Site.Params.taxonomy.showHero | default false }}
|
||||
{{ $heroStyle := print "hero/" .Site.Params.taxonomy.heroStyle ".html" }}
|
||||
{{ if templates.Exists ( printf "partials/%s" $heroStyle ) }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{- end -}}
|
||||
{{ $toc := and (.Params.showTableOfContents | default (.Site.Params.taxonomy.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")
|
||||
}}
|
||||
|
||||
{{ $toc := and (.Params.showTableOfContents | default (.Site.Params.taxonomy.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul") }}
|
||||
|
||||
<header>
|
||||
{{ if .Params.showBreadcrumbs | default (.Site.Params.taxonomy.showBreadcrumbs | default false) }}
|
||||
|
@ -28,32 +29,29 @@
|
|||
{{ .Content }}
|
||||
</div>
|
||||
</section>
|
||||
<script>
|
||||
var oid = "views_taxonomy_{{ .Data.Plural }}"
|
||||
var oid_likes = "likes_taxonomy_{{ .Data.Plural }}"
|
||||
</script>
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint "sha512" }}
|
||||
<script type="text/javascript" src="{{ $jsPage.RelPermalink }}" integrity="{{ $jsPage.Data.Integrity }}"></script>
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }}
|
||||
<script
|
||||
type="text/javascript"
|
||||
src="{{ $jsPage.RelPermalink }}"
|
||||
integrity="{{ $jsPage.Data.Integrity }}"
|
||||
data-oid="views_taxonomy_{{ .Data.Plural }}"
|
||||
data-oid-likes="likes_taxonomy_{{ .Data.Plural }}"></script>
|
||||
{{ end }}
|
||||
|
||||
{{ if .Site.Params.taxonomy.cardView }}
|
||||
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
{{ range .Data.Terms }}
|
||||
{{ partial "term-link/card.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
|
||||
<section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3">
|
||||
{{ range .Data.Terms }}
|
||||
{{ partial "term-link/card.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ else }}
|
||||
|
||||
<section class="flex flex-wrap max-w-prose -mx-2 overflow-hidden">
|
||||
{{ range .Data.Terms }}
|
||||
{{ partial "term-link/text.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
|
||||
<section class="flex flex-wrap max-w-prose -mx-2 overflow-hidden">
|
||||
{{ range .Data.Terms }}
|
||||
{{ partial "term-link/text.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
|
||||
{{ end }}
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
{{ if isset site.Params.fathomAnalytics "domain" }}
|
||||
<script defer src="https://{{ site.Params.fathomAnalytics.domain }}/script.js" data-site="{{ site.Params.fathomAnalytics.site }}"></script>
|
||||
<script
|
||||
defer
|
||||
src="https://{{ site.Params.fathomAnalytics.domain }}/script.js"
|
||||
data-site="{{ site.Params.fathomAnalytics.site }}"></script>
|
||||
{{ else }}
|
||||
<script defer src="https://cdn.usefathom.com/script.js" data-site="{{ site.Params.fathomAnalytics.site }}"></script>
|
||||
{{ end }}
|
||||
<script
|
||||
defer
|
||||
src="https://cdn.usefathom.com/script.js"
|
||||
data-site="{{ site.Params.fathomAnalytics.site }}"></script>
|
||||
{{ end }}
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.Config.Services.GoogleAnalytics.ID }}"></script>
|
||||
<script
|
||||
async
|
||||
src="https://www.googletagmanager.com/gtag/js?id={{ site.Config.Services.GoogleAnalytics.ID }}"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
function gtag(){dataLayer.push(arguments);}
|
||||
gtag('js', new Date());
|
||||
|
||||
gtag('config', '{{ site.Config.Services.GoogleAnalytics.ID }}');
|
||||
</script>
|
||||
</script>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{{ with site.Params.fathomAnalytics.site }}
|
||||
{{ partial "analytics/fathom.html" }}
|
||||
{{ partial "analytics/fathom.html" }}
|
||||
{{ end }}
|
||||
{{ with site.Config.Services.GoogleAnalytics.ID }}
|
||||
{{ partial "analytics/ga.html" }}
|
||||
{{ partial "analytics/ga.html" }}
|
||||
{{ end }}
|
||||
{{ with site.Params.umamiAnalytics.websiteid }}
|
||||
{{ partial "analytics/umami.html" }}
|
||||
{{ partial "analytics/umami.html" }}
|
||||
{{ end }}
|
||||
{{ with site.Params.selineAnalytics.token }}
|
||||
{{ partial "analytics/seline.html" }}
|
||||
{{ end }}
|
||||
{{ partial "analytics/seline.html" }}
|
||||
{{ end }}
|
||||
|
|
|
@ -1,18 +1,21 @@
|
|||
<script async src="https://cdn.seline.so/seline.js" data-token="{{ site.Params.selineAnalytics.token }}" data-id="seline-script"></script>
|
||||
<script
|
||||
async
|
||||
src="https://cdn.seline.so/seline.js"
|
||||
data-token="{{ site.Params.selineAnalytics.token }}"
|
||||
data-id="seline-script"></script>
|
||||
|
||||
{{ if .Site.Params.selineAnalytics.enableTrackEvent | default true }}
|
||||
<script type="text/javascript">
|
||||
document.querySelector('script[data-id="seline-script"]')
|
||||
.addEventListener('load', function () {
|
||||
const type = document.head.querySelector('meta[property = "og:type"]').getAttribute('content');
|
||||
let title = document.head.querySelector('meta[property = "og:title"]').getAttribute('content');
|
||||
let url = document.head.querySelector('meta[property = "og:url"]').getAttribute('content');
|
||||
<script type="text/javascript">
|
||||
document.querySelector('script[data-id="seline-script"]').addEventListener("load", function () {
|
||||
const type = document.head.querySelector('meta[property = "og:type"]').getAttribute("content");
|
||||
let title = document.head.querySelector('meta[property = "og:title"]').getAttribute("content");
|
||||
let url = document.head.querySelector('meta[property = "og:url"]').getAttribute("content");
|
||||
|
||||
seline.track("user:" + type + ':' + title, {
|
||||
type: type,
|
||||
title: title,
|
||||
url: url
|
||||
});
|
||||
});
|
||||
</script>
|
||||
seline.track("user:" + type + ":" + title, {
|
||||
type: type,
|
||||
title: title,
|
||||
url: url,
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{ end }}
|
||||
|
|
|
@ -1,23 +1,27 @@
|
|||
{{/* prettier-ignore-start */}}
|
||||
{{ if isset site.Params.umamiAnalytics "domain" }}
|
||||
<script data-id="umami-script" async
|
||||
src="https://{{ site.Params.umamiAnalytics.domain }}/{{ with site.Params.umamiAnalytics.scriptName }}{{ . }}{{ else }}script.js{{ end }}"
|
||||
data-website-id="{{ site.Params.umamiAnalytics.websiteid }}"
|
||||
{{ with site.Params.umamiAnalytics.dataDomains }}data-domains="{{ . }}"{{ end }}>
|
||||
</script>
|
||||
<script
|
||||
data-id="umami-script"
|
||||
async
|
||||
src="https://{{ site.Params.umamiAnalytics.domain }}/{{ with site.Params.umamiAnalytics.scriptName }}{{ . }}{{ else }}script.js{{ end }}"
|
||||
data-website-id="{{ site.Params.umamiAnalytics.websiteid }}"
|
||||
{{ with site.Params.umamiAnalytics.dataDomains }}data-domains="{{ . }}"{{ end }}></script>
|
||||
{{ else }}
|
||||
<script data-id="umami-script" async src="https://analytics.umami.is/script.js"
|
||||
data-website-id="{{ site.Params.umamiAnalytics.websiteid }}">
|
||||
</script>
|
||||
<script
|
||||
data-id="umami-script"
|
||||
async
|
||||
src="https://analytics.umami.is/script.js"
|
||||
data-website-id="{{ site.Params.umamiAnalytics.websiteid }}"></script>
|
||||
{{ end }}
|
||||
{{/* prettier-ignore-end */}}
|
||||
|
||||
{{ if .Site.Params.umamiAnalytics.enableTrackEvent | default true }}
|
||||
<script type="text/javascript">
|
||||
document.querySelector('script[data-id="umami-script"]')
|
||||
.addEventListener('load', function () {
|
||||
const type = document.head.querySelector('meta[property = "og:type"]').getAttribute('content');
|
||||
let title = document.head.querySelector('meta[property = "og:title"]').getAttribute('content');
|
||||
let url = document.head.querySelector('meta[property = "og:url"]').getAttribute('content');
|
||||
umami.track(type + ':' + title, {'url': url});
|
||||
<script type="text/javascript">
|
||||
document.querySelector('script[data-id="umami-script"]').addEventListener("load", function () {
|
||||
const type = document.head.querySelector('meta[property = "og:type"]').getAttribute("content");
|
||||
let title = document.head.querySelector('meta[property = "og:title"]').getAttribute("content");
|
||||
let url = document.head.querySelector('meta[property = "og:url"]').getAttribute("content");
|
||||
umami.track(type + ":" + title, { url: url });
|
||||
});
|
||||
</script>
|
||||
{{ end }}
|
||||
</script>
|
||||
{{ end }}
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
{{ with .Params.externalUrl }}
|
||||
href="{{ . }}" target="_blank" rel="external"
|
||||
{{ else }}
|
||||
href="{{ .RelPermalink }}"
|
||||
{{- end -}}
|
|
@ -35,15 +35,15 @@
|
|||
{{- end -}}
|
||||
|
||||
|
||||
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
||||
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
||||
<span class="absolute top-0 right-0 m-2">
|
||||
{{ partial "badge.html" (i18n "article.draft" | emojify) }}
|
||||
</span>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<div class="px-6 py-4">
|
||||
|
||||
{{ with .Params.externalUrl }}
|
||||
<div class="px-6 py-4">
|
||||
{{ with .Params.externalUrl }}
|
||||
<div>
|
||||
<div
|
||||
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral">
|
||||
|
@ -54,23 +54,25 @@
|
|||
</span>
|
||||
</div>
|
||||
</div>
|
||||
{{ else }}
|
||||
<div class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
||||
href="{{ .RelPermalink }}">{{ .Title | emojify }}</div>
|
||||
{{ end }}
|
||||
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
||||
{{ partial "article-meta/basic.html" . }}
|
||||
{{ else }}
|
||||
<div
|
||||
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
||||
href="{{ .RelPermalink }}">
|
||||
{{ .Title | emojify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
||||
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
||||
{{ partial "article-meta/basic.html" . }}
|
||||
</div>
|
||||
|
||||
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
||||
<div class="py-1 prose dark:prose-invert">
|
||||
{{ .Summary | plainify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="px-6 pt-4 pb-2">
|
||||
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
</a>
|
||||
<div class="px-6 pt-4 pb-2"></div>
|
||||
</div>
|
||||
</a>
|
||||
|
|
|
@ -35,16 +35,15 @@
|
|||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
||||
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
||||
<span class="absolute top-0 right-0 m-2">
|
||||
{{ partial "badge.html" (i18n "article.draft" | emojify) }}
|
||||
</span>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<div class="px-6 py-4">
|
||||
|
||||
{{ with .Params.externalUrl }}
|
||||
<div class="px-6 py-4">
|
||||
{{ with .Params.externalUrl }}
|
||||
<div>
|
||||
<div
|
||||
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral">
|
||||
|
@ -55,23 +54,25 @@
|
|||
</span>
|
||||
</div>
|
||||
</div>
|
||||
{{ else }}
|
||||
<div class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
||||
href="{{ .RelPermalink }}">{{ .Title | emojify }}</div>
|
||||
{{ end }}
|
||||
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
||||
{{ partial "article-meta/basic.html" . }}
|
||||
{{ else }}
|
||||
<div
|
||||
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
||||
href="{{ .RelPermalink }}">
|
||||
{{ .Title | emojify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
||||
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
||||
{{ partial "article-meta/basic.html" . }}
|
||||
</div>
|
||||
|
||||
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
||||
<div class="py-1 prose dark:prose-invert">
|
||||
{{ .Summary | plainify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="px-6 pt-4 pb-2">
|
||||
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
</a>
|
||||
<div class="px-6 pt-4 pb-2"></div>
|
||||
</div>
|
||||
</a>
|
||||
|
|
|
@ -2,38 +2,34 @@
|
|||
|
||||
{{ $articleClasses := "flex flex-wrap md:flex-nowrap article" }}
|
||||
{{ if .Site.Params.list.showCards }}
|
||||
{{ $articleClasses = delimit (slice $articleClasses "border border-neutral-200 dark:border-neutral-700 border-2 rounded-md overflow-hidden") " " }}
|
||||
{{ $articleClasses = delimit (slice $articleClasses "border border-neutral-200 dark:border-neutral-700 border-2 rounded-md overflow-hidden") " " }}
|
||||
{{ else }}
|
||||
{{ $articleClasses = delimit (slice $articleClasses "") " " }}
|
||||
{{ $articleClasses = delimit (slice $articleClasses "") " " }}
|
||||
{{ end }}
|
||||
|
||||
{{ $articleImageClasses := "w-full md:w-auto h-full thumbnail nozoom" }}
|
||||
{{ if .Site.Params.list.showCards }}
|
||||
{{ $articleImageClasses = delimit (slice $articleImageClasses "") " " }}
|
||||
{{ $articleImageClasses = delimit (slice $articleImageClasses "") " " }}
|
||||
{{ else }}
|
||||
{{ $articleImageClasses = delimit (slice $articleImageClasses "thumbnailshadow md:mr-7") " " }}
|
||||
{{ $articleImageClasses = delimit (slice $articleImageClasses "thumbnailshadow md:mr-7") " " }}
|
||||
{{ end }}
|
||||
|
||||
{{ $disableImageOptimization := .Page.Site.Params.disableImageOptimization | default false }}
|
||||
|
||||
{{ $articleInnerClasses := "" }}
|
||||
{{ if .Site.Params.list.showCards }}
|
||||
{{ $articleInnerClasses = delimit (slice $articleInnerClasses "p-4") " " }}
|
||||
{{ $articleInnerClasses = delimit (slice $articleInnerClasses "p-4") " " }}
|
||||
{{ else }}
|
||||
{{ $articleInnerClasses = delimit (slice $articleInnerClasses "mt-3 md:mt-0") " " }}
|
||||
{{ $articleInnerClasses = delimit (slice $articleInnerClasses "mt-3 md:mt-0") " " }}
|
||||
{{ end }}
|
||||
|
||||
{{ if $constrainItemsWidth }}
|
||||
{{ $articleClasses = delimit (slice $articleClasses "max-w-prose") " " }}
|
||||
{{ $articleClasses = delimit (slice $articleClasses "max-w-prose") " " }}
|
||||
{{ end }}
|
||||
|
||||
|
||||
{{ with .Params.externalUrl }}
|
||||
<a class="{{ $articleClasses }}" href="{{ . }}" target="_blank" rel="external">
|
||||
{{ else }}
|
||||
<a class="{{ $articleClasses }}" href="{{ .RelPermalink }}">
|
||||
{{ end }}
|
||||
{{- with $.Params.images -}}
|
||||
<a class="{{ $articleClasses }}" {{ partial "article-link/_external-link.html" . | safeHTMLAttr }}>
|
||||
{{- with $.Params.images -}}
|
||||
{{- range first 6 . }}
|
||||
<meta property="og:image" content="{{ . | absURL }}" />{{ end -}}
|
||||
{{- else -}}
|
||||
|
@ -63,9 +59,9 @@
|
|||
{{- end -}}
|
||||
|
||||
|
||||
<div class="{{ $articleInnerClasses }}">
|
||||
<div class="items-center text-left text-xl font-semibold">
|
||||
{{ with .Params.externalUrl }}
|
||||
<div class="{{ $articleInnerClasses }}">
|
||||
<div class="items-center text-left text-xl font-semibold">
|
||||
{{ with .Params.externalUrl }}
|
||||
<div>
|
||||
<div
|
||||
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral">
|
||||
|
@ -76,26 +72,29 @@
|
|||
</span>
|
||||
</div>
|
||||
</div>
|
||||
{{ else }}
|
||||
<div class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
||||
href="{{ .RelPermalink }}">{{ .Title | emojify }}</div>
|
||||
{{ end }}
|
||||
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
||||
{{ else }}
|
||||
<div
|
||||
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
||||
href="{{ .RelPermalink }}">
|
||||
{{ .Title | emojify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
||||
<div class=" ltr:ml-2 rtl:mr-2">
|
||||
{{ partial "badge.html" (i18n "article.draft" | emojify) }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ if templates.Exists "partials/extend-article-link.html" }}
|
||||
{{ end }}
|
||||
{{ if templates.Exists "partials/extend-article-link.html" }}
|
||||
{{ partial "extend-article-link.html" . }}
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
||||
{{ partial "article-meta/basic.html" . }}
|
||||
</div>
|
||||
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
||||
{{ partial "article-meta/basic.html" . }}
|
||||
</div>
|
||||
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
||||
<div class="py-1 max-w-fit prose dark:prose-invert">
|
||||
{{ .Summary | plainify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
</a>
|
||||
|
|
|
@ -9,91 +9,117 @@
|
|||
{{ end }}
|
||||
|
||||
{{ with $context }}
|
||||
{{ $meta := newScratch }}
|
||||
{{ $meta := newScratch }}
|
||||
|
||||
{{/* Gather partials for this context */}}
|
||||
{{ if .Params.showDate | default (.Site.Params.article.showDate | default true) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/date.html" .Date)) }}
|
||||
{{else if and (eq $scope "single") (.Params.showDateOnlyInArticle | default (.Site.Params.article.showDateOnlyInArticle | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/date.html" .Date)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (.Params.showDateUpdated | default (.Site.Params.article.showDateUpdated | default false)) (ne (partial
|
||||
"functions/date.html" .Date) (partial "functions/date.html" .Lastmod)) (gt (.Lastmod | time.Format "2006") 1) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/date-updated.html" .Lastmod)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (.Params.showWordCount | default (.Site.Params.article.showWordCount | default false)) (ne .WordCount 0) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/word-count.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (.Params.showReadingTime | default (.Site.Params.article.showReadingTime | default true)) (ne .ReadingTime 0)
|
||||
}}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/reading-time.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (not .Params.externalURL) (.Params.showViews | default (.Site.Params.article.showViews | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/views.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (not .Params.externalURL) (.Params.showLikes | default (.Site.Params.article.showLikes | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/likes.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (eq $scope "single") (not .Params.externalURL) (.Params.showLikes | default (.Site.Params.article.showLikes | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/likes_button.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (eq $scope "single") (.Params.showEdit | default (.Site.Params.article.showEdit | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/edit.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (eq $scope "single") (.Params.showZenMode | default (.Site.Params.article.showZenMode | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/zen-mode.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{/* Output partials */}}
|
||||
{{ with ($meta.Get "partials") }}
|
||||
{{ delimit . "<span class=\"px-2 text-primary-500\">·</span>" | safeHTML }}
|
||||
{{/* Gather partials for this context */}}
|
||||
{{ $shouldShowDate := false }}
|
||||
{{ if and (eq $scope "single") (.Params.showDateOnlyInArticle | default (.Site.Params.article.showDateOnlyInArticle | default false)) }}
|
||||
{{ $shouldShowDate = true }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Output draft label */}}
|
||||
{{ if and (eq $scope "single") (and .Draft .Site.Params.article.showDraftLabel) }}
|
||||
<span class="pl-2">{{ partial "badge.html" (i18n "article.draft" | emojify) }}</span>
|
||||
{{/* showDate has higher priority than showDateOnlyInArticle */}}
|
||||
{{ if .Params.showDate | default (.Site.Params.article.showDate | default true) }}
|
||||
{{ $shouldShowDate = true }}
|
||||
{{ else }}
|
||||
{{ $shouldShowDate = false }}
|
||||
{{ end }}
|
||||
</div>
|
||||
|
||||
{{ if .Params.showAuthorsBadges | default (.Site.Params.article.showAuthorsBadges | default false) }}
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{ range $taxonomy, $terms := .Site.Taxonomies }}
|
||||
{{ if (eq $taxonomy "authors")}}
|
||||
{{ if (gt (len ($context.GetTerms $taxonomy)) 0) }}
|
||||
{{ range $i, $a := $context.GetTerms $taxonomy }}
|
||||
{{ if not (eq $i 0) }} , {{ end }} <div style="cursor: pointer;" onclick="window.open({{ $a.RelPermalink }},'_self');return false;">{{ $a.LinkTitle }}</div>
|
||||
{{ if $shouldShowDate }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/date.html" .Date)) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{/* Output taxonomies */}}
|
||||
{{ if .Params.showTaxonomies | default (.Site.Params.article.showTaxonomies | default false) }}
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{ range $taxonomy, $terms := .Site.Taxonomies }}
|
||||
{{ if and (not (eq $taxonomy "authors")) (not (eq $taxonomy "series"))}}
|
||||
{{ if (gt (len ($context.GetTerms $taxonomy)) 0) }}
|
||||
{{ range $context.GetTerms $taxonomy }}
|
||||
<span style="margin-top:0.5rem" class="mr-2" onclick="window.open({{ .RelPermalink }},'_self');return false;">
|
||||
{{ partial "badge.html" .LinkTitle }}
|
||||
</span>
|
||||
{{ if and (.Params.showDateUpdated | default (.Site.Params.article.showDateUpdated | default false)) (ne (partial
|
||||
"functions/date.html" .Date) (partial "functions/date.html" .Lastmod)) (gt (.Lastmod | time.Format "2006") 1)
|
||||
}}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/date-updated.html" .Lastmod)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (.Params.showWordCount | default (.Site.Params.article.showWordCount | default false)) (ne .WordCount 0) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/word-count.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (.Params.showReadingTime | default (.Site.Params.article.showReadingTime | default true)) (ne .ReadingTime 0) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/reading-time.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (not .Params.externalURL) (.Params.showViews | default (.Site.Params.article.showViews | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/views.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (not .Params.externalURL) (.Params.showLikes | default (.Site.Params.article.showLikes | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/likes.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (eq $scope "single") (not .Params.externalURL) (.Params.showLikes | default (.Site.Params.article.showLikes | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/likes_button.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (eq $scope "single") (.Params.showEdit | default (.Site.Params.article.showEdit | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/edit.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (eq $scope "single") (.Params.showZenMode | default (.Site.Params.article.showZenMode | default false)) }}
|
||||
{{ $meta.Add "partials" (slice (partial "meta/zen-mode.html" .)) }}
|
||||
{{ end }}
|
||||
|
||||
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{/* Output partials */}}
|
||||
{{ with ($meta.Get "partials") }}
|
||||
{{ delimit . "<span class=\"px-2 text-primary-500\">·</span>" | safeHTML }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Output draft label */}}
|
||||
{{ if and (eq $scope "single") (and .Draft .Site.Params.article.showDraftLabel) }}
|
||||
<span class="pl-2">{{ partial "badge.html" (i18n "article.draft" | emojify) }}</span>
|
||||
{{ end }}
|
||||
</div>
|
||||
|
||||
{{ if .Params.showAuthorsBadges | default (.Site.Params.article.showAuthorsBadges | default false) }}
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{ range $taxonomy, $terms := .Site.Taxonomies }}
|
||||
{{ if (eq $taxonomy "authors") }}
|
||||
{{ if (gt (len ($context.GetTerms $taxonomy)) 0) }}
|
||||
{{ range $i, $a := $context.GetTerms $taxonomy }}
|
||||
{{ if not (eq $i 0) }}, {{ end }}
|
||||
<div class="cursor-pointer" onclick="window.open({{ $a.RelPermalink }},'_self');return false;">
|
||||
{{ $a.LinkTitle }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{/* Output taxonomies */}}
|
||||
{{ if .Params.showTaxonomies | default (.Site.Params.article.showTaxonomies | default false) }}
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{ range $taxonomy, $terms := .Site.Taxonomies }}
|
||||
{{ if and (not (eq $taxonomy "authors")) (not (eq $taxonomy "series")) }}
|
||||
{{ if (gt (len ($context.GetTerms $taxonomy)) 0) }}
|
||||
{{ range $context.GetTerms $taxonomy }}
|
||||
<span
|
||||
class="mr-2 mt-[0.5rem]"
|
||||
onclick="window.open({{ .RelPermalink }},'_self');return false;">
|
||||
{{ partial "badge.html" .LinkTitle }}
|
||||
</span>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{/* Output only category */}}
|
||||
{{ if .Params.showCategoryOnly | default (.Site.Params.article.showCategoryOnly | default false) }}
|
||||
<div class="flex flex-row flex-wrap items-center">
|
||||
{{ range (.GetTerms "categories") }}
|
||||
<span class="mr-2 mt-[0.5rem]" onclick="window.open({{ .RelPermalink }},'_self');return false;">
|
||||
{{ partial "badge.html" .LinkTitle }}
|
||||
</span>
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ end }}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue