hexo-theme-shokax 0.0.2-alpha1 → 0.0.2-alpha3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (159) hide show
  1. package/CODE_OF_CONDUCT.md +128 -0
  2. package/CONTRIBUTING.md +56 -0
  3. package/LICENSE +28 -28
  4. package/LICENSE-shoka +21 -21
  5. package/README.md +46 -53
  6. package/README_en.MD +25 -0
  7. package/_config.yml +392 -355
  8. package/_images.yml +100 -100
  9. package/languages/README.md +19 -19
  10. package/languages/default.yml +1 -1
  11. package/languages/en.yml +151 -151
  12. package/languages/ja.yml +146 -146
  13. package/languages/zh-CN.yml +154 -154
  14. package/languages/zh-HK.yml +146 -146
  15. package/languages/zh-TW.yml +146 -146
  16. package/layout/_alternate/atom.ejs +30 -30
  17. package/layout/_alternate/json.ejs +16 -16
  18. package/layout/_alternate/rss.ejs +34 -34
  19. package/layout/_mixin/breadcrumb.pug +33 -33
  20. package/layout/_mixin/card.pug +37 -37
  21. package/layout/_mixin/comment.pug +66 -12
  22. package/layout/_mixin/postmeta.pug +30 -30
  23. package/layout/_mixin/segment.pug +32 -32
  24. package/layout/_mixin/sidebar.pug +36 -36
  25. package/layout/_mixin/widgets.pug +31 -29
  26. package/layout/_partials/footer.pug +40 -40
  27. package/layout/_partials/head/head.pug +51 -58
  28. package/layout/_partials/head/head_com.pug +17 -17
  29. package/layout/_partials/head/pwa.pug +18 -18
  30. package/layout/_partials/header.pug +18 -20
  31. package/layout/_partials/layout.pug +143 -153
  32. package/layout/_partials/loading.pug +13 -13
  33. package/layout/_partials/pagination.pug +4 -4
  34. package/layout/_partials/post/copyright.pug +20 -20
  35. package/layout/_partials/post/footer.pug +14 -14
  36. package/layout/_partials/post/nav.pug +13 -13
  37. package/layout/_partials/post/post.pug +28 -27
  38. package/layout/_partials/post/reward.pug +18 -18
  39. package/layout/_partials/sidebar/menu.pug +37 -37
  40. package/layout/_partials/sidebar/overview.pug +41 -42
  41. package/layout/_partials/third-party/baidu-analytics.pug +11 -11
  42. package/layout/_partials/third-party/clarity.pug +8 -8
  43. package/layout/archive.pug +118 -118
  44. package/layout/category.pug +63 -63
  45. package/layout/index.pug +33 -33
  46. package/layout/page.pug +56 -56
  47. package/layout/post.pug +35 -35
  48. package/layout/tag.pug +43 -43
  49. package/package.json +35 -35
  50. package/scripts/filters/locals.js +59 -59
  51. package/scripts/filters/post.js +23 -23
  52. package/scripts/generaters/archive.js +141 -141
  53. package/scripts/generaters/config.js +43 -43
  54. package/scripts/generaters/images.js +26 -26
  55. package/scripts/generaters/index.js +110 -110
  56. package/scripts/generaters/pages.js +19 -19
  57. package/scripts/generaters/script.js +89 -89
  58. package/scripts/helpers/asset.js +183 -237
  59. package/scripts/helpers/engine.js +190 -190
  60. package/scripts/helpers/list_categories.js +140 -140
  61. package/scripts/helpers/symbols_count_time.js +76 -76
  62. package/scripts/plugin/index.js +6 -6
  63. package/scripts/plugin/lib/injects-point.js +19 -19
  64. package/scripts/plugin/lib/injects.js +89 -88
  65. package/scripts/tags/links.js +86 -86
  66. package/scripts/tags/media.js +19 -19
  67. package/source/assets/algolia_logo.svg +9 -9
  68. package/source/assets/logo.svg +16 -16
  69. package/source/css/_colors.styl +207 -207
  70. package/source/css/_common/components/components.styl +6 -6
  71. package/source/css/_common/components/highlight/highlight.styl +353 -353
  72. package/source/css/_common/components/highlight/operation.styl +21 -21
  73. package/source/css/_common/components/pages/collapse.styl +119 -119
  74. package/source/css/_common/components/pages/home.styl +385 -385
  75. package/source/css/_common/components/pages/pages.styl +56 -56
  76. package/source/css/_common/components/pages/tag-cloud.styl +12 -12
  77. package/source/css/_common/components/post/breadcrumb.styl +39 -39
  78. package/source/css/_common/components/post/copyright.styl +41 -41
  79. package/source/css/_common/components/post/expand.styl +264 -264
  80. package/source/css/_common/components/post/footer.styl +11 -11
  81. package/source/css/_common/components/post/header.styl +79 -79
  82. package/source/css/_common/components/post/nav.styl +63 -63
  83. package/source/css/_common/components/post/post.styl +29 -29
  84. package/source/css/_common/components/post/reward.styl +50 -50
  85. package/source/css/_common/components/post/rtl.styl +12 -12
  86. package/source/css/_common/components/post/tags.styl +39 -39
  87. package/source/css/_common/components/tags/collapse.styl +72 -72
  88. package/source/css/_common/components/tags/container.styl +49 -49
  89. package/source/css/_common/components/tags/label.styl +12 -12
  90. package/source/css/_common/components/tags/links.styl +77 -77
  91. package/source/css/_common/components/tags/list.styl +131 -131
  92. package/source/css/_common/components/tags/note.styl +70 -70
  93. package/source/css/_common/components/tags/player.styl +361 -361
  94. package/source/css/_common/components/tags/quiz.styl +200 -200
  95. package/source/css/_common/components/tags/tabs.styl +83 -83
  96. package/source/css/_common/components/tags/tags.styl +9 -9
  97. package/source/css/_common/components/third-party/loading.styl +222 -222
  98. package/source/css/_common/components/third-party/mermaid/class.styl +90 -90
  99. package/source/css/_common/components/third-party/mermaid/flowchart.styl +72 -72
  100. package/source/css/_common/components/third-party/mermaid/gantt.styl +251 -251
  101. package/source/css/_common/components/third-party/mermaid/git.styl +7 -7
  102. package/source/css/_common/components/third-party/mermaid/mermaid.styl +37 -37
  103. package/source/css/_common/components/third-party/mermaid/pie.styl +9 -9
  104. package/source/css/_common/components/third-party/mermaid/sequence.styl +95 -95
  105. package/source/css/_common/components/third-party/mermaid/state.styl +130 -130
  106. package/source/css/_common/components/third-party/pace.styl +18 -18
  107. package/source/css/_common/components/third-party/search.styl +167 -167
  108. package/source/css/_common/components/third-party/theme.styl +151 -151
  109. package/source/css/_common/components/third-party/third-party.styl +22 -22
  110. package/source/css/_common/components/third-party/valine.styl +548 -548
  111. package/source/css/_common/components/third-party/widgets.styl +57 -57
  112. package/source/css/_common/outline/footer/footer.styl +69 -69
  113. package/source/css/_common/outline/header/brand.styl +77 -77
  114. package/source/css/_common/outline/header/header.styl +20 -20
  115. package/source/css/_common/outline/header/image.styl +79 -79
  116. package/source/css/_common/outline/header/menu.styl +117 -117
  117. package/source/css/_common/outline/header/nav.styl +81 -81
  118. package/source/css/_common/outline/header/right.styl +15 -15
  119. package/source/css/_common/outline/header/tool.styl +207 -207
  120. package/source/css/_common/outline/header/waves.styl +50 -50
  121. package/source/css/_common/outline/mobile.styl +46 -46
  122. package/source/css/_common/outline/outline.styl +78 -78
  123. package/source/css/_common/outline/sidebar/author.styl +59 -59
  124. package/source/css/_common/outline/sidebar/dimmer.styl +23 -23
  125. package/source/css/_common/outline/sidebar/menu.styl +63 -63
  126. package/source/css/_common/outline/sidebar/quick.styl +43 -43
  127. package/source/css/_common/outline/sidebar/related.styl +56 -56
  128. package/source/css/_common/outline/sidebar/sidebar.styl +75 -75
  129. package/source/css/_common/outline/sidebar/social.styl +69 -69
  130. package/source/css/_common/outline/sidebar/state.styl +37 -37
  131. package/source/css/_common/outline/sidebar/tab.styl +71 -71
  132. package/source/css/_common/outline/sidebar/toc.styl +47 -47
  133. package/source/css/_common/scaffolding/animate.styl +318 -318
  134. package/source/css/_common/scaffolding/base.styl +172 -172
  135. package/source/css/_common/scaffolding/buttons.styl +48 -48
  136. package/source/css/_common/scaffolding/divider.styl +36 -36
  137. package/source/css/_common/scaffolding/iconfont.styl +443 -443
  138. package/source/css/_common/scaffolding/normalize.styl +289 -289
  139. package/source/css/_common/scaffolding/pagination.styl +81 -81
  140. package/source/css/_common/scaffolding/ribbon.styl +38 -38
  141. package/source/css/_common/scaffolding/scaffolding.styl +14 -14
  142. package/source/css/_common/scaffolding/scrollbar.styl +37 -37
  143. package/source/css/_common/scaffolding/tables.styl +50 -50
  144. package/source/css/_common/scaffolding/tip.styl +19 -19
  145. package/source/css/_common/scaffolding/toggles.styl +59 -59
  146. package/source/css/_iconfont.styl +451 -451
  147. package/source/css/_mixins.styl +146 -146
  148. package/source/css/_variables.styl +89 -89
  149. package/source/css/app.styl +36 -38
  150. package/source/css/comment.styl +5 -5
  151. package/source/css/mermaid.styl +5 -5
  152. package/source/js/_app/components.js +330 -330
  153. package/source/js/_app/global.js +317 -317
  154. package/source/js/_app/library.js +302 -302
  155. package/source/js/_app/page.js +623 -623
  156. package/source/js/_app/player.js +748 -748
  157. package/source/js/_app/vue.js +43 -43
  158. package/layout/_partials/third-party/qweather.pug +0 -35
  159. package/source/css/plugin.styl +0 -174
