mirror of
https://github.com/CaiJimmy/hugo-theme-stack.git
synced 2025-04-29 03:53:30 +08:00
Merge branch 'master' into Raddah-patch-1
This commit is contained in:
commit
eb97a87209
@ -3,6 +3,10 @@
|
|||||||
|
|
||||||
> Card-style Hugo theme designed for bloggers.
|
> Card-style Hugo theme designed for bloggers.
|
||||||
|
|
||||||
|
## Quickstart
|
||||||
|
|
||||||
|
Use this template: [CaiJimmy/hugo-theme-stack-starter](https://github.com/CaiJimmy/hugo-theme-stack-starter)
|
||||||
|
|
||||||
## Demo
|
## Demo
|
||||||
|
|
||||||
[Example Site](https://demo.stack.jimmycai.com/)
|
[Example Site](https://demo.stack.jimmycai.com/)
|
||||||
@ -28,6 +32,7 @@ Stack is a simple card-style Hugo theme designed for bloggers, some of its featu
|
|||||||
- Properly cropped thumbnails
|
- Properly cropped thumbnails
|
||||||
- Subsection support
|
- Subsection support
|
||||||
- Table of contents
|
- Table of contents
|
||||||
|
- Multilingual mode and RTL support
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
|
@ -77,47 +77,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#article-toolbar {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin: 20px 0;
|
|
||||||
|
|
||||||
@include respond(md) {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.back-home {
|
|
||||||
background: var(--card-background);
|
|
||||||
border-radius: var(--tag-border-radius);
|
|
||||||
color: var(--card-text-color-tertiary);
|
|
||||||
margin-right: 30px;
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
font-size: 1.4rem;
|
|
||||||
text-transform: uppercase;
|
|
||||||
padding: 10px 20px 10px 15px;
|
|
||||||
|
|
||||||
transition: box-shadow 0.3s ease;
|
|
||||||
|
|
||||||
box-shadow: var(--shadow-l1);
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
box-shadow: var(--shadow-l2);
|
|
||||||
}
|
|
||||||
|
|
||||||
svg {
|
|
||||||
margin-right: 5px;
|
|
||||||
width: 20px;
|
|
||||||
height: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
span {
|
|
||||||
font-weight: 500;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.widget--toc {
|
.widget--toc {
|
||||||
background-color: var(--card-background);
|
background-color: var(--card-background);
|
||||||
border-radius: var(--card-border-radius);
|
border-radius: var(--card-border-radius);
|
||||||
|
@ -9,7 +9,7 @@ languages:
|
|||||||
languageName: English
|
languageName: English
|
||||||
title: Example Site
|
title: Example Site
|
||||||
weight: 1
|
weight: 1
|
||||||
cn:
|
zh-cn:
|
||||||
languageName: 中文
|
languageName: 中文
|
||||||
title: 演示站点
|
title: 演示站点
|
||||||
weight: 2
|
weight: 2
|
||||||
@ -26,7 +26,7 @@ disqusShortname: hugo-theme-stack
|
|||||||
googleAnalytics:
|
googleAnalytics:
|
||||||
|
|
||||||
# Theme i18n support
|
# Theme i18n support
|
||||||
# Available values: en, fr, id, ja, ko, pt-br, zh-cn, zh-tw, es, de, nl, it, th, el, uk, ar
|
# Available values: ar, ca, de, el, en, es, fr, id, it, ja, ko, nl, pt-br, th, uk, zh-cn, zh-hk, zh-tw
|
||||||
DefaultContentLanguage: en
|
DefaultContentLanguage: en
|
||||||
|
|
||||||
# Set hasCJKLanguage to true if DefaultContentLanguage is in [zh-cn ja ko]
|
# Set hasCJKLanguage to true if DefaultContentLanguage is in [zh-cn ja ko]
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
title: 关于
|
|
||||||
---
|
|
||||||
|
|
||||||
This is a test page for i18n support.
|
|
10
exampleSite/content/page/about/index.zh-cn.md
Normal file
10
exampleSite/content/page/about/index.zh-cn.md
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: 关于
|
||||||
|
menu:
|
||||||
|
main:
|
||||||
|
weight: -90
|
||||||
|
params:
|
||||||
|
icon: user
|
||||||
|
---
|
||||||
|
|
||||||
|
This is a test page for i18n support.
|
2
go.mod
2
go.mod
@ -1,3 +1,3 @@
|
|||||||
module github.com/CaiJimmy/hugo-theme-stack/v3
|
module github.com/CaiJimmy/hugo-theme-stack/v3
|
||||||
|
|
||||||
go 1.12
|
go 1.17
|
||||||
|
73
i18n/ca.yaml
Normal file
73
i18n/ca.yaml
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
toggleMenu:
|
||||||
|
other: Toggle Menu
|
||||||
|
|
||||||
|
darkMode:
|
||||||
|
other: Mode fosc
|
||||||
|
|
||||||
|
list:
|
||||||
|
page:
|
||||||
|
one: "{{ .Count }} pàgina"
|
||||||
|
other: "{{ .Count }} pàgines"
|
||||||
|
|
||||||
|
section:
|
||||||
|
other: Secció
|
||||||
|
|
||||||
|
subsection:
|
||||||
|
one: Subsecció
|
||||||
|
other: Subseccions
|
||||||
|
|
||||||
|
article:
|
||||||
|
back:
|
||||||
|
other: Tornar
|
||||||
|
|
||||||
|
tableOfContents:
|
||||||
|
other: Taula de contingut
|
||||||
|
|
||||||
|
relatedContents:
|
||||||
|
other: Continguts relacionats
|
||||||
|
|
||||||
|
lastUpdatedOn:
|
||||||
|
other: Última vegada actualitzat
|
||||||
|
|
||||||
|
readingTime:
|
||||||
|
one: "{{ .Count }} minut a llegir"
|
||||||
|
other: "{{ .Count }} minuts a llegir"
|
||||||
|
|
||||||
|
notFound:
|
||||||
|
title:
|
||||||
|
other: No Trobat
|
||||||
|
|
||||||
|
subtitle:
|
||||||
|
other: Aquesta pàgina no existeix
|
||||||
|
|
||||||
|
widget:
|
||||||
|
archives:
|
||||||
|
title:
|
||||||
|
other: Arxiu
|
||||||
|
|
||||||
|
more:
|
||||||
|
other: Més
|
||||||
|
|
||||||
|
tagCloud:
|
||||||
|
title:
|
||||||
|
other: Etiquetes
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: Categories
|
||||||
|
|
||||||
|
search:
|
||||||
|
title:
|
||||||
|
other: Cerca
|
||||||
|
|
||||||
|
placeholder:
|
||||||
|
other: Tecleja alguna cosa...
|
||||||
|
|
||||||
|
resultTitle:
|
||||||
|
other: "#PAGES_COUNT pàgines en (#TIME_SECONDS segons)"
|
||||||
|
|
||||||
|
footer:
|
||||||
|
builtWith:
|
||||||
|
other: Creat amb {{ .Generator }}
|
||||||
|
|
||||||
|
designedBy:
|
||||||
|
other: Tema {{ .Theme }} dissenyat per {{ .DesignedBy }}
|
@ -51,6 +51,9 @@ widget:
|
|||||||
tagCloud:
|
tagCloud:
|
||||||
title:
|
title:
|
||||||
other: Etiquetas
|
other: Etiquetas
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: Categorías
|
||||||
|
|
||||||
search:
|
search:
|
||||||
title:
|
title:
|
||||||
|
@ -51,6 +51,10 @@ widget:
|
|||||||
title:
|
title:
|
||||||
other: Tag
|
other: Tag
|
||||||
|
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: Kategori
|
||||||
|
|
||||||
search:
|
search:
|
||||||
title:
|
title:
|
||||||
other: Cari
|
other: Cari
|
||||||
|
11
i18n/ja.yaml
11
i18n/ja.yaml
@ -38,6 +38,10 @@ widget:
|
|||||||
title:
|
title:
|
||||||
other: タグ
|
other: タグ
|
||||||
|
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: カテゴリ
|
||||||
|
|
||||||
search:
|
search:
|
||||||
title:
|
title:
|
||||||
other: 検索
|
other: 検索
|
||||||
@ -47,3 +51,10 @@ search:
|
|||||||
|
|
||||||
resultTitle:
|
resultTitle:
|
||||||
other: "#PAGES_COUNT 件 (#TIME_SECONDS 秒)"
|
other: "#PAGES_COUNT 件 (#TIME_SECONDS 秒)"
|
||||||
|
|
||||||
|
footer:
|
||||||
|
builtWith:
|
||||||
|
other: Built with {{ .Generator }}
|
||||||
|
|
||||||
|
designedBy:
|
||||||
|
other: テーマ {{ .Theme }} は {{ .DesignedBy }} によって設計されています。
|
||||||
|
@ -50,6 +50,10 @@ widget:
|
|||||||
tagCloud:
|
tagCloud:
|
||||||
title:
|
title:
|
||||||
other: Tagi
|
other: Tagi
|
||||||
|
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: Kategorie
|
||||||
|
|
||||||
search:
|
search:
|
||||||
title:
|
title:
|
||||||
|
@ -38,6 +38,10 @@ widget:
|
|||||||
title:
|
title:
|
||||||
other: 标签云
|
other: 标签云
|
||||||
|
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: 分类
|
||||||
|
|
||||||
search:
|
search:
|
||||||
title:
|
title:
|
||||||
other: 搜索
|
other: 搜索
|
||||||
@ -47,3 +51,10 @@ search:
|
|||||||
|
|
||||||
resultTitle:
|
resultTitle:
|
||||||
other: "#PAGES_COUNT 个结果 (用时 #TIME_SECONDS 秒)"
|
other: "#PAGES_COUNT 个结果 (用时 #TIME_SECONDS 秒)"
|
||||||
|
|
||||||
|
footer:
|
||||||
|
builtWith:
|
||||||
|
other: Built with {{ .Generator }}
|
||||||
|
|
||||||
|
designedBy:
|
||||||
|
other: 主题 {{ .Theme }} 由 {{ .DesignedBy }} 设计
|
73
i18n/zh-hk.yaml
Normal file
73
i18n/zh-hk.yaml
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
toggleMenu:
|
||||||
|
other: 切換選單
|
||||||
|
|
||||||
|
darkMode:
|
||||||
|
other: 深色模式
|
||||||
|
|
||||||
|
list:
|
||||||
|
page:
|
||||||
|
one: "第 {{ .Count }} 頁"
|
||||||
|
other: "第 {{ .Count }} 頁"
|
||||||
|
|
||||||
|
section:
|
||||||
|
other: Section
|
||||||
|
|
||||||
|
subsection:
|
||||||
|
one: Subsection
|
||||||
|
other: Subsections
|
||||||
|
|
||||||
|
article:
|
||||||
|
back:
|
||||||
|
other: 返回
|
||||||
|
|
||||||
|
tableOfContents:
|
||||||
|
other: 目錄
|
||||||
|
|
||||||
|
relatedContents:
|
||||||
|
other: 相關內容
|
||||||
|
|
||||||
|
lastUpdatedOn:
|
||||||
|
other: 上次改過於
|
||||||
|
|
||||||
|
readingTime:
|
||||||
|
one: "需要 {{ .Count }} 分鐘閱讀"
|
||||||
|
other: "需要 {{ .Count }} 分鐘閱讀"
|
||||||
|
|
||||||
|
notFound:
|
||||||
|
title:
|
||||||
|
other: Not Found
|
||||||
|
|
||||||
|
subtitle:
|
||||||
|
other: 頁面不存在
|
||||||
|
|
||||||
|
widget:
|
||||||
|
archives:
|
||||||
|
title:
|
||||||
|
other: Archives
|
||||||
|
|
||||||
|
more:
|
||||||
|
other: 更多
|
||||||
|
|
||||||
|
tagCloud:
|
||||||
|
title:
|
||||||
|
other: Tags
|
||||||
|
categoriesCloud:
|
||||||
|
title:
|
||||||
|
other: Categories
|
||||||
|
|
||||||
|
search:
|
||||||
|
title:
|
||||||
|
other: 搜尋
|
||||||
|
|
||||||
|
placeholder:
|
||||||
|
other: Type 關鍵字...
|
||||||
|
|
||||||
|
resultTitle:
|
||||||
|
other: "#PAGES_COUNT pages (#TIME_SECONDS seconds)"
|
||||||
|
|
||||||
|
footer:
|
||||||
|
builtWith:
|
||||||
|
other: Built with {{ .Generator }}
|
||||||
|
|
||||||
|
designedBy:
|
||||||
|
other: 主題 {{ .Theme }} 由 {{ .DesignedBy }} 設計
|
@ -6,7 +6,14 @@
|
|||||||
</head>
|
</head>
|
||||||
<body class="{{ block `body-class` . }}{{ end }}">
|
<body class="{{ block `body-class` . }}{{ end }}">
|
||||||
{{- partial "head/colorScheme" . -}}
|
{{- partial "head/colorScheme" . -}}
|
||||||
{{- $hasWidget := default (gt (len .Site.Params.widgets.homepage) 0) (.Scratch.Get "hasWidget") -}}
|
|
||||||
|
{{/* The container is wider when there's any activated widget */}}
|
||||||
|
{{- $hasWidget := false -}}
|
||||||
|
{{- range .Site.Params.widgets -}}
|
||||||
|
{{- if gt (len .) 0 -}}
|
||||||
|
{{- $hasWidget = true -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
<div class="container main-container flex on-phone--column {{ if $hasWidget }}extended{{ else }}compact{{ end }}">
|
<div class="container main-container flex on-phone--column {{ if $hasWidget }}extended{{ else }}compact{{ end }}">
|
||||||
{{- block "left-sidebar" . -}}
|
{{- block "left-sidebar" . -}}
|
||||||
{{ partial "sidebar/left.html" . }}
|
{{ partial "sidebar/left.html" . }}
|
||||||
|
@ -1,9 +1,15 @@
|
|||||||
{{- $pages := where .Site.RegularPages "Type" "in" .Site.Params.mainSections -}}
|
{{- $pctx := . -}}
|
||||||
{{- $notHidden := where .Site.RegularPages "Params.hidden" "!=" true -}}
|
{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}}
|
||||||
{{- $filtered := ($pages | intersect $notHidden) -}}
|
{{- $pages := slice -}}
|
||||||
|
{{- if or $.IsHome $.IsSection -}}
|
||||||
|
{{- $pages = $pctx.RegularPages -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- $pages = $pctx.Pages -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $pages := where $pages "Params.hidden" "!=" true -}}
|
||||||
{{- $limit := .Site.Config.Services.RSS.Limit -}}
|
{{- $limit := .Site.Config.Services.RSS.Limit -}}
|
||||||
{{- if ge $limit 1 -}}
|
{{- if ge $limit 1 -}}
|
||||||
{{- $filtered = $filtered | first $limit -}}
|
{{- $pages = $pages | first $limit -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
|
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
|
||||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
||||||
@ -20,7 +26,7 @@
|
|||||||
{{- with .OutputFormats.Get "RSS" -}}
|
{{- with .OutputFormats.Get "RSS" -}}
|
||||||
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
|
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{ range $filtered }}
|
{{ range $pages }}
|
||||||
{{- $content := safeHTML (.Summary | html) -}}
|
{{- $content := safeHTML (.Summary | html) -}}
|
||||||
{{- if .Site.Params.rssFullContent -}}
|
{{- if .Site.Params.rssFullContent -}}
|
||||||
{{- $content = safeHTML (.Content | html) -}}
|
{{- $content = safeHTML (.Content | html) -}}
|
@ -1,4 +1,4 @@
|
|||||||
{{- $ThemeVersion := "3.9.0" -}}
|
{{- $ThemeVersion := "3.10.0" -}}
|
||||||
<footer class="site-footer">
|
<footer class="site-footer">
|
||||||
<section class="copyright">
|
<section class="copyright">
|
||||||
©
|
©
|
||||||
|
Loading…
Reference in New Issue
Block a user