1
0
mirror of https://github.com/cotes2020/jekyll-theme-chirpy.git synced 2025-12-18 05:41:31 +00:00

Compare commits

...

19 Commits

Author SHA1 Message Date
Cotes Chung
9f38a2dead refactor: move the path of theme.js 2025-05-03 16:18:52 +08:00
Cotes Chung
23d953c313 chore(deps): remove plugin jekyll-redirect-from
Discussed in #2313
2025-05-03 16:14:50 +08:00
iSpeakNerd
b48ea68bf7 chore: update linkedin sharing url (#2307) 2025-04-24 20:25:46 +08:00
László Várady
c62644759c fix(ui): fix incomplete border color on hover for tags (#2359) 2025-04-24 20:23:43 +08:00
Cotes Chung
7708adbf30 fix: recognize global theme mode (#2357) 2025-04-16 18:08:43 +08:00
Delyn Choong
167c98c781 feat(i18n): add Catalan Spanish locale translation (#2349) 2025-04-13 22:16:47 +08:00
László Várady
f7449299e8 fix: prevent the search bar from moving when focused (#2336) 2025-04-07 19:36:32 +08:00
Alejandro
db40db6d3d chore: add parameter in search-results.html (#2330) 2025-04-05 07:28:29 +08:00
nakamura
571c90f130 feat(i18n): add Japanese locale (#2295) 2025-03-29 03:54:54 +08:00
Türkalp Burak KAYRANCIOĞLU
54d4d59d22 perf(seo): improve accessibility and aligns with best practices (#2289) 2025-03-08 22:24:47 +08:00
Corey Goldberg
e3158642c3 docs: fix typo in 2019-08-08-write-a-new-post.md (#2281)
Signed-off-by: Corey Goldberg <1113081+cgoldberg@users.noreply.github.com>
2025-03-05 05:06:37 +08:00
MasihGhaznavi
7d4d35cd10 feat(i18n): add persian language (#2238) 2025-02-09 14:28:39 +08:00
algorithmic-parallels
231956d77a docs: using long form Jekyll subcommand (#2231) 2025-02-06 13:27:54 +08:00
Cotes Chung
0eb7efa7f5 fix(search): avoid missing spaces between paragraphs in search results (#2199)
- Use a common post-snippet for search results to avoid line break issues
- Reduce Jekyll include files to speed up the build
- Remove outdated key from search.json
2025-01-20 21:27:18 +08:00
semantic-release-bot
e44c048aef Merge branch 'production' 2024-12-21 19:22:37 +00:00
semantic-release-bot
c12875fdba Merge branch 'production' 2024-12-15 13:06:04 +00:00
semantic-release-bot
f40fa6a13c Merge branch 'production' 2024-12-06 17:04:04 +00:00
cheese
981ddba30e feat(i18n): add Dutch locale (#2076) 2024-12-05 21:38:06 +08:00
semantic-release-bot
4925a58bf5 Merge branch 'production' 2024-12-05 13:34:00 +00:00
19 changed files with 381 additions and 35 deletions

84
_data/locales/ca-ES.yml Normal file
View File

@@ -0,0 +1,84 @@
# The layout text of site
# ----- Commons label -----
layout:
post: Entrada
category: Categoria
tag: Etiqueta
# The tabs of sidebar
tabs:
# format: <filename_without_extension>: <value>
home: Inici
categories: Categories
tags: Etiquetes
archives: Arxiu
about: Sobre
# the text displayed in the search bar & search results
search:
hint: Cercar
cancel: Cancel·lar
no_results: Ups! No s'han trobat resultats.
panel:
lastmod: Actualitzat recentment
trending_tags: Etiquetes populars
toc: Taula de continguts
copyright:
# Shown at the bottom of the post
license:
template: Aquesta entrada està llicenciada sota :LICENSE_NAME per l'autor.
name: CC BY 4.0
link: https://creativecommons.org/licenses/by/4.0/
# Displayed in the footer
brief: Alguns drets reservats.
verbose: >-
Excepte que s'indiqui explícitament, les entrades d'aquest blog estan llicenciades
sota la llicència Creative Commons Attribution 4.0 International (CC BY 4.0) per l'autor.
meta: Fet amb :PLATFORM utilitzant el tema :THEME
not_found:
statement: Ho sentim, hem perdut aquesta URL o apunta a alguna cosa que no existeix.
notification:
update_found: Hi ha una nova versió de contingut disponible.
update: Actualitzar
# ----- Posts related labels -----
post:
written_by: Per
posted: Publicat
updated: Actualitzat
words: paraules
pageview_measure: visites
read_time:
unit: min
prompt: " de lectura"
relate_posts: Entrades relacionades
share: Compartir
button:
next: Següent
previous: Anterior
copy_code:
succeed: Copiat!
share_link:
title: Copiar enllaç
succeed: Enllaç copiat!
# Date time format.
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
df:
post:
strftime: "%Y/%m/%d"
dayjs: "YYYY/MM/DD"
# categories page
categories:
category_measure: categories
post_measure: entrades

91
_data/locales/fa-IR.yaml Normal file
View File

@@ -0,0 +1,91 @@
# The layout text of site
# ----- Commons label -----
layout:
post: پست
category: دسته‌بندی
tag: برچسب
# The tabs of sidebar
tabs:
# format: <filename_without_extension>: <value>
home: خانه
categories: دسته‌بندی‌ها
tags: برچسب‌ها
archives: آرشیو
about: درباره
# the text displayed in the search bar & search results
search:
hint: جستجو
cancel: لغو
no_results: متأسفیم! هیچ نتیجه‌ای یافت نشد.
panel:
lastmod: آخرین به‌روزرسانی
trending_tags: برچسب‌های پرطرفدار
toc: فهرست مطالب
copyright:
# Shown at the bottom of the post
license:
template: این پست تحت مجوز :LICENSE_NAME توسط نویسنده منتشر شده است.
name: CC BY 4.0
link: https://creativecommons.org/licenses/by/4.0/
# Displayed in the footer
brief: برخی حقوق محفوظ است.
verbose: >-
مگر اینکه خلاف آن ذکر شده باشد، پست‌های وبلاگ در این سایت
تحت مجوز Creative Commons Attribution 4.0 International (CC BY 4.0) توسط نویسنده منتشر شده‌اند.
meta: با استفاده از :PLATFORM قالب :THEME
not_found:
statement: متأسفیم، لینک زیر معتبر نیست یا به صفحه‌ای که وجود ندارد اشاره می‌کند.
notification:
update_found: نسخه جدیدی از محتوا موجود است.
update: به‌روزرسانی
# ----- Posts related labels -----
post:
written_by: نوشته شده توسط
posted: منتشر شده
updated: به‌روزرسانی شده
words: کلمات
pageview_measure: بازدیدها
read_time:
unit: دقیقه
prompt: زمان مطالعه
relate_posts: بیشتر بخوانید
share: اشتراک‌گذاری
button:
next: جدیدتر
previous: قدیمی‌تر
copy_code:
succeed: کپی شد!
share_link:
title: کپی لینک
succeed: لینک با موفقیت کپی شد!
# Date time format.
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
df:
post:
strftime: "%b %e, %Y"
dayjs: "ll"
archives:
strftime: "%b"
dayjs: "MMM"
# categories page
categories:
category_measure:
singular: دسته‌بندی
plural: دسته‌بندی‌ها
post_measure:
singular: پست
plural: پست‌ها

84
_data/locales/ja-JP.yml Normal file
View File

@@ -0,0 +1,84 @@
# The layout text of site
# ----- Commons label -----
layout:
post: 投稿
category: カテゴリー
tag: タグ
# The tabs of sidebar
tabs:
# format: <filename_without_extension>: <value>
home: ホーム
categories: カテゴリー
tags: タグ
archives: アーカイブ
about: このサイトについて
# the text displayed in the search bar & search results
search:
hint: 検索
cancel: キャンセル
no_results: 該当なし
panel:
lastmod: 最近更新された投稿
trending_tags: トレンドのタグ
toc: コンテンツ
copyright:
# Shown at the bottom of the post
license:
template: この投稿は投稿者によって :LICENSE_NAME の下でライセンスされています。
name: CC BY 4.0
link: https://creativecommons.org/licenses/by/4.0/
# Displayed in the footer
brief: Some rights reserved.
verbose: >-
Except where otherwise noted, the blog posts on this site are licensed
under the Creative Commons Attribution 4.0 International (CC BY 4.0) License by the author.
meta: :PLATFORM 用の :THEME を使用しています。
not_found:
statement: このURLは存在しないものを指し示しています。
notification:
update_found: 新しいバージョンが利用可能です。
update: 更新
# ----- Posts related labels -----
post:
written_by: 投稿者
posted: 投稿日
updated: 更新日
words:
pageview_measure: 回閲覧
read_time:
unit:
prompt: で読めます
relate_posts: さらに読む
share: シェア
button:
next:
previous:
copy_code:
succeed: コピーしました
share_link:
title: リンクをコピー
succeed: リンクをコピーしました
# Date time format.
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
df:
post:
strftime: "%Y/%m/%d"
dayjs: "YYYY/MM/DD"
# categories page
categories:
category_measure: カテゴリー
post_measure: 投稿

90
_data/locales/nl-NL.yml Normal file
View File

@@ -0,0 +1,90 @@
# The layout text of site
# ----- Commons label -----
layout:
post: Post
category: Categorie
tag: Tag
# The tabs of sidebar
tabs:
# format: <filename_without_extension>: <value>
home: Startpagina
categories: Categorieën
tags: Tags
archives: Archief
about: Over
# the text displayed in the search bar & search results
search:
hint: Zoek
cancel: Annuleer
no_results: Oops! Geen resultaat gevonden.
panel:
lastmod: Recent Bijgewerkt
trending_tags: Trending Tags
toc: Inhoud
copyright:
# Shown at the bottom of the post
license:
template: Alle posts zijn onder :LICENSE_NAME gepubliceerd door de auteur.
name: CC BY 4.0
link: https://creativecommons.org/licenses/by/4.0/
# Displayed in the footer
brief: Sommige rechten voorbehouden.
verbose: >-
Tenzij anders vermeld, alle posts zijn onder de
Creative Commons Attribution 4.0 International (CC BY 4.0) gepubliceerd door de auteur.
meta: Gebruikt :THEME
not_found:
statement: Sorry, we hebben de URL verkeerd geplaatst of hij verwijst naar iets dat niet bestaat.
notification:
update_found: Nieuwe versie van inhoud beschikbaar.
update: Update
# ----- Posts related labels -----
post:
written_by: Door
posted: Posted
updated: Bijgewerkt
words: woorden
pageview_measure: Gelezen
read_time:
unit: min
prompt: lees
relate_posts: Verder Lezen
share: Deel
button:
next: Volgende
previous: Vorige
copy_code:
succeed: Gekopieerd!
share_link:
title: Link kopiëren
succeed: Succesvol gekopieerd!
# Date time format.
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
df:
post:
strftime: "%b %e, %Y"
dayjs: "ll"
archives:
strftime: "%b"
dayjs: "MMM"
# categories page
categories:
category_measure:
singular: categorie
plural: categorieën
post_measure:
singular: post
plural: posts

View File

@@ -18,7 +18,7 @@ platforms:
#
# - type: Linkedin
# icon: "fab fa-linkedin"
# link: "https://www.linkedin.com/sharing/share-offsite/?url=URL"
# link: "https://www.linkedin.com/feed/?shareActive=true&shareUrl=URL"
#
# - type: Weibo
# icon: "fab fa-weibo"

View File

@@ -1,10 +0,0 @@
{% comment %}
Remove the line number of the code snippet.
{% endcomment %}
{% assign content = include.content %}
{% if content contains '<td class="rouge-gutter gl"><pre class="lineno">' %}
{% assign content = content | replace: '<td class="rouge-gutter gl"><pre class="lineno">', '<!-- <td class="rouge-gutter gl"><pre class="lineno">'%}
{% assign content = content | replace: '</td><td class="rouge-code">', '</td> --><td class="rouge-code">' %}
{% endif %}

View File

@@ -8,8 +8,17 @@
{%- if post.description -%}
{{- post.description -}}
{%- else -%}
{%- include no-linenos.html content=post.content -%}
{{- content | markdownify | strip_html -}}
{% comment %}
Remove the line number of the code snippet.
{% endcomment %}
{% assign content = post.content %}
{% if content contains '<td class="rouge-gutter gl"><pre class="lineno">' %}
{% assign content = content | replace: '<td class="rouge-gutter gl"><pre class="lineno">', '<!-- <td class="rouge-gutter gl"><pre class="lineno">'%}
{% assign content = content | replace: '</td><td class="rouge-code">', '</td> --><td class="rouge-code">' %}
{% endif %}
{{- content | markdownify | strip_html | newline_to_br | replace: '<br />', ' ' | strip_newlines -}}
{%- endif -%}
{%- endcapture -%}

View File

@@ -12,7 +12,7 @@
{tags}
</div>
</header>
<p>{snippet}</p>
<p>{content}</p>
</article>
{% endcapture %}

View File

@@ -3,7 +3,7 @@
<div id="search-result-wrapper" class="d-flex justify-content-center d-none">
<div class="col-11 content">
<div id="search-hints">
{% include_cached trending-tags.html %}
{% include_cached trending-tags.html lang=include.lang %}
</div>
<div id="search-results" class="d-flex flex-wrap justify-content-center text-muted mt-3"></div>
</div>

View File

@@ -1,6 +1,6 @@
<!-- The Top Bar -->
<header id="topbar-wrapper" aria-label="Top Bar">
<header id="topbar-wrapper" class="flex-shrink-0" aria-label="Top Bar">
<div
id="topbar"
class="d-flex align-items-center justify-content-between px-lg-3 h-100"
@@ -40,7 +40,7 @@
</nav>
<!-- endof #breadcrumb -->
<button type="button" id="sidebar-trigger" class="btn btn-link">
<button type="button" id="sidebar-trigger" class="btn btn-link" aria-label="Sidebar">
<i class="fas fa-bars fa-fw"></i>
</button>
@@ -55,7 +55,7 @@
{% endif %}
</div>
<button type="button" id="search-trigger" class="btn btn-link">
<button type="button" id="search-trigger" class="btn btn-link" aria-label="Search">
<i class="fas fa-search fa-fw"></i>
</button>

View File

@@ -39,7 +39,10 @@ class Theme {
}
static get #mode() {
return sessionStorage.getItem(this.#modeKey);
return (
sessionStorage.getItem(this.#modeKey) ||
document.documentElement.getAttribute(this.#modeAttr)
);
}
static get #isDarkMode() {

View File

@@ -21,7 +21,7 @@ Basically, you need to fill the [Front Matter](https://jekyllrb.com/docs/front-m
---
title: TITLE
date: YYYY-MM-DD HH:MM:SS +/-TTTT
categories: [TOP_CATEGORIE, SUB_CATEGORIE]
categories: [TOP_CATEGORY, SUB_CATEGORY]
tags: [TAG] # TAG names should always be lowercase
---
```

View File

@@ -68,7 +68,7 @@ For Unix-like systems, you can set up the environment natively for optimal perfo
To run the site locally, use the following command:
```terminal
$ bundle exec jekyll s
$ bundle exec jekyll serve
```
> If you are using Dev Containers, you must run that command in the **VS Code** Terminal.

View File

@@ -31,7 +31,10 @@
}
%tag-hover {
@extend %link-color;
background: var(--tag-hover);
border-color: var(--tag-hover);
transition: background 0.35s ease-in-out;
}

View File

@@ -143,9 +143,7 @@ header {
.post-tag {
&:hover {
@extend %link-hover;
@extend %tag-hover;
@extend %no-bottom-border;
}
}
}

View File

@@ -2,13 +2,8 @@
layout: page
title: "404: Page not found"
permalink: /404.html
redirect_from:
- /norobots/
- /assets/
- /posts/
---
{% include lang.html %}
<p class="lead">{{ site.data.locales[lang].not_found.statement }}</p>
<p class="lead">{{ site.data.locales[lang].not_found.statement }}</p>

View File

@@ -5,16 +5,16 @@ swcache: true
[
{% for post in site.posts %}
{%- capture description -%}
{% include post-description.html %}
{%- endcapture -%}
{
"title": {{ post.title | jsonify }},
"url": {{ post.url | relative_url | jsonify }},
"categories": {{ post.categories | join: ', ' | jsonify }},
"tags": {{ post.tags | join: ', ' | jsonify }},
"date": "{{ post.date }}",
{% include no-linenos.html content=post.content %}
{% assign _content = content | strip_html | strip_newlines %}
"snippet": {{ _content | truncate: 200 | jsonify }},
"content": {{ _content | jsonify }}
"content": "{{ description }}"
}{% unless forloop.last %},{% endunless %}
{% endfor %}
]

View File

@@ -27,7 +27,6 @@ Gem::Specification.new do |spec|
spec.add_runtime_dependency "jekyll", "~> 4.3"
spec.add_runtime_dependency "jekyll-paginate", "~> 1.1"
spec.add_runtime_dependency "jekyll-redirect-from", "~> 0.16"
spec.add_runtime_dependency "jekyll-seo-tag", "~> 2.8"
spec.add_runtime_dependency "jekyll-archives", "~> 2.2"
spec.add_runtime_dependency "jekyll-sitemap", "~> 1.4"

View File

@@ -80,7 +80,7 @@ export default [
build('page'),
build('post'),
build('misc'),
build('theme', { src: `${SRC_DEFAULT}/modules`, outputName: 'Theme' }),
build('theme', { outputName: 'Theme' }),
build('app', { src: SRC_PWA, jekyll: true }),
build('sw', { src: SRC_PWA, jekyll: true })
];