@@ -1,58 +1,51 @@
1
- - var msValidate = theme?.seo?.bing,googleValid = theme?.seo?.google
2
- - var yandexValid = theme?.seo?.yandex,baiduValid = theme?.seo?.baidu
3
- - var siteTitle = config.title,noBaiduT = theme?.seo?.disable_baidu_transformation
4
- - var feedLink = full_url_for("/feed.json")
5
- - var twikooLink = theme?.twikoo?.link;var jsInjects = theme?.inject?.head?.js,cssInjects = theme?.inject?.head?.css
6
- - var wl = theme.waline.enable
7
- meta(charset="UTF-8")
8
- meta(name="viewport" content="width=device-width,initial-scale=1,maximum-scale=2")
9
- meta(name="theme-color" content="#222")
10
-
11
- meta(http-equiv="X-UA-COMPATIBLE" content="IE=edge,chrome=1")
12
- meta(name="renderer" content="webkit")
13
- link(rel="icon" type="image/ico" sizes="32x32" href=url_for(theme.statics + theme.assets + theme.icon.favicon))
14
- if theme.icon.apple_touch_icon
15
- link(rel="apple-touch-icon" sizes="180x180" href=url_for(theme.statics + theme.assets + theme.icon.apple_touch_icon))
16
-
17
- if msValidate
18
- meta(name="msvalidate.01" content=msValidate)
19
- if googleValid
20
- meta(name="google-site-verification" content=googleValid)
21
- if yandexValid
22
- meta(name="yandex-verification" content=yandexValid)
23
- if baiduValid
24
- meta(name="baidu-site-verification" content=baiduValid)
25
- if noBaiduT
26
- meta(http-equiv="Cache-Control" content="no-transform")
27
- meta(http-equiv="Cache-Control" content="no-siteapp")
28
-
29
- != feed_tag('rss.xml')
30
- != feed_tag('atom.xml')
31
- link(rel="alternate" type="application/json" title=siteTitle href=feedLink)
32
- != _vendor_font()
33
- if theme.custom.enable
34
- != _local_fonts()
35
- != _css('app.css')
36
- - var debugVue = theme?.experiments?.debug
37
- if debugVue
38
- script(src="https://cdn.staticfile.org/vue/3.2.45/vue.global.js")
39
- else
40
- script(src="https://cdn.staticfile.org/vue/3.2.45/vue.global.prod.js")
41
- include pwa.pug
42
- if twikooLink && !wl
43
- != _css("twikoo.css")
44
- script(src=twikooLink)
45
- else if wl
46
- link(rel="stylesheet" href="https://unpkg.com/@waline/client@v2/dist/waline.css")
47
- script(nomodule src="https://unpkg.com/@waline/client@v2/dist/waline.js")
48
- if theme.qweather.enable
49
- style.
50
- img[data-v-7d48daab] {
51
- max-width: 2em !important;
52
- }
53
-
54
- if cssInjects
55
- != css(cssInjects)
56
-
57
- if jsInjects
58
- != js(jsInjects)
1
+ - var msValidate = theme?.seo?.bing,googleValid = theme?.seo?.google
2
+ - var yandexValid = theme?.seo?.yandex,baiduValid = theme?.seo?.baidu
3
+ - var siteTitle = config.title,noBaiduT = theme?.seo?.disable_baidu_transformation
4
+ - var feedLink = full_url_for("/feed.json")
5
+ - var twikooLink = theme?.twikoo?.link;var jsInjects = theme?.inject?.head?.js,cssInjects = theme?.inject?.head?.css
6
+ - var wl = theme.waline.enable,gt=theme?.gitalk?.enable
7
+ meta(charset="UTF-8")
8
+ meta(name="viewport" content="width=device-width,initial-scale=1,maximum-scale=2")
9
+ meta(name="theme-color" content="#222")
10
+
11
+ meta(http-equiv="X-UA-COMPATIBLE" content="IE=edge,chrome=1")
12
+ meta(name="renderer" content="webkit")
13
+ link(rel="icon" type="image/ico" sizes="32x32" href=url_for(theme.statics + theme.assets + theme.icon.favicon))
14
+ if theme.icon.apple_touch_icon
15
+ link(rel="apple-touch-icon" sizes="180x180" href=url_for(theme.statics + theme.assets + theme.icon.apple_touch_icon))
16
+
17
+ if msValidate
18
+ meta(name="msvalidate.01" content=msValidate)
19
+ if googleValid
20
+ meta(name="google-site-verification" content=googleValid)
21
+ if yandexValid
22
+ meta(name="yandex-verification" content=yandexValid)
23
+ if baiduValid
24
+ meta(name="baidu-site-verification" content=baiduValid)
25
+ if noBaiduT
26
+ meta(http-equiv="Cache-Control" content="no-transform")
27
+ meta(http-equiv="Cache-Control" content="no-siteapp")
28
+
29
+ != feed_tag('rss.xml')
30
+ != feed_tag('atom.xml')
31
+ link(rel="alternate" type="application/json" title=siteTitle href=feedLink)
32
+ - var fontConfig = theme?.font?.loadFromGoogle
33
+ if fontConfig
34
+ != _vendor_font()
35
+ != _css('app.css')
36
+ - var debugVue = theme?.experiments?.debug
37
+ if debugVue
38
+ script(src="https://cdn.staticfile.org/vue/3.2.45/vue.global.js")
39
+ else
40
+ script(src="https://cdn.staticfile.org/vue/3.2.45/vue.global.prod.js")
41
+ include pwa.pug
42
+ if twikooLink
43
+ != _css("twikoo.css")
44
+ script(src=twikooLink)
45
+ else if wl
46
+ link(rel="stylesheet" href="https://unpkg.com/@waline/client@v2/dist/waline.css")
47
+ else if gt
48
+ link(rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css")
49
+ script(src="https://unpkg.com/gitalk/dist/gitalk.min.js")
50
+
51
+
@@ -1,17 +1,17 @@
1
- - var keywords='',tmp=page?.tags?.toArray()
2
- if tmp
3
- each tag,index in tmp
4
- - keywords += tag.name
5
- - index++
6
- - if (index < tmp.length) keywords += ','
7
- if page.keywords
8
- meta(name="keywords" content=page.keywords)
9
- else if page.tags && page.tags.length
10
- meta(name="keywords" content=keywords)
11
- else if config.keywords
12
- meta(name="keywords" content=config.keywords)
13
-
14
- != canonical()
15
-
16
- if theme.open_graph
17
- != open_graph(theme.open_graph)
1
+ - var keywords='',tmp=page?.tags?.toArray()
2
+ if tmp
3
+ each tag,index in tmp
4
+ - keywords += tag.name
5
+ - index++
6
+ - if (index < tmp.length) keywords += ','
7
+ if page.keywords
8
+ meta(name="keywords" content=page.keywords)
9
+ else if page.tags && page.tags.length
10
+ meta(name="keywords" content=keywords)
11
+ else if config.keywords
12
+ meta(name="keywords" content=config.keywords)
13
+
14
+ != canonical()
15
+
16
+ if theme.open_graph
17
+ != open_graph(theme.open_graph)
@@ -1,18 +1,18 @@
1
- //- https://blog.cyfan.top/p/c0af86bb.html#%E5%AE%89%E8%A3%85-Install
2
- - var timeNow = new Date().getTime()
3
- if theme.pwa.enable
4
- - var sworker = theme.pwa.serviceworker
5
- script(data-pjax async).
6
- if ('serviceWorker' in navigator) {
7
- navigator.serviceWorker.register("/#{sworker}?time=#{timeNow}").then(async (reg) => {
8
- if (window.localStorage.getItem('install') !== 'true') {
9
- window.localStorage.setItem('install', 'true');
10
- setTimeout(() => {
11
- window.location.reload()
12
- }, 500)
13
- }
14
- }).catch(err => {
15
- console.log(err)
16
- });
17
- }
18
- link(rel="manifest" href=`/${theme.pwa.manifest}`)
1
+ //- https://blog.cyfan.top/p/c0af86bb.html#%E5%AE%89%E8%A3%85-Install
2
+ - var timeNow = new Date().getTime()
3
+ if theme.pwa.enable
4
+ - var sworker = theme.pwa.serviceworker
5
+ script(data-pjax async).
6
+ if ('serviceWorker' in navigator) {
7
+ navigator.serviceWorker.register("/#{sworker}?time=#{timeNow}").then(async (reg) => {
8
+ if (window.localStorage.getItem('install') !== 'true') {
9
+ window.localStorage.setItem('install', 'true');
10
+ setTimeout(() => {
11
+ window.location.reload()
12
+ }, 500)
13
+ }
14
+ }).catch(err => {
15
+ console.log(err)
16
+ });
17
+ }
18
+ link(rel="manifest" href=`/${theme.pwa.manifest}`)
@@ -1,20 +1,18 @@
1
- nav(id="nav")
2
- div(class="inner")
3
- div(class="toggle")
4
- div(class="lines" aria-label!=__('accessibility.nav_toggle'))
5
- span(class="line")
6
- span(class="line")
7
- span(class="line")
8
- ul(class="menu")
9
- li(class="item title")
10
- a(href=config.root rel="start")
11
- != alternate || title
12
- ul(class="right" id="rightNav")
13
- li(class="item theme" @click="changeThemeByBtn")
14
- i(class="ic" :class="{'i-sun': !themeStatus,'i-moon': themeStatus}")
15
- li(class="item search")
16
- i(class="ic i-search")
17
- != shokax_inject('rightNav')
18
- li(class="item weather")
19
- div(id="he-plugin-simple")
20
-
1
+ nav(id="nav")
2
+ div(class="inner")
3
+ div(class="toggle")
4
+ div(class="lines" aria-label!=__('accessibility.nav_toggle'))
5
+ span(class="line")
6
+ span(class="line")
7
+ span(class="line")
8
+ ul(class="menu")
9
+ li(class="item title")
10
+ a(href=config.root rel="start")
11
+ != alternate || title
12
+ ul(class="right" id="rightNav")
13
+ li(class="item theme" @click="changeThemeByBtn")
14
+ i(class="ic" :class="{'i-sun': !themeStatus,'i-moon': themeStatus}")
15
+ li(class="item search")
16
+ i(class="ic i-search")
17
+ != shokax_inject('rightNav')
18
+
@@ -1,153 +1,143 @@
1
- include ../_mixin/breadcrumb.pug
2
- include ../_mixin/sidebar.pug
3
- include ../_mixin/widgets.pug
4
-
5
- doctype html
6
- html(lang=page.language?page.language:config.language, style=theme.grayMode ? 'filter: grayscale(1);':'' )
7
- head
8
- != partial('_partials/head/head.pug', {}, {cache: true})
9
- != partial('_partials/head/head_com.pug')
10
- != shokax_inject('head')
11
- title
12
- block title
13
- != `${alternate?alternate + " = ":""}${title}${subtitle?" = "+subtitle:""}`
14
- body(itemscope itemtype="http://schema.org/WebPage")
15
- != partial('_partials/loading.pug', {}, {cache: true})
16
- div(id="container")
17
- header(id="header" itemscope itemtype="http://schema.org/WPHeader")
18
- div(class="inner")
19
- div(id="brand")
20
- div(class="pjax")
21
- block header
22
- a(href=config.root class="logo" rel="start")
23
- if alternate
24
- p(class="artboard")
25
- != alternate
26
- h1(itemprop="name headline" class="title")
27
- != title
28
- if subtitle
29
- p(class="meta" itemprop="description")
30
- != `= ${subtitle} =`
31
-
32
- != partial('_partials/header.pug', {}, {cache: true})
33
- div(id="imgs" class="pjax")
34
- if theme.experiments.gradient
35
- //- cover不可用时用Bing随机图片代替
36
- - var coverImage = theme?.experiments?.gradientCover || "https://7ed.net/bing/api"
37
- img(src=coverImage)
38
- else
39
- - var covers = _cover(page, 6)
40
- if covers.length === 6
41
- ul
42
- each image in covers
43
- li(class="item" data-background-image=image)
44
- else
45
- img(src=covers)
46
- div(id="waves")
47
- svg(class="waves" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 24 150 28" preserveAspectRatio="none" shape-rendering="auto")
48
- defs
49
- path(id="gentle-wave" d="M-160 44c30 0 58-18 88-18s 58 18 88 18 58-18 88-18 58 18 88 18 v44h-352z")
50
- g(class="parallax")
51
- use(xlink:href="#gentle-wave" x="48" y="0")
52
- use(xlink:href="#gentle-wave" x="48" y="3")
53
- use(xlink:href="#gentle-wave" x="48" y="5")
54
- use(xlink:href="#gentle-wave" x="48" y="7")
55
- main
56
- div(class="inner")
57
- div(id="main" class="pjax")
58
- block content
59
- div(id="sidebar")
60
- block sidebar
61
- +sidebarRender
62
- div(class="dimmer")
63
- footer(id="footer")
64
- div(class="inner")
65
- div(class="widgets")
66
- +WRender
67
- != partial('_partials/footer.pug', {}, {cache: true})
68
- - var ccIcon = '<i class="ic i-creative-commons"></i>'
69
- - var ccText = theme.creative_commons.license.toUpperCase()
70
- <script data-config type="text/javascript" >
71
- | var LOCAL = {
72
- != `path: \"${_permapath(page.path)}\",`
73
- | favicon: {
74
- != `show: \'${__('favicon.show')}\',`
75
- != `hide: \'${__('favicon.hide')}\'`
76
- | },
77
- | search: {
78
- != `placeholder: \"${__('search.placeholder')}\",`
79
- != `empty: \"${__('search.empty')}\",`
80
- != `stats: \"${__('search.stats')}\"`
81
- | },
82
- if theme.widgets.recent_comments || page.comment !== false
83
- != `valine: ${page.valine ? _safedump(page.valine) : 'true'},`
84
- if page.chart
85
- | chart: true,
86
- if page.math
87
- | copy_tex: true,
88
- | katex: true,
89
- if page.mermaid
90
- | mermaid: true,
91
- if page.audio
92
- != `audio: ${_safedump(page.audio)},`
93
- if page.audio === false
94
- | audio: {},
95
- if page.fancybox !== false
96
- | fancybox: true,
97
- if page.copyright !== false
98
- if page.copyright === true
99
- | nocopy: true,
100
- != `copyright: \'${__("tips.nocopy")}\',`
101
- else
102
- != `copyright: \'${__("tips.copyright", ccIcon + ccText)}\',`
103
- if page.outime === false
104
- | outime: false,
105
- else
106
- | outime: true,template: `!{ __('outime.template') }`,
107
- if page.quiz
108
- | quiz: {
109
- != `choice: \'${__('quiz.choice')}\',`
110
- != `multiple: \'${__('quiz.multiple')}\',`
111
- != `true_false: \'${__('quiz.true_false')}\',`
112
- != `essay: \'${__('quiz.essay')}\',`
113
- != `gap_fill: \'${__('quiz.gap_fill')}\',`
114
- != `mistake: \'${__('quiz.mistake')}\'`
115
- | },
116
- | ignores : [
117
- | function(uri) {
118
- | return uri.includes('#');
119
- | },
120
- | function(uri) {
121
- | return new RegExp(LOCAL.path+"$").test(uri);
122
- | }
123
- if theme.quicklink.ignores
124
- | ,
125
- != _safedump(theme.quicklink.ignores)
126
- | ]
127
- | };
128
- </script>
129
- script(src="https://polyfill.alicdn.com/polyfill.min.js")
130
- if theme.advVendors.enable
131
- each i in _list_vendor_js()
132
- != _adv_vendor_js(i)
133
- else
134
- != _vendor_js()
135
- != _js('app.js')
136
- != partial('_partials/third-party/baidu-analytics.pug', {}, {cache: true})
137
- if theme.qweather.enable
138
- != partial('_partials/third-party/qweather.pug', {}, {cache: true})
139
- != partial('_partials/third-party/clarity.pug', {}, {cache: true})
140
- != _new_comments('twikoo')
141
-
142
-
143
- - var jsInjects = theme?.inject?.body?.js,cssInjects = theme?.inject?.body?.css
144
- if cssInjects
145
- != css(cssInjects)
146
-
147
- if jsInjects
148
- != js(jsInjects)
149
-
150
- != shokax_inject('bodyEnd')
151
-
152
-
153
-
1
+ include ../_mixin/breadcrumb.pug
2
+ include ../_mixin/sidebar.pug
3
+ include ../_mixin/widgets.pug
4
+
5
+ doctype html
6
+ html(lang=page.language?page.language:config.language, style=theme.grayMode ? 'filter: grayscale(1);':'' )
7
+ head
8
+ != partial('_partials/head/head.pug', {}, {cache: true})
9
+ != partial('_partials/head/head_com.pug')
10
+ != shokax_inject('head')
11
+ title
12
+ block title
13
+ != `${alternate?alternate + " = ":""}${title}${subtitle?" = "+subtitle:""}`
14
+ body(itemscope itemtype="http://schema.org/WebPage")
15
+ != partial('_partials/loading.pug', {}, {cache: true})
16
+ div(id="container")
17
+ header(id="header" itemscope itemtype="http://schema.org/WPHeader")
18
+ div(class="inner")
19
+ div(id="brand")
20
+ div(class="pjax")
21
+ block header
22
+ a(href=config.root class="logo" rel="start")
23
+ if alternate
24
+ p(class="artboard")
25
+ != alternate
26
+ h1(itemprop="name headline" class="title")
27
+ != title
28
+ if subtitle
29
+ p(class="meta" itemprop="description")
30
+ != `= ${subtitle} =`
31
+
32
+ != partial('_partials/header.pug', {}, {cache: true})
33
+ div(id="imgs" class="pjax")
34
+ if theme.experiments.gradient
35
+ //- cover不可用时用Bing随机图片代替
36
+ - var coverImage = theme?.experiments?.gradientCover || "https://7ed.net/bing/api"
37
+ img(src=coverImage)
38
+ else
39
+ - var covers = _cover(page, 6)
40
+ if covers.length === 6
41
+ ul
42
+ each image in covers
43
+ li(class="item" data-background-image=image)
44
+ else
45
+ img(src=covers)
46
+ div(id="waves")
47
+ svg(class="waves" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 24 150 28" preserveAspectRatio="none" shape-rendering="auto")
48
+ defs
49
+ path(id="gentle-wave" d="M-160 44c30 0 58-18 88-18s 58 18 88 18 58-18 88-18 58 18 88 18 v44h-352z")
50
+ g(class="parallax")
51
+ use(xlink:href="#gentle-wave" x="48" y="0")
52
+ use(xlink:href="#gentle-wave" x="48" y="3")
53
+ use(xlink:href="#gentle-wave" x="48" y="5")
54
+ use(xlink:href="#gentle-wave" x="48" y="7")
55
+ main
56
+ div(class="inner")
57
+ div(id="main" class="pjax")
58
+ block content
59
+ div(id="sidebar")
60
+ block sidebar
61
+ +sidebarRender
62
+ div(class="dimmer")
63
+ footer(id="footer")
64
+ div(class="inner")
65
+ div(class="widgets")
66
+ +WRender
67
+ != partial('_partials/footer.pug', {}, {cache: true})
68
+ - var ccIcon = '<i class="ic i-creative-commons"></i>'
69
+ - var ccText = theme.creative_commons.license.toUpperCase()
70
+ <script data-config type="text/javascript" >
71
+ | var LOCAL = {
72
+ != `path: \"${_permapath(page.path)}\",`
73
+ | favicon: {
74
+ != `show: \'${__('favicon.show')}\',`
75
+ != `hide: \'${__('favicon.hide')}\'`
76
+ | },
77
+ | search: {
78
+ != `placeholder: \"${__('search.placeholder')}\",`
79
+ != `empty: \"${__('search.empty')}\",`
80
+ != `stats: \"${__('search.stats')}\"`
81
+ | },
82
+ if theme.widgets.recent_comments || page.comment !== false
83
+ != `valine: ${page.valine ? _safedump(page.valine) : 'true'},`
84
+ if page.chart
85
+ | chart: true,
86
+ if page.math
87
+ | copy_tex: true,
88
+ | katex: true,
89
+ if page.mermaid
90
+ | mermaid: true,
91
+ if page.audio
92
+ != `audio: ${_safedump(page.audio)},`
93
+ if page.audio === false
94
+ | audio: {},
95
+ if page.fancybox !== false
96
+ | fancybox: true,
97
+ if page.copyright !== false
98
+ if page.copyright === true
99
+ | nocopy: true,
100
+ != `copyright: \'${__("tips.nocopy")}\',`
101
+ else
102
+ != `copyright: \'${__("tips.copyright", ccIcon + ccText)}\',`
103
+ if page.outime === false
104
+ | outime: false,
105
+ else
106
+ | outime: true,template: `!{ __('outime.template') }`,
107
+ if page.quiz
108
+ | quiz: {
109
+ != `choice: \'${__('quiz.choice')}\',`
110
+ != `multiple: \'${__('quiz.multiple')}\',`
111
+ != `true_false: \'${__('quiz.true_false')}\',`
112
+ != `essay: \'${__('quiz.essay')}\',`
113
+ != `gap_fill: \'${__('quiz.gap_fill')}\',`
114
+ != `mistake: \'${__('quiz.mistake')}\'`
115
+ | },
116
+ | ignores : [
117
+ | function(uri) {
118
+ | return uri.includes('#');
119
+ | },
120
+ | function(uri) {
121
+ | return new RegExp(LOCAL.path+"$").test(uri);
122
+ | }
123
+ if theme.quicklink.ignores
124
+ | ,
125
+ != _safedump(theme.quicklink.ignores)
126
+ | ]
127
+ | };
128
+ </script>
129
+ script(src="https://polyfill.alicdn.com/polyfill.min.js")
130
+ if theme.advVendors.enable
131
+ each i in _list_vendor_js()
132
+ != _adv_vendor_js(i)
133
+ else
134
+ != _vendor_js()
135
+ != _js('app.js')
136
+ != partial('_partials/third-party/baidu-analytics.pug', {}, {cache: true})
137
+ != partial('_partials/third-party/clarity.pug', {}, {cache: true})
138
+ != _new_comments('twikoo')
139
+
140
+ != shokax_inject('bodyEnd')
141
+
142
+
143
+
@@ -1,13 +1,13 @@
1
- div(id="loading")
2
- div(class="cat")
3
- div(class="body")
4
- div(class="head")
5
- div(class="face")
6
- div(class="foot")
7
- div(class="tummy-end")
8
- div(class="bottom")
9
- div(class="legs left")
10
- div(class="legs right")
11
- div(class="paw")
12
- div(class="hands left")
13
- div(class="hands right")
1
+ div(id="loading")
2
+ div(class="cat")
3
+ div(class="body")
4
+ div(class="head")
5
+ div(class="face")
6
+ div(class="foot")
7
+ div(class="tummy-end")
8
+ div(class="bottom")
9
+ div(class="legs left")
10
+ div(class="legs right")
11
+ div(class="paw")
12
+ div(class="hands left")
13
+ div(class="hands right")
@@ -1,4 +1,4 @@
1
- if page.prev || page.next
2
- nav(class="pagination")
3
- div(class="inner")
4
- != paginator({prev_text: '<i class="ic i-angle-left" aria-label="' + __('accessibility.prev_page') + '"></i>',next_text: '<i class="ic i-angle-right" aria-label="' + __('accessibility.next_page') + '"></i>',mid_size : 1,escape : false})
1
+ if page.prev || page.next
2
+ nav(class="pagination")
3
+ div(class="inner")
4
+ != paginator({prev_text: '<i class="ic i-angle-left" aria-label="' + __('accessibility.prev_page') + '"></i>',next_text: '<i class="ic i-angle-right" aria-label="' + __('accessibility.next_page') + '"></i>',mid_size : 1,escape : false})
@@ -1,20 +1,20 @@
1
- if page.copyright !== false
2
- - var ccIcon = '<i class="ic i-creative-commons"><em>(CC)</em></i>'
3
- - var ccText = theme.creative_commons.license | upper
4
- div(id="copyright")
5
- ul
6
- li(class="author")
7
- strong
8
- != __('post.copyright.author') + __('symbol.colon')
9
- != page.author || author
10
- i(class="ic i-at")
11
- em @
12
- != title
13
- li(class="link")
14
- strong
15
- != __('post.copyright.link') + __('symbol.colon')
16
- != _url(page.permalink, page.permalink, {title: page.title})
17
- li(class="license")
18
- strong
19
- != __('post.copyright.license_title') + __('symbol.colon')
20
- != page.copyright !== true ? __('post.copyright.license_content', _url(ccURL, ccIcon + ccText)) : __("post.copyright.nocopy")
1
+ if page.copyright !== false
2
+ - var ccIcon = '<i class="ic i-creative-commons"><em>(CC)</em></i>'
3
+ - var ccText = theme.creative_commons.license.toUpperCase()
4
+ div(id="copyright")
5
+ ul
6
+ li(class="author")
7
+ strong
8
+ != __('post.copyright.author') + __('symbol.colon')
9
+ != page.author || author
10
+ i(class="ic i-at")
11
+ em @
12
+ != title
13
+ li(class="link")
14
+ strong
15
+ != __('post.copyright.link') + __('symbol.colon')
16
+ != _url(page.permalink, page.permalink, {title: page.title})
17
+ li(class="license")
18
+ strong
19
+ != __('post.copyright.license_title') + __('symbol.colon')
20
+ != page.copyright !== true ? __('post.copyright.license_content', _url(ccURL, ccIcon + ccText)) : __("post.copyright.nocopy")
@@ -1,14 +1,14 @@
1
- div(class="meta")
2
- if date(post.date) != date(post.updated) || time(post.date) != time(post.updated)
3
- span(class="icon")
4
- i(class="ic i-eye")
5
- span 此文章已被阅读次数:
6
- span(id="twikoo_visitors" class="waline-pageview-count" data-path=post.path) 正在加载...
7
- span(class="item")
8
- span(class="icon")
9
- i(class="ic i-calendar-check")
10
- span(class="text")
11
- != __('post.edited')
12
- time(title=__('post.modified') + __('symbol.colon') + full_date(post.updated) itemprop="dateModified" datetime=moment(post.updated).format())
13
- != date(post.updated)
14
- != shokax_inject('postMeta')
1
+ div(class="meta")
2
+ if date(post.date) != date(post.updated) || time(post.date) != time(post.updated)
3
+ span(class="icon")
4
+ i(class="ic i-eye")
5
+ span 此文章已被阅读次数:
6
+ span(id="twikoo_visitors" class="waline-pageview-count" data-path=post.path) 正在加载...
7
+ span(class="item")
8
+ span(class="icon")
9
+ i(class="ic i-calendar-check")
10
+ span(class="text")
11
+ != __('post.edited')
12
+ time(title=__('post.modified') + __('symbol.colon') + full_date(post.updated) itemprop="dateModified" datetime=moment(post.updated).format())
13
+ != date(post.updated)
14
+ != shokax_inject('postMeta')