mirror of
https://github.com/amehime/hexo-theme-shoka.git
synced 2026-04-05 02:16:56 +08:00
update
This commit is contained in:
163
_config.yml
163
_config.yml
@@ -1,9 +1,14 @@
|
||||
# Alternate site name
|
||||
alternate: Yume Shoka
|
||||
|
||||
open_graph:
|
||||
#twitter_id:
|
||||
#google_plus:
|
||||
#fb_admins:
|
||||
#fb_app_id:
|
||||
|
||||
# Assets
|
||||
statics: / #//cdn.jsdelivr.net/gh/username/RepositoryName@latest/
|
||||
assets: assets
|
||||
css: css
|
||||
js: js
|
||||
images: images
|
||||
@@ -15,11 +20,28 @@ favicon:
|
||||
#android_manifest: /manifest.json
|
||||
#ms_browserconfig: /browserconfig.xml
|
||||
|
||||
open_graph:
|
||||
#twitter_id:
|
||||
#google_plus:
|
||||
#fb_admins:
|
||||
#fb_app_id:
|
||||
# Dark Mode
|
||||
# By default, the page judges whether to turn on the dark mode according to the device settings or user selection
|
||||
# if `true`, the page will be displayed directly as Dark Mode, unless the user makes another choice
|
||||
darkmode: false
|
||||
|
||||
# By default the page will automatically scroll to the last viewed position
|
||||
# if `false`, automatic positioning will be turned off
|
||||
auto_scroll: true
|
||||
|
||||
# Whether to show the loading cat
|
||||
loader:
|
||||
start: true # When entering the page
|
||||
switch: true # When switching to another page
|
||||
|
||||
# click with Firework
|
||||
fireworks:
|
||||
enable: true
|
||||
color:
|
||||
# - "rgba(255,182,185,.9)"
|
||||
# - "rgba(250,227,217,.9)"
|
||||
# - "rgba(187,222,214,.9)"
|
||||
# - "rgba(138,198,209,.9)"
|
||||
|
||||
font:
|
||||
enable: true
|
||||
@@ -62,26 +84,9 @@ font:
|
||||
external: true
|
||||
family: Inconsolata
|
||||
|
||||
# Dark Mode
|
||||
# By default, the page judges whether to turn on the dark mode according to the device settings or user selection
|
||||
# if `true`, the page will be displayed directly as Dark Mode, unless the user makes another choice
|
||||
darkmode: false
|
||||
|
||||
# By default the page will automatically scroll to the last viewed position
|
||||
# if `false`, automatic positioning will be turned off
|
||||
auto_scroll: true
|
||||
|
||||
# Whether to show the loading cat
|
||||
loader:
|
||||
start: true # When entering the page
|
||||
switch: true # When switching to another page
|
||||
|
||||
sidebar:
|
||||
# Sidebar Position.
|
||||
position: left
|
||||
# position: right
|
||||
# Replace the default avatar image and set the url here.
|
||||
avatar: avatar.jpg
|
||||
# project of https://www.iconfont.cn/
|
||||
# //at.alicdn.com/t/font_1832207_c8i9n1ulxlt.css => 1832207_c8i9n1ulxlt
|
||||
iconfont: "1832207_c8i9n1ulxlt"
|
||||
|
||||
menu:
|
||||
home: / || home
|
||||
@@ -115,18 +120,18 @@ social:
|
||||
#skype: skype:yourname?call|chat || skype
|
||||
#douban: https://www.douban.com/people/yourname/ || douban
|
||||
|
||||
post:
|
||||
# Dependencies: https://github.com/theme-next/hexo-symbols-count-time
|
||||
count: false
|
||||
sidebar:
|
||||
# Sidebar Position.
|
||||
position: left
|
||||
# position: right
|
||||
# Replace the default avatar image and set the url here.
|
||||
avatar: avatar.jpg
|
||||
|
||||
# TagCloud settings for tags page.
|
||||
tagcloud:
|
||||
# All values below are same as default, change them by yourself.
|
||||
min: 16 # Minimun font size in px
|
||||
max: 22 # Maxium font size in px
|
||||
start: "#72cecf" # Start color (hex, rgba, hsla or color keywords)
|
||||
end: "#ffbac3" # End color (hex, rgba, hsla or color keywords)
|
||||
amount: 200 # Amount of tags, change it if you have more than 200 tags
|
||||
widgets:
|
||||
# if true, will show random posts
|
||||
random_posts: true
|
||||
# if true, will show recent comments
|
||||
recent_comments: true
|
||||
|
||||
footer:
|
||||
# Specify the date when the site was setup. If not defined, current year will be used.
|
||||
@@ -139,20 +144,9 @@ footer:
|
||||
count: false
|
||||
powered: true
|
||||
|
||||
widgets:
|
||||
# if true, will show random posts
|
||||
random_posts: true
|
||||
# if true, will show recent comments
|
||||
recent_comments: true
|
||||
|
||||
# Creative Commons 4.0 International License.
|
||||
# See: https://creativecommons.org/share-your-work/licensing-types-examples
|
||||
# Available values of license: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | zero
|
||||
# You can set a language value if you prefer a translated version of CC license, e.g. deed.zh
|
||||
# CC licenses are available in 39 languages, you can find the specific and correct abbreviation you need on https://creativecommons.org
|
||||
creative_commons:
|
||||
license: by-nc-sa
|
||||
language: deed.zh
|
||||
post:
|
||||
# Dependencies: https://github.com/theme-next/hexo-symbols-count-time
|
||||
count: false
|
||||
|
||||
# Reward (Donate)
|
||||
reward:
|
||||
@@ -163,32 +157,28 @@ reward:
|
||||
alipay: /alipay.png
|
||||
paypal: /paypal.png
|
||||
|
||||
# TagCloud settings for tags page.
|
||||
tagcloud:
|
||||
# All values below are same as default, change them by yourself.
|
||||
min: 16 # Minimun font size in px
|
||||
max: 22 # Maxium font size in px
|
||||
start: "#72cecf" # Start color (hex, rgba, hsla or color keywords)
|
||||
end: "#ffbac3" # End color (hex, rgba, hsla or color keywords)
|
||||
amount: 200 # Amount of tags, change it if you have more than 200 tags
|
||||
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Third Party Plugins & Services Settings
|
||||
# ---------------------------------------------------------------
|
||||
|
||||
# Dependencies: https://github.com/amehime/hexo-renderer-multi-markdown-it
|
||||
pangu: false
|
||||
|
||||
# bgm
|
||||
audio:
|
||||
# - title: 列表1
|
||||
# list:
|
||||
# - https://music.163.com/#/playlist?id=2943811283
|
||||
# - https://music.163.com/#/playlist?id=2297706586
|
||||
# - title: 列表2
|
||||
# list:
|
||||
# - https://music.163.com/#/playlist?id=2031842656
|
||||
|
||||
# random image api
|
||||
image_server: # "https://acg.xydwz.cn/api/api.php"
|
||||
|
||||
# Algolia Search
|
||||
# For more information: https://www.algolia.com
|
||||
search:
|
||||
hits:
|
||||
per_page: 10
|
||||
# Creative Commons 4.0 International License.
|
||||
# See: https://creativecommons.org/share-your-work/licensing-types-examples
|
||||
# Available values of license: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | zero
|
||||
# You can set a language value if you prefer a translated version of CC license, e.g. deed.zh
|
||||
# CC licenses are available in 39 languages, you can find the specific and correct abbreviation you need on https://creativecommons.org
|
||||
creative_commons:
|
||||
license: by-nc-sa
|
||||
language: deed.zh
|
||||
|
||||
# Comments
|
||||
# Valine
|
||||
@@ -223,14 +213,27 @@ valine:
|
||||
investor:
|
||||
# - hash of investor1@email.com
|
||||
|
||||
# click with Firework
|
||||
fireworks:
|
||||
enable: true
|
||||
color:
|
||||
# - "rgba(255,182,185,.9)"
|
||||
# - "rgba(250,227,217,.9)"
|
||||
# - "rgba(187,222,214,.9)"
|
||||
# - "rgba(138,198,209,.9)"
|
||||
# bgm
|
||||
audio:
|
||||
# - title: 列表1
|
||||
# list:
|
||||
# - https://music.163.com/#/playlist?id=2943811283
|
||||
# - https://music.163.com/#/playlist?id=2297706586
|
||||
# - title: 列表2
|
||||
# list:
|
||||
# - https://music.163.com/#/playlist?id=2031842656
|
||||
|
||||
# random image api
|
||||
image_server: # "https://acg.xydwz.cn/api/api.php"
|
||||
|
||||
# Algolia Search
|
||||
# For more information: https://www.algolia.com
|
||||
search:
|
||||
hits:
|
||||
per_page: 10
|
||||
|
||||
# Dependencies: https://github.com/amehime/hexo-renderer-multi-markdown-it
|
||||
pangu: false
|
||||
|
||||
# Quicklink Support
|
||||
# For more information: https://github.com/GoogleChromeLabs/quicklink
|
||||
|
||||
@@ -3,13 +3,6 @@ alternate: Yume Shoka
|
||||
# Assets
|
||||
statics: / #//cdn.jsdelivr.net/gh/amehime/shoka@latest/
|
||||
|
||||
# /images/***
|
||||
favicon:
|
||||
apple_touch_icon: /apple-touch-icon.png
|
||||
#safari_pinned_tab: /logo.svg
|
||||
#android_manifest: /manifest.json
|
||||
#ms_browserconfig: /browserconfig.xml
|
||||
|
||||
open_graph:
|
||||
#twitter_id:
|
||||
#google_plus:
|
||||
@@ -46,56 +39,19 @@ social:
|
||||
#skype: skype:yourname?call|chat || skype
|
||||
#douban: https://www.douban.com/people/yourname/ || douban
|
||||
|
||||
post:
|
||||
count: true
|
||||
|
||||
# TagCloud settings for tags page.
|
||||
tagcloud:
|
||||
# All values below are same as default, change them by yourself.
|
||||
min: 16 # Minimun font size in px
|
||||
max: 22 # Maxium font size in px
|
||||
start: "#72cecf" # Start color (hex, rgba, hsla or color keywords)
|
||||
end: "#ffbac3" # End color (hex, rgba, hsla or color keywords)
|
||||
amount: 200 # Amount of tags, change it if you have more than 200 tags
|
||||
|
||||
footer:
|
||||
# Specify the date when the site was setup. If not defined, current year will be used.
|
||||
since: 2010
|
||||
count: true
|
||||
|
||||
# Creative Commons 4.0 International License.
|
||||
# See: https://creativecommons.org/share-your-work/licensing-types-examples
|
||||
# Available values of license: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | zero
|
||||
# You can set a language value if you prefer a translated version of CC license, e.g. deed.zh
|
||||
# CC licenses are available in 39 languages, you can find the specific and correct abbreviation you need on https://creativecommons.org
|
||||
creative_commons:
|
||||
license: by-nc-sa
|
||||
language: deed.zh
|
||||
post:
|
||||
count: true
|
||||
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Third Party Plugins & Services Settings
|
||||
# ---------------------------------------------------------------
|
||||
|
||||
# Dependencies: https://github.com/theme-next/hexo-symbols-count-time
|
||||
pangu: true
|
||||
|
||||
# bgm
|
||||
audio:
|
||||
- title: 列表1
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2943811283
|
||||
- https://music.163.com/#/playlist?id=2297706586
|
||||
- title: 列表2
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2031842656
|
||||
|
||||
# Algolia Search
|
||||
# For more information: https://www.algolia.com
|
||||
search:
|
||||
hits:
|
||||
per_page: 10
|
||||
|
||||
# Comments
|
||||
# Valine
|
||||
# For more information: https://valine.js.org, https://github.com/xCss/Valine
|
||||
@@ -111,6 +67,19 @@ valine:
|
||||
friend:
|
||||
- deea5a8d259d17182a53be1772e4c182
|
||||
|
||||
# bgm
|
||||
audio:
|
||||
- title: 列表1
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2943811283
|
||||
- https://music.163.com/#/playlist?id=2297706586
|
||||
- title: 列表2
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2031842656
|
||||
|
||||
# Dependencies: https://github.com/amehime/hexo-renderer-multi-markdown-it
|
||||
pangu: true
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# analytics & SEO Settings
|
||||
# ---------------------------------------------------------------
|
||||
|
||||
202
example/source/_data/colors.styl
Normal file
202
example/source/_data/colors.styl
Normal file
@@ -0,0 +1,202 @@
|
||||
:root {
|
||||
--grey-0: #fff;
|
||||
--grey-1: #fdfdfd;
|
||||
--grey-2: #f7f7f7;
|
||||
--grey-3: #eff2f3;
|
||||
--grey-4: #ccc;
|
||||
--grey-5: #999;
|
||||
--grey-6: #666;
|
||||
--grey-7: #333;
|
||||
--grey-8: #222;
|
||||
--grey-9: #000;
|
||||
|
||||
--grey-1-a0: alpha(#fdfdfd, 0);
|
||||
--grey-1-a7: alpha(#fdfdfd, .7);
|
||||
--grey-1-a5: alpha(#fdfdfd, .5);
|
||||
--grey-1-a3: alpha(#fdfdfd, .3);
|
||||
--grey-9-a1: alpha(#000, .1);
|
||||
--grey-9-a5: alpha(#000, .5);
|
||||
--grey-2-a0: alpha(#f7f7f7, 0);
|
||||
|
||||
--color-pink-light: #ffe6fa;
|
||||
--color-cyan-light: #e3fdf5;
|
||||
|
||||
--color-red: #e9546b;
|
||||
--color-pink: #ed6ea0;
|
||||
--color-orange: #ec8c69;
|
||||
--color-yellow: #eab700;
|
||||
--color-green: #0a7426;
|
||||
--color-aqua: #3e999f;
|
||||
--color-blue: #38a1db;
|
||||
--color-purple: #9d5b8b;
|
||||
--color-grey: #869194;
|
||||
|
||||
--color-red-a1: alpha(#e9546b, .1);
|
||||
--color-red-a3: alpha(#e9546b, .3);
|
||||
--color-pink-a3: alpha(#ed6ea0, .3);
|
||||
--color-pink-light-a3: alpha(#ffe6fa, .3);
|
||||
--color-pink-light-a5: alpha(#ffe6fa, .5);
|
||||
--color-pink-light-a7: alpha(#ffe6fa, .7);
|
||||
|
||||
--body-bg-shadow: var(--grey-2);
|
||||
--box-bg-shadow: var(--grey-9-a1);
|
||||
--text-color: var(--grey-7);
|
||||
--header-text-color: var(--grey-0);
|
||||
--primary-color: var(--color-red);
|
||||
|
||||
}
|
||||
|
||||
.primary {
|
||||
--note-border: #cda0c7;
|
||||
--note-bg: #fdf8ff;
|
||||
--note-text: #8a51c0;
|
||||
--note-hover: #935aca;
|
||||
}
|
||||
|
||||
.info {
|
||||
--note-border: #8fa4dc;
|
||||
--note-bg: #f1f9ff;
|
||||
--note-text: #1d4974;
|
||||
--note-hover: #1d5fa0;
|
||||
}
|
||||
|
||||
.success {
|
||||
--note-border: #a3c293;
|
||||
--note-bg: #fcfff5;
|
||||
--note-text: #2c662d;
|
||||
--note-hover: #3b883c;
|
||||
}
|
||||
|
||||
.warning {
|
||||
--note-border: #c9ba9b;
|
||||
--note-bg: #fffbeb;
|
||||
--note-text: #947600;
|
||||
--note-hover: #ccb045;
|
||||
}
|
||||
|
||||
.danger {
|
||||
--note-border: #f4b3c1;
|
||||
--note-bg: #fff2f5;
|
||||
--note-text: #cc0f35;
|
||||
--note-hover: #f14668;
|
||||
}
|
||||
|
||||
[data-theme="dark"] {
|
||||
&:root {
|
||||
--grey-0: #222;
|
||||
--grey-1: #21252b;
|
||||
--grey-2: #363636;
|
||||
--grey-3: #444;
|
||||
--grey-4: #666;
|
||||
--grey-5: #aaa;
|
||||
--grey-6: #ccc;
|
||||
--grey-7: #ddd;
|
||||
--grey-8: #eee;
|
||||
--grey-9: #f7f7f7;
|
||||
|
||||
--grey-1-a7: alpha(#222, .7);
|
||||
--grey-1-a5: alpha(#222, .5);
|
||||
--grey-1-a3: alpha(#222, .3);
|
||||
--grey-1-a0: alpha(#222, 0);
|
||||
--grey-9-a1: alpha(#333, .1);
|
||||
--grey-2-a0: alpha(#363636, 0);
|
||||
|
||||
--color-pink-light: shade(#ffe6fa, 80%);
|
||||
--color-cyan-light: shade(#e3fdf5, 80%);
|
||||
|
||||
--color-red: alpha(lighten(#e9546b, 20%), .9);
|
||||
--color-pink: alpha(lighten(#ed6ea0, 20%), .8);
|
||||
--color-orange: alpha(lighten(#ec8c69, 20%), .8);
|
||||
--color-yellow: lighten(#eab700, 50%);
|
||||
--color-green: lighten(#316745, 50%);
|
||||
--color-aqua: lighten(#3e999f, 50%);
|
||||
--color-blue: lighten(#38a1db, 50%);
|
||||
--color-purple: lighten(#9d5b8b, 50%);
|
||||
--color-grey: lighten(#869194, 50%);
|
||||
|
||||
--body-bg-shadow: #000;
|
||||
--box-bg-shadow: #000;
|
||||
--text-color: var(--grey-5);
|
||||
--header-text-color: var(--grey-9);
|
||||
}
|
||||
|
||||
.primary {
|
||||
--note-border: alpha(shade(#cda0c7, 40%), .8);
|
||||
--note-bg: alpha(shade(#fdf8ff, 80%), .8);
|
||||
--note-text: alpha(lighten(#8a51c0, 20%), .8);
|
||||
--note-hover: alpha(shade(#935aca, 20%), .8);
|
||||
}
|
||||
|
||||
.info {
|
||||
--note-border: alpha(shade(#8fa4dc, 40%), .8);
|
||||
--note-bg: alpha(shade(#f1f9ff, 80%), .8);
|
||||
--note-text: alpha(lighten(#1d4974, 50%), .8);
|
||||
--note-hover: alpha(lighten(#1d5fa0, 20%), .8);
|
||||
}
|
||||
|
||||
.success {
|
||||
--note-border: alpha(shade(#a3c293, 40%), .8);
|
||||
--note-bg: alpha(shade(#fcfff5, 80%), .8);
|
||||
--note-text: alpha(lighten(#2c662d, 50%), .8);
|
||||
--note-hover: alpha(shade(#3b883c, 30%), .8);
|
||||
}
|
||||
|
||||
.warning {
|
||||
--note-border: alpha(shade(#c9ba9b, 40%), .8);
|
||||
--note-bg: alpha(shade(#fffbeb, 80%), .8);
|
||||
--note-text: alpha(lighten(#947600, 20%), .8);
|
||||
--note-hover: alpha(shade(#ccb045, 20%), .8);
|
||||
}
|
||||
|
||||
.danger {
|
||||
--note-border: alpha(shade(#f4b3c1, 40%), .8);
|
||||
--note-bg: alpha(shade(#fff2f5, 80%), .8);
|
||||
--note-text: alpha(lighten(#cc0f35, 20%), .8);
|
||||
--note-hover: alpha(shade(#f14668, 30%), .8);
|
||||
}
|
||||
|
||||
.sidebar .tab li,
|
||||
.overview .menu .item,
|
||||
.index.wrap .card .message .btn,
|
||||
img, [data-background-image] {
|
||||
the-transition();
|
||||
opacity: .75;
|
||||
|
||||
&:hover {
|
||||
opacity: .9;
|
||||
}
|
||||
}
|
||||
|
||||
#imgs::before {
|
||||
background-color: rgba(0, 0, 0, 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
.red {
|
||||
color: var(--color-red);
|
||||
}
|
||||
.pink {
|
||||
color: var(--color-pink);
|
||||
}
|
||||
.orange {
|
||||
color: var(--color-orange);
|
||||
}
|
||||
.yellow {
|
||||
color: var(--color-yellow);
|
||||
}
|
||||
.green {
|
||||
color: var(--color-green);
|
||||
}
|
||||
.aqua {
|
||||
color: var(--color-aqua);
|
||||
}
|
||||
.blue {
|
||||
color: var(--color-blue);
|
||||
}
|
||||
.purple {
|
||||
color: var(--color-purple);
|
||||
}
|
||||
.grey {
|
||||
color: var(--color-grey);
|
||||
}
|
||||
|
||||
1
example/source/_data/custom.styl
Normal file
1
example/source/_data/custom.styl
Normal file
@@ -0,0 +1 @@
|
||||
/* 一些自定义样式 */
|
||||
443
example/source/_data/iconfont.styl
Normal file
443
example/source/_data/iconfont.styl
Normal file
@@ -0,0 +1,443 @@
|
||||
.i-volume-off:before {
|
||||
content: "\e61e";
|
||||
}
|
||||
|
||||
.i-volume-on:before {
|
||||
content: "\e62c";
|
||||
}
|
||||
|
||||
.i-circle-play:before {
|
||||
content: "\e647";
|
||||
}
|
||||
|
||||
.i-forward:before {
|
||||
content: "\e648";
|
||||
}
|
||||
|
||||
.i-backward:before {
|
||||
content: "\e649";
|
||||
}
|
||||
|
||||
.i-circle-pause:before {
|
||||
content: "\e64a";
|
||||
}
|
||||
|
||||
.i-loop:before {
|
||||
content: "\e64b";
|
||||
}
|
||||
|
||||
.i-order:before {
|
||||
content: "\e64c";
|
||||
}
|
||||
|
||||
.i-random:before {
|
||||
content: "\e64d";
|
||||
}
|
||||
|
||||
.i-douban:before {
|
||||
content: "\e75f";
|
||||
}
|
||||
|
||||
.i-linux:before {
|
||||
content: "\f1e8";
|
||||
}
|
||||
|
||||
.i-opera:before {
|
||||
content: "\f205";
|
||||
}
|
||||
|
||||
.i-qq:before {
|
||||
content: "\f216";
|
||||
}
|
||||
|
||||
.i-safari:before {
|
||||
content: "\f229";
|
||||
}
|
||||
|
||||
.i-snapchat-ghost:before {
|
||||
content: "\f234";
|
||||
}
|
||||
|
||||
.i-weixin:before {
|
||||
content: "\f262";
|
||||
}
|
||||
|
||||
.i-windows:before {
|
||||
content: "\f266";
|
||||
}
|
||||
|
||||
.i-stars:before {
|
||||
content: "\e8c4";
|
||||
}
|
||||
|
||||
.i-apple:before {
|
||||
content: "\e600";
|
||||
}
|
||||
|
||||
.i-blackberry:before {
|
||||
content: "\e601";
|
||||
}
|
||||
|
||||
.i-centos:before {
|
||||
content: "\e602";
|
||||
}
|
||||
|
||||
.i-fedora:before {
|
||||
content: "\e603";
|
||||
}
|
||||
|
||||
.i-redhat:before {
|
||||
content: "\e604";
|
||||
}
|
||||
|
||||
.i-ubuntu:before {
|
||||
content: "\e605";
|
||||
}
|
||||
|
||||
.i-suse:before {
|
||||
content: "\e606";
|
||||
}
|
||||
|
||||
.i-mobile-alt:before {
|
||||
content: "\f052";
|
||||
}
|
||||
|
||||
.i-paw:before {
|
||||
content: "\f06b";
|
||||
}
|
||||
|
||||
.i-android:before {
|
||||
content: "\f161";
|
||||
}
|
||||
|
||||
.i-chrome:before {
|
||||
content: "\f178";
|
||||
}
|
||||
|
||||
.i-edge:before {
|
||||
content: "\f195";
|
||||
}
|
||||
|
||||
.i-firefox:before {
|
||||
content: "\f1a1";
|
||||
}
|
||||
|
||||
.i-internet-explorer:before {
|
||||
content: "\f1d4";
|
||||
}
|
||||
|
||||
.i-markdown:before {
|
||||
content: "\f1eb";
|
||||
}
|
||||
|
||||
.i-smile:before {
|
||||
content: "\f2a5";
|
||||
}
|
||||
|
||||
.i-preview:before {
|
||||
content: "\e901";
|
||||
}
|
||||
|
||||
.i-share:before {
|
||||
content: "\e61b";
|
||||
}
|
||||
|
||||
.i-link-circle:before {
|
||||
content: "\e67b";
|
||||
}
|
||||
|
||||
.i-person:before {
|
||||
content: "\e69d";
|
||||
}
|
||||
|
||||
.i-sun:before {
|
||||
content: "\e6d1";
|
||||
}
|
||||
|
||||
.i-moon:before {
|
||||
content: "\e71e";
|
||||
}
|
||||
|
||||
.i-compress:before {
|
||||
content: "\ef82";
|
||||
}
|
||||
|
||||
.i-expand:before {
|
||||
content: "\efb4";
|
||||
}
|
||||
|
||||
.i-align-justify:before {
|
||||
content: "\ef13";
|
||||
}
|
||||
|
||||
.i-align-left:before {
|
||||
content: "\ef14";
|
||||
}
|
||||
|
||||
.i-eye:before {
|
||||
content: "\efb8";
|
||||
}
|
||||
|
||||
.i-pen:before {
|
||||
content: "\f071";
|
||||
}
|
||||
|
||||
.i-clock:before {
|
||||
content: "\ef75";
|
||||
}
|
||||
|
||||
.i-flag:before {
|
||||
content: "\e680";
|
||||
}
|
||||
|
||||
.i-at:before {
|
||||
content: "\e619";
|
||||
}
|
||||
|
||||
.i-file:before {
|
||||
content: "\e68d";
|
||||
}
|
||||
|
||||
.i-clipboard:before {
|
||||
content: "\e651";
|
||||
}
|
||||
|
||||
.i-feather:before {
|
||||
content: "\efbd";
|
||||
}
|
||||
|
||||
.i-music:before {
|
||||
content: "\f059";
|
||||
}
|
||||
|
||||
.i-pause:before {
|
||||
content: "\f06a";
|
||||
}
|
||||
|
||||
.i-comments:before {
|
||||
content: "\ef7f";
|
||||
}
|
||||
|
||||
.i-play:before {
|
||||
content: "\f07f";
|
||||
}
|
||||
|
||||
.i-calendar-check:before {
|
||||
content: "\ef5b";
|
||||
}
|
||||
|
||||
.i-angle-up:before {
|
||||
content: "\ef1b";
|
||||
}
|
||||
|
||||
.i-facebook:before {
|
||||
content: "\f19d";
|
||||
}
|
||||
|
||||
.i-instagram:before {
|
||||
content: "\f1d3";
|
||||
}
|
||||
|
||||
.i-skype:before {
|
||||
content: "\f231";
|
||||
}
|
||||
|
||||
.i-stack-overflow:before {
|
||||
content: "\f239";
|
||||
}
|
||||
|
||||
.i-youtube:before {
|
||||
content: "\f274";
|
||||
}
|
||||
|
||||
.i-list-alt:before {
|
||||
content: "\e6c1";
|
||||
}
|
||||
|
||||
.i-star:before {
|
||||
content: "\f0d4";
|
||||
}
|
||||
|
||||
.i-link-alt:before {
|
||||
content: "\f037";
|
||||
}
|
||||
|
||||
.i-paper-plane:before {
|
||||
content: "\f063";
|
||||
}
|
||||
|
||||
.i-user:before {
|
||||
content: "\f2dd";
|
||||
}
|
||||
|
||||
.i-link:before {
|
||||
content: "\e8fc";
|
||||
}
|
||||
|
||||
.i-angle-down:before {
|
||||
content: "\ef1a";
|
||||
}
|
||||
|
||||
.i-calendar:before {
|
||||
content: "\e812";
|
||||
}
|
||||
|
||||
.i-home:before {
|
||||
content: "\e8ed";
|
||||
}
|
||||
|
||||
.i-magic:before {
|
||||
content: "\f03e";
|
||||
}
|
||||
|
||||
.i-sakura:before {
|
||||
content: "\e695";
|
||||
}
|
||||
|
||||
.i-tag:before {
|
||||
content: "\e759";
|
||||
}
|
||||
|
||||
.i-angle-left:before {
|
||||
content: "\ef19";
|
||||
}
|
||||
|
||||
.i-arrow-circle-right:before {
|
||||
content: "\ef23";
|
||||
}
|
||||
|
||||
.i-check-circle:before {
|
||||
content: "\ef66";
|
||||
}
|
||||
|
||||
.i-exclamation-circle:before {
|
||||
content: "\efb5";
|
||||
}
|
||||
|
||||
.i-info-circle:before {
|
||||
content: "\f02b";
|
||||
}
|
||||
|
||||
.i-minus-circle:before {
|
||||
content: "\f050";
|
||||
}
|
||||
|
||||
.i-plus-circle:before {
|
||||
content: "\f082";
|
||||
}
|
||||
|
||||
.i-file-word:before {
|
||||
content: "\f299";
|
||||
}
|
||||
|
||||
.i-check:before {
|
||||
content: "\ef65";
|
||||
}
|
||||
|
||||
.i-times:before {
|
||||
content: "\f109";
|
||||
}
|
||||
|
||||
.i-list-ol:before {
|
||||
content: "\f039";
|
||||
}
|
||||
|
||||
.i-archive:before {
|
||||
content: "\ef1c";
|
||||
}
|
||||
|
||||
.i-angle-right:before {
|
||||
content: "\ef1f";
|
||||
}
|
||||
|
||||
.i-arrow-down:before {
|
||||
content: "\ef25";
|
||||
}
|
||||
|
||||
.i-arrow-up:before {
|
||||
content: "\ef2a";
|
||||
}
|
||||
|
||||
.i-chart-area:before {
|
||||
content: "\ef64";
|
||||
}
|
||||
|
||||
.i-chevron-left:before {
|
||||
content: "\ef6e";
|
||||
}
|
||||
|
||||
.i-chevron-right:before {
|
||||
content: "\ef6f";
|
||||
}
|
||||
|
||||
.i-coffee:before {
|
||||
content: "\ef7a";
|
||||
}
|
||||
|
||||
.i-envelope:before {
|
||||
content: "\efae";
|
||||
}
|
||||
|
||||
.i-external-link-alt:before {
|
||||
content: "\efb6";
|
||||
}
|
||||
|
||||
.i-heart:before {
|
||||
content: "\f013";
|
||||
}
|
||||
|
||||
.i-heartbeat:before {
|
||||
content: "\f017";
|
||||
}
|
||||
|
||||
.i-search:before {
|
||||
content: "\f0a8";
|
||||
}
|
||||
|
||||
.i-sitemap:before {
|
||||
content: "\f0bd";
|
||||
}
|
||||
|
||||
.i-tags:before {
|
||||
content: "\f0f3";
|
||||
}
|
||||
|
||||
.i-th:before {
|
||||
content: "\f0fc";
|
||||
}
|
||||
|
||||
.i-thumbtack:before {
|
||||
content: "\f107";
|
||||
}
|
||||
|
||||
.i-times-circle:before {
|
||||
content: "\f10a";
|
||||
}
|
||||
|
||||
.i-creative-commons:before {
|
||||
content: "\f17e";
|
||||
}
|
||||
|
||||
.i-github:before {
|
||||
content: "\f1b4";
|
||||
}
|
||||
|
||||
.i-twitter:before {
|
||||
content: "\f24d";
|
||||
}
|
||||
|
||||
.i-weibo:before {
|
||||
content: "\f261";
|
||||
}
|
||||
|
||||
.i-address-card:before {
|
||||
content: "\f278";
|
||||
}
|
||||
|
||||
.i-zhihu:before {
|
||||
content: "\e765";
|
||||
}
|
||||
|
||||
.i-cloud-music:before {
|
||||
content: "\e76a";
|
||||
}
|
||||
99
example/source/_data/images.yml
Normal file
99
example/source/_data/images.yml
Normal file
@@ -0,0 +1,99 @@
|
||||
- 6833939bly1giciryrr3rj20zk0m8nhk.jpg
|
||||
- 6833939bly1gicis081o9j20zk0m8dmr.jpg
|
||||
- 6833939bly1gicis3attqj20zk0m8k7l.jpg
|
||||
- 6833939bly1giciszlczyj20zk0m816d.jpg
|
||||
- 6833939bly1gicit31ffoj20zk0m8naf.jpg
|
||||
- 6833939bly1gicit4jrvuj20zk0m8785.jpg
|
||||
- 6833939bly1gicitcxhpij20zk0m8hdt.jpg
|
||||
- 6833939bly1gicitf0kl1j20zk0m87fe.jpg
|
||||
- 6833939bly1gicitht3xtj20zk0m8k5v.jpg
|
||||
- 6833939bly1gicitspjpbj20zk0m81ky.jpg
|
||||
- 6833939bly1gicitzannuj20zk0m8b29.jpg
|
||||
- 6833939bly1giciub8ja1j20zk0m81ky.jpg
|
||||
- 6833939bly1giciuja1j1j20zk0m8kjl.jpg
|
||||
- 6833939bly1giciukx8a7j20zk0m8aio.jpg
|
||||
- 6833939bly1giciundwu5j20zk0m8n9e.jpg
|
||||
- 6833939bly1giciusoyjnj219g0u0x56.jpg
|
||||
- 6833939bly1giciuv0socj20zk0m8qes.jpg
|
||||
- 6833939bly1gicivghyooj20zk0m8dir.jpg
|
||||
- 6833939bly1giclfb3vzhj20zk0m8wny.jpg
|
||||
- 6833939bly1giclfdu6exj20zk0m87hw.jpg
|
||||
- 6833939bly1giclffsa1cj20zk0m811l.jpg
|
||||
- 6833939bly1giclflwv2aj20zk0m84qp.jpg
|
||||
- 6833939bly1giclfw2t96j20zk0m8x6p.jpg
|
||||
- 6833939bly1giclg5ms2rj20zk0m8u0x.jpg
|
||||
- 6833939bly1giclga70tsj20zk0m84mr.jpg
|
||||
- 6833939bly1giclgi503lj20zk0m8hdt.jpg
|
||||
- 6833939bly1giclgrvbd6j20zk0m8qv5.jpg
|
||||
- 6833939bly1giclh0m9pdj20zk0m8hdt.jpg
|
||||
- 6833939bly1giclh3brzpj20zk0m8ann.jpg
|
||||
- 6833939bly1giclh5u05ej20zk0m87df.jpg
|
||||
- 6833939bly1giclhfehz7j20zk0m8u0x.jpg
|
||||
- 6833939bly1giclhnx9glj20zk0m8npd.jpg
|
||||
- 6833939bly1giclhpw3lwj20zk0m8gvw.jpg
|
||||
- 6833939bly1giclhtuo6nj20zk0m8ttm.jpg
|
||||
- 6833939bly1gicli3sbvtj20zk0m8x6p.jpg
|
||||
- 6833939bly1gicli9lfebj20zk0m84qp.jpg
|
||||
- 6833939bly1gicliierfjj20zk0m8npd.jpg
|
||||
- 6833939bly1giclil3m4ej20zk0m8tn8.jpg
|
||||
- 6833939bly1giclimtf7dj20zk0m8qav.jpg
|
||||
- 6833939bly1giclip4jbpj20zk0m87cv.jpg
|
||||
- 6833939bly1gicliwyw55j20zk0m8hdt.jpg
|
||||
- 6833939bly1giclize41wj20zk0m87gk.jpg
|
||||
- 6833939bly1giclj61ylzj20zk0m8b29.jpg
|
||||
- 6833939bly1giclj9410cj20zk0m8h12.jpg
|
||||
- 6833939bly1gicljgocqbj20zk0m8e81.jpg
|
||||
- 6833939bly1gicljitigmj20zk0m87fp.jpg
|
||||
- 6833939bly1giclwrdwyaj20zk0m8are.jpg
|
||||
- 6833939bly1giclwuom7cj20zk0m8dvn.jpg
|
||||
- 6833939bly1giclx29mstj20zk0m8hdt.jpg
|
||||
- 6833939bly1giclx6phq6j20zk0m8e36.jpg
|
||||
- 6833939bly1giclxfdlttj20zk0m8npd.jpg
|
||||
- 6833939bly1giclxp31goj20zk0m8qv5.jpg
|
||||
- 6833939bly1giclxxcb6rj20zk0m8b29.jpg
|
||||
- 6833939bly1gicm07ih54j20zk0m84qp.jpg
|
||||
- 6833939bly1gicm0fdw5cj20zk0m8hdt.jpg
|
||||
- 6833939bly1gicm0n457cj20zk0m8e81.jpg
|
||||
- 6833939bly1gicmnywqgpj20zk0m8dwx.jpg
|
||||
- 6833939bly1gipesng5oej20zk0m87d4.jpg
|
||||
- 6833939bly1gipesrnqv3j20zk0m8ava.jpg
|
||||
- 6833939bly1gipesx5fdwj20zk0m81kx.jpg
|
||||
- 6833939bly1gipet4bz0yj20zk0m8e81.jpg
|
||||
- 6833939bly1gipet8c1a2j20zk0m8kct.jpg
|
||||
- 6833939bly1gipetfk5zwj20zk0m8e81.jpg
|
||||
- 6833939bly1gipetlbztpj20zk0m84qp.jpg
|
||||
- 6833939bly1gipetv6p75j20zk0m8x6p.jpg
|
||||
- 6833939bly1gipeu1usa7j20zk0m8b29.jpg
|
||||
- 6833939bly1gipeu7txpzj20zk0m81kx.jpg
|
||||
- 6833939bly1gipeubcbajj20zk0m8h1h.jpg
|
||||
- 6833939bly1gipeudstjqj20zk0m8k3r.jpg
|
||||
- 6833939bly1gipeuibk9fj20zk0m8ay2.jpg
|
||||
- 6833939bly1gipeun65urj20zk0m81ii.jpg
|
||||
- 6833939bly1gipeuv80yoj20zk0m8kjl.jpg
|
||||
- 6833939bly1gipev1x5e4j20zk0m8b29.jpg
|
||||
- 6833939bly1gipevarprfj20zk0m8npd.jpg
|
||||
- 6833939bly1gipevgoki5j20zk0m84qp.jpg
|
||||
- 6833939bly1gipevo9j1jj20zk0m8e81.jpg
|
||||
- 6833939bly1gipevuctzzj20zk0m84qp.jpg
|
||||
- 6833939bly1gipew28b65j20zk0m8hdt.jpg
|
||||
- 6833939bly1gipew8gmvyj20zk0m87wh.jpg
|
||||
- 6833939bly1gipewf5l51j20zk0m8b29.jpg
|
||||
- 6833939bly1gipewkhf1zj20zk0m81kx.jpg
|
||||
- 6833939bly1gipewr8iypj20zk0m8b29.jpg
|
||||
- 6833939bly1gipex2cdtbj20zk0m8x6p.jpg
|
||||
- 6833939bly1gipexbei4hj20zk0m8npd.jpg
|
||||
- 6833939bly1gipexe4oykj20zk0m87ji.jpg
|
||||
- 6833939bly1gipexj2jgzj20zk0m8b09.jpg
|
||||
- 6833939bly1gipexoj0moj20zk0m8kgu.jpg
|
||||
- 6833939bly1gipexw3o58j20zk0m8e81.jpg
|
||||
- 6833939bly1gipey0a334j20zk0m8qpt.jpg
|
||||
- 6833939bly1gipey84bjtj20zk0m8hdt.jpg
|
||||
- 6833939bly1gipeybxm1pj20zk0m8niv.jpg
|
||||
- 6833939bly1gipeyhsblkj20zk0m81kx.jpg
|
||||
- 6833939bly1gipeyonbf9j20zk0m8e81.jpg
|
||||
- 6833939bly1gipeyvx1d4j20zk0m8hdt.jpg
|
||||
- 6833939bly1giph47e9vtj20zk0m8x6l.jpg
|
||||
- 6833939bly1giph4baakhj20zk0m8h5q.jpg
|
||||
- 6833939bly1giph4fomxoj20zk0m8axp.jpg
|
||||
- 6833939bly1giph4lm9i7j20zk0m84qp.jpg
|
||||
- 6833939bly1giph4wqtg4j20zk0m8x6p.jpg
|
||||
@@ -22,7 +22,7 @@ valine:
|
||||
:::
|
||||
|
||||
:::warning
|
||||
当前版本更新至 0.2.4,[更新记录点此](#更新记录)
|
||||
当前版本更新至 0.2.5,[更新记录点此](#更新记录)
|
||||
:::
|
||||
|
||||
:::primary
|
||||
@@ -69,20 +69,30 @@ theme: shoka
|
||||
```
|
||||
|
||||
## 修改主题配置
|
||||
Hexo5可以在根目录新建一个yml文件,命名为`_config.shoka.yml`。
|
||||
将自定义配置保存于此,方便后续主题升级。
|
||||
主题配置的所有参数在`<root>/themes/shoka/_config.yml`文件中。
|
||||
|
||||
为了方便主题升级,请在根目录新建一个yml文件,命名为`_config.shoka.yml`。
|
||||
也就是说,所有主题的自定义配置均保存于`<root>/_config.shoka.yml`文件。
|
||||
|
||||
[主题的基础配置可以参考这里](config/)
|
||||
[界面显示相关的配置参考这里](display/)
|
||||
|
||||
# 更新记录
|
||||
标签含义:
|
||||
❗ 需要手动操作的更新信息
|
||||
⚠️ 需要注意的更新信息
|
||||
🔧 已修复的问题
|
||||
📎 TODO
|
||||
⌛ TODO
|
||||
|
||||
## 0.2.4 👉 0.2.5
|
||||
💡 避免直接修改主题文件,添加各种自定义:
|
||||
- [样式](display/#自定义页面配色):包括配色、[icon](config/#iconfont图标)、其他自定义样式
|
||||
- 图片:包括[主题图片](display/#自定义主题图片)、[随机图库](config/#随机图库)
|
||||
|
||||
🔧 修复一些BUG
|
||||
|
||||
## 0.2.3 👉 0.2.4
|
||||
⚠️ **评论功能更新**
|
||||
⚠️ **评论功能更新**
|
||||
- MiniValine魔改版更新至beta10,修改过主题默认`_config.yml`的同学,记得更新末尾的`vendors`到最新哦
|
||||
- ❗ 评论相关的配置有更新,[配置戳此](config/#文章评论)
|
||||
- 主要增加的Tag配置,现在可以各种自定义啦
|
||||
@@ -97,7 +107,7 @@ Hexo5可以在根目录新建一个yml文件,命名为`_config.shoka.yml`。
|
||||
- 加了一些控制按钮
|
||||
|
||||
⚠️ 增加`media`标签,在文章中插入音频和视频播放列表,[方法戳此](special/#media多媒体)
|
||||
📎 视频播放器有待增强(显示分段标签,字幕)
|
||||
⌛ 视频播放器有待增强(显示分段标签,字幕)
|
||||
|
||||
🔧 随机图库支持非渣浪图床的任意图片
|
||||
🔧 还有许多小BUG
|
||||
|
||||
@@ -8,15 +8,12 @@ tags:
|
||||
- 教程
|
||||
valine:
|
||||
placeholder: "1. 提问前请先仔细阅读本文档⚡\n2. 页面显示问题💥,请提供控制台截图📸或者您的测试网址\n3. 其他任何报错💣,请提供详细描述和截图📸,祝食用愉快💪"
|
||||
audio: false
|
||||
---
|
||||
|
||||
:::primary
|
||||
[:rocket:快速开始](/computer-science/note/theme-shoka-doc/) - [:love_letter:依赖插件](/computer-science/note/theme-shoka-doc/dependents/) - [**:pushpin:基本配置**](/computer-science/note/theme-shoka-doc/config/) - [:rainbow:界面显示](/computer-science/note/theme-shoka-doc/display/) - [:unicorn:特殊功能](/computer-science/note/theme-shoka-doc/special/)
|
||||
:::
|
||||
|
||||
这里修改的是`themes/shoka/_config.yml`内的配置参数。
|
||||
建议在根目录新建一个yml文件,命名为`_config.shoka.yml`,并在这个自定义文件中增改配置,而非直接修改主体文件夹内的`_config.yml`。
|
||||
|
||||
# 站点别称
|
||||
```yml
|
||||
@@ -33,13 +30,51 @@ statics: / #//cdn.jsdelivr.net/gh/amehime/shoka@latest/
|
||||
PS:jsDelivr并不是实时更新,重新生成文件后需要耐心等待
|
||||
|
||||
```yml
|
||||
assets: assets
|
||||
css: css
|
||||
js: js
|
||||
images: images
|
||||
```
|
||||
静态文件所处目录的实际目录名,这些一般不改。
|
||||
|
||||
# 夜间模式
|
||||
```yml
|
||||
darkmode: # true
|
||||
```
|
||||
默认情况下,是否开启夜间模式取决于(优先级从高到低):
|
||||
1. 访客点击页面头部切换按钮的自行选择
|
||||
2. 访客切换了浏览设备的主题色调
|
||||
3. 您的`darkmode`配置项
|
||||
|
||||
# 自动定位
|
||||
```yml
|
||||
auto_scroll: # false
|
||||
```
|
||||
默认情况下,再次打开页面时,会自动滚动到上次浏览的位置。
|
||||
这个选项设为`false`时将停用此功能。
|
||||
|
||||
# 加载动画
|
||||
```yml
|
||||
# 是否显示页面加载动画loading-cat
|
||||
loader:
|
||||
start: true # 当初次打开页面时,显示加载动画
|
||||
switch: true # tab切换到其他页面时,显示加载动画
|
||||
```
|
||||
|
||||
tab切换后只是显示loading动画,实际并未重新加载页面
|
||||
|
||||
# 页面特效
|
||||
单击页面的烟花效果配置如下
|
||||
|
||||
```yml
|
||||
fireworks:
|
||||
enable: true # 是否启用
|
||||
color: # 烟花颜色
|
||||
- "rgba(255,182,185,.9)"
|
||||
- "rgba(250,227,217,.9)"
|
||||
- "rgba(187,222,214,.9)"
|
||||
- "rgba(138,198,209,.9)"
|
||||
```
|
||||
|
||||
# 加载谷歌字体
|
||||
```yml
|
||||
font:
|
||||
@@ -83,51 +118,31 @@ font:
|
||||
external: true
|
||||
family: Inconsolata
|
||||
```
|
||||
|
||||
此功能基本参考NexT。
|
||||
加粗标题的字体总是使用`Noto Serif`,为了正确友好的显示日文中的汉字,会先后加载`headings`和`title`的字体设置。
|
||||
|
||||
# 夜间模式
|
||||
```yml
|
||||
darkmode: # true
|
||||
```
|
||||
默认情况下,是否开启夜间模式取决于(优先级从高到低):
|
||||
1. 访客点击页面头部切换按钮的自行选择
|
||||
2. 访客切换了浏览设备的主题色调
|
||||
3. 您的`darkmode`配置项
|
||||
|
||||
# 自动定位
|
||||
```yml
|
||||
auto_scroll: # false
|
||||
```
|
||||
默认情况下,再次打开页面时,会自动滚动到上次浏览的位置。
|
||||
这个选项设为`false`时将停用此功能。
|
||||
|
||||
|
||||
# 加载动画
|
||||
```yml
|
||||
# 是否显示页面加载动画loading-cat
|
||||
loader:
|
||||
start: true # 当初次打开页面时,显示加载动画
|
||||
switch: true # tab切换到其他页面时,显示加载动画
|
||||
```
|
||||
|
||||
tab切换后只是显示loading动画,实际并未重新加载页面
|
||||
|
||||
# 边栏位置
|
||||
|
||||
边栏可以选择在左侧,或右侧
|
||||
# `iconfont`图标
|
||||
主题没有直接使用Font Awesome,是因为用不到那么多icon感觉非常浪费,因此在Iconfont上重新建立了一个项目。
|
||||
`font-family`设为`ic`,所有字体样式前缀为`i-`,具体参见`<root>/themes/shoka/source/css/_iconfont.styl`。
|
||||
|
||||
```yml
|
||||
sidebar:
|
||||
# Sidebar Position.
|
||||
position: left
|
||||
#position: right
|
||||
# project of https://www.iconfont.cn/
|
||||
# //at.alicdn.com/t/font_1832207_c8i9n1ulxlt.css => 1832207_c8i9n1ulxlt
|
||||
iconfont: "1832207_c8i9n1ulxlt"
|
||||
```
|
||||
|
||||
# 菜单与社交按钮icon
|
||||
这里没有直接使用Font Awesome,是因为用不到那么多icon感觉非常浪费,因此在Iconfont上重新建立了一个项目。
|
||||
`font-family`设为`ic`,所有字体样式前缀为`i-`,具体参见`themes/shoka/source/css/scaffolding/iconfont.styl`。
|
||||
全部图标预览可以打开`themes/shoka/source/css/_common/scaffolding/icon/demo_index.html`文件查看。
|
||||
如果需要添加或修改,请留言告诉我您的[Iconfont](https://www.iconfont.cn/)用户名,我将把您添加到目前的[项目](https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=1832207)中。
|
||||
|
||||
添加权限为`只读`,此后您可以任意全选,批量保存到购物车中,添加至您自己的项目里,并将主题配置文件中的`iconfont`值改为您的项目。
|
||||
|
||||
注意,您的项目应设置`FontClass/Symbol 前缀`为`i-`。
|
||||
|
||||
在`<root>/source/_data/`目录新建文件`iconfont.styl`,把新增或修改的图标样式复制到这个文件中。
|
||||
|
||||
> 自定义`iconfont.styl`文件将覆盖主题默认样式,为了避免出错,请保证原有样式名均存在,在原有样式基础上进行增删改。
|
||||
|
||||
# 菜单与社交按钮
|
||||
|
||||
```yml
|
||||
menu:
|
||||
@@ -163,123 +178,53 @@ social:
|
||||
|
||||
`menu` 支持一级子目录,子目录设置中的第一项必须为`default`,用来定义父级按钮的样式。
|
||||
|
||||
菜单显示文字可以在语言包中定义,[具体请戳这里](/computer-science/note/theme-shoka-doc/display/#自定义语言包)
|
||||
|
||||
# 图片修改
|
||||
位于`<root>/themes/shoka/source/images/`目录里的图片们都是可以修改的。
|
||||
|
||||
1. 修改头像 `avatar.jpg`
|
||||
如果要设置不同的文件名,请在主题`_config.yml`修改
|
||||
```yml
|
||||
sidebar:
|
||||
# Replace the default avatar image and set the url here.
|
||||
avatar: avatar.jpg
|
||||
```
|
||||
|
||||
2. 修改打赏二维码文件,共三个
|
||||
|
||||
3. 修改 `favicon.ico`和`apple-touch-icon.png`
|
||||
菜单显示文字可以在语言包中定义,[具体请戳这里](../display/#自定义语言包)
|
||||
|
||||
|
||||
# 随机图库
|
||||
- 默认情况下
|
||||
图片列表位于`<root>/themes/shoka/_images.yml`中。
|
||||
使用了渣浪图库,使用一些上传工具,比如[这里](https://pic.gimhoy.com/)
|
||||
上传后图片的链接是`http://wx4.sinaimg.cn/large/6833939bly1gicmnywqgpj20zk0m8dwx.jpg`。
|
||||
只需要增加一行,写上`- 6833939bly1gicmnywqgpj20zk0m8dwx.jpg`。
|
||||
# 边栏配置
|
||||
|
||||
边栏可以选择在左侧,或右侧
|
||||
修改头像文件的地址,相对于静态文件目录`images`中配置的路径。
|
||||
|
||||
- 也可以直接在图片列表yml文件中,写上任意外链图片地址
|
||||
```yml
|
||||
- https://i.loli.net/2020/10/30/qAMYEFXxJcKRsiG.gif
|
||||
- https://i.loli.net/2020/10/30/rjdhcSgEN8COBPA.jpg
|
||||
- https://i.loli.net/2020/10/30/HKyzSd7NI3mlBpt.jpg
|
||||
- https://i.loli.net/2020/10/30/Y1CBXqgeokEs457.jpg
|
||||
- https://i.loli.net/2020/10/30/Z5W6r2BSoiThHG1.jpg
|
||||
sidebar:
|
||||
# Sidebar Position.
|
||||
position: left
|
||||
#position: right
|
||||
# Replace the default avatar image and set the url here.
|
||||
avatar: avatar.jpg
|
||||
```
|
||||
|
||||
- 也可以在主题`_config.yml`文件中设置图床API:
|
||||
```yml 比如
|
||||
image_server: "https://acg.xydwz.cn/api/api.php"
|
||||
可以将自己的图片放在`<root>/source/_data/images/`目录,甚至以同名覆盖主题内默认的头像图片,[具体请戳这里](../display/#自定义主题图片)
|
||||
|
||||
# 底部widgets
|
||||
目前页面底部可以显示两个小部件,即`随机文章`和`最近评论`。
|
||||
|
||||
```yml
|
||||
widgets:
|
||||
random_posts: true # 显示随机文章
|
||||
recent_comments: true # 显示最近评论
|
||||
```
|
||||
|
||||
# 背景音乐
|
||||
在主题`_config.yml`文件中设置全局播放列表。
|
||||
在文章的 Front Matter 中,设置文章专有播放列表,访问该文章页面时,将覆盖全局配置。
|
||||
# 字数及阅读时间统计
|
||||
|
||||
```yml 单列表
|
||||
audio:
|
||||
- https://music.163.com/song?id=1387098940
|
||||
- https://music.163.com/#/playlist?id=2088001742
|
||||
- https://www.xiami.com/collect/250830668
|
||||
- https://y.qq.com/n/yqq/playsquare/3535982902.html
|
||||
```
|
||||
如上,可以直接使用网易云、虾米、QQ音乐的播放列表、单曲,可以同时填写多个。
|
||||
|
||||
```yml 多列表
|
||||
audio:
|
||||
- title: 列表1
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2943811283
|
||||
- https://music.163.com/#/playlist?id=2297706586
|
||||
- title: 列表2
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2031842656
|
||||
```
|
||||
|
||||
如果需要自定义媒体文件,可以按照以下格式填写:
|
||||
|
||||
```yml 单列表
|
||||
audio:
|
||||
- name: "曲目1"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
- name: "曲目2"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
```
|
||||
|
||||
```yml 多列表
|
||||
audio:
|
||||
- title: 列表1
|
||||
list:
|
||||
- name: "曲目1"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
- name: "曲目2"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
- title: 列表2
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2031842656
|
||||
```
|
||||
|
||||
# 文章字数及阅读时间统计
|
||||
|
||||
安装好hexo-symbols-count-time插件后,不需要修改站点配置文件,直接使用插件默认配置就行。
|
||||
安装好`hexo-symbols-count-time`插件后,不需要修改站点配置文件,直接使用插件默认配置就行。
|
||||
|
||||
需要修改主题配置文件,找到两处`cout`,修改为`true`:
|
||||
|
||||
```yml
|
||||
# 文章字数统计
|
||||
post:
|
||||
count: true
|
||||
|
||||
# 页尾全站统计
|
||||
footer:
|
||||
since: 2010
|
||||
count: true
|
||||
|
||||
# 文章界面统计
|
||||
post:
|
||||
count: true
|
||||
```
|
||||
|
||||
# 文章评论
|
||||
在主题`_config.yml`文件中设置好LeanCloud的appId和appKey,[如何获取戳此](https://valine.js.org/quickstart.html)。
|
||||
[如何获取LeanCloud的appId和appKey](https://valine.js.org/quickstart.html)。
|
||||
|
||||
```yml
|
||||
valine:
|
||||
@@ -344,17 +289,103 @@ valine:
|
||||
评论通知与管理工具建议使用这个[Valine-Admin](https://github.com/DesertsP/Valine-Admin)。
|
||||
注意`SITE_URL`需要以`/`结尾。
|
||||
|
||||
# 页面特效
|
||||
除了上述评论框的输入特效,单击页面的烟花效果配置如下
|
||||
如果某一篇文章需要关闭评论功能,则在文章Front Matter中配置:
|
||||
|
||||
```yml
|
||||
fireworks:
|
||||
enable: true # 是否启用
|
||||
color: # 烟花颜色
|
||||
- "rgba(255,182,185,.9)"
|
||||
- "rgba(250,227,217,.9)"
|
||||
- "rgba(187,222,214,.9)"
|
||||
- "rgba(138,198,209,.9)"
|
||||
---
|
||||
title: 关闭评论
|
||||
comment: false
|
||||
---
|
||||
```
|
||||
|
||||
# 背景音乐
|
||||
在主题配置文件中,设置全局播放列表。
|
||||
在文章的 Front Matter 中,设置文章专有播放列表,访问该文章页面时,将覆盖全局配置。
|
||||
|
||||
```yml 单列表
|
||||
audio:
|
||||
- https://music.163.com/song?id=1387098940
|
||||
- https://music.163.com/#/playlist?id=2088001742
|
||||
- https://www.xiami.com/collect/250830668
|
||||
- https://y.qq.com/n/yqq/playsquare/3535982902.html
|
||||
```
|
||||
如上,可以直接使用网易云、虾米、QQ音乐的播放列表、单曲,可以同时填写多个。
|
||||
|
||||
```yml 多列表
|
||||
audio:
|
||||
- title: 列表1
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2943811283
|
||||
- https://music.163.com/#/playlist?id=2297706586
|
||||
- title: 列表2
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2031842656
|
||||
```
|
||||
|
||||
如果需要自定义媒体文件,可以按照以下格式填写:
|
||||
|
||||
```yml 单列表
|
||||
audio:
|
||||
- name: "曲目1"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
- name: "曲目2"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
```
|
||||
|
||||
```yml 多列表
|
||||
audio:
|
||||
- title: 列表1
|
||||
list:
|
||||
- name: "曲目1"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
- name: "曲目2"
|
||||
url: "播放地址"
|
||||
artist: "艺术家"
|
||||
cover: "封面"
|
||||
lrc: "歌词"
|
||||
- title: 列表2
|
||||
list:
|
||||
- https://music.163.com/#/playlist?id=2031842656
|
||||
```
|
||||
|
||||
如果要关闭当前页面的背景音乐播放器,则在文章Front Matter中配置:
|
||||
|
||||
```yml
|
||||
---
|
||||
title: 关闭背景音乐
|
||||
audio: false
|
||||
---
|
||||
```
|
||||
|
||||
# 随机图库
|
||||
- 默认的图片列表位于`<root>/themes/shoka/_images.yml`中。
|
||||
使用了渣浪图库,使用一些上传工具,比如[这里](https://pic.gimhoy.com/)
|
||||
上传后图片的链接是`http://wx4.sinaimg.cn/large/6833939bly1gicmnywqgpj20zk0m8dwx.jpg`。
|
||||
只需要新一行写上`- 6833939bly1gicmnywqgpj20zk0m8dwx.jpg`。
|
||||
|
||||
如果想要自定义,则在`<root>/source/_data/`目录新建一个`images.yml`文件,这个文件中的图片至少6枚,将完全覆盖默认的图片列表。
|
||||
|
||||
- 也可以直接在图片列表yml文件中,写上任意外链图片地址
|
||||
```yml
|
||||
- https://i.loli.net/2020/10/30/qAMYEFXxJcKRsiG.gif
|
||||
- https://i.loli.net/2020/10/30/rjdhcSgEN8COBPA.jpg
|
||||
- https://i.loli.net/2020/10/30/HKyzSd7NI3mlBpt.jpg
|
||||
- https://i.loli.net/2020/10/30/Y1CBXqgeokEs457.jpg
|
||||
- https://i.loli.net/2020/10/30/Z5W6r2BSoiThHG1.jpg
|
||||
```
|
||||
|
||||
- 也可以在主题配置文件中,设置图床API:
|
||||
```yml 比如
|
||||
image_server: "https://acg.xydwz.cn/api/api.php"
|
||||
```
|
||||
|
||||
# 加载第三方组件
|
||||
|
||||
@@ -31,7 +31,7 @@ hexo-feed|[链接](https://www.npmjs.com/package/hexo-feed)|生成Feed文件| Fe
|
||||
> 没有正确安装以上插件的话,本主题会报错or无法正确显示or部分功能失效。
|
||||
> `hexo-renderer-multi-markdown-it`请注意升级到最新版
|
||||
|
||||
安装完以上插件后,修改站点`_config.yml`文件,加入相关配置。
|
||||
安装完以上插件后,修改站点配置文件,加入相关配置。
|
||||
|
||||
# multi-markdown-it安装与配置
|
||||
|
||||
|
||||
@@ -14,6 +14,67 @@ valine:
|
||||
[:rocket:快速开始](/computer-science/note/theme-shoka-doc/) - [:love_letter:依赖插件](/computer-science/note/theme-shoka-doc/dependents/) - [:pushpin:基本配置](/computer-science/note/theme-shoka-doc/config/) - [**:rainbow:界面显示**](/computer-science/note/theme-shoka-doc/display/) - [:unicorn:特殊功能](/computer-science/note/theme-shoka-doc/special/)
|
||||
:::
|
||||
|
||||
|
||||
# 首页置顶文章
|
||||
在文章的Front Matter设置`sticky: true`,则该文章将显示在首页最上方的`置顶文章`列。
|
||||
多篇文章按照发布时间倒序排列,不分页。
|
||||
|
||||
```raw
|
||||
---
|
||||
title: 置顶文章
|
||||
sticky: true
|
||||
---
|
||||
```
|
||||
|
||||
# 首页精选分类
|
||||
想要在首页显示分类翻转块,需要按照以下示例的方式,给需要显示的分类加上封面图。
|
||||
|
||||
1. 首先,修改站点配置:
|
||||
找到`category_map:`,配置每个分类对应的英文映射,比如:
|
||||
```yml
|
||||
category_map:
|
||||
计算机科学: computer-science
|
||||
Java: java
|
||||
C++: cpp
|
||||
二进制杂谈: note
|
||||
计算机程序设计(C++)-西安交通大学: course-1
|
||||
零基础学Java语言-浙江大学-翁恺: course-1
|
||||
面向对象程序设计-Java语言-浙江大学-翁恺: course-2
|
||||
```
|
||||
> 注意:hexo会自动处理路径中的特殊字符,\~\`!@#$%^&\*()-\_+=[]{}|\\;:"'<>,.?以及空格,这些全部会被替换成`-`
|
||||
> 所以避免在设置中使用上述字符,否则可导致无法抓取到目录下的`cover.jpg`
|
||||
|
||||
2. 在`<root>/source/_posts`文件夹相应的目录里,存放封面图
|
||||
例子:如 [第1周 计算](https://shoka.lostyu.me/computer-science/java/course-1/week-1/) 这篇文章。
|
||||
所处的分类是
|
||||
```yml
|
||||
categories:
|
||||
- [计算机科学, Java, 零基础学Java语言-浙江大学-翁恺]
|
||||
```
|
||||
现在需要在首页显示`零基础学Java语言-浙江大学-翁恺`这个分类,翻转卡片后,显示这个分类下的文章们。
|
||||
而该分类经过英文映射,它的路径将是`/computer-science/java/course-1/`。
|
||||
|
||||
那么,请在`<root>/source/_posts/computer-science/java/course-1/`的目录下放置`cover.jpg`文件。
|
||||
只要`分类路径`对应的目录下**存在**`cover.jpg`文件,这个分类就会在首页显示。
|
||||
在进行`hexo g`时,本分类的封面图会自动被复制到public目录里相应的位置。
|
||||
|
||||
3. 事实上,为了方便文章管理,这个分类下所有文章的md文件,我都会放在`<root>/source/_posts/computer-science/java/course-1/`这个目录下。
|
||||
|
||||
且站点配置文件里,永久链接设置如下
|
||||
```yml
|
||||
permalink: :title/
|
||||
```
|
||||
`hexo g`后,文章的html文件们将全部生成到`<root>/public/computer-science/java/course-1/`目录。
|
||||
具体可以查看[本博客的github仓库](https://github.com/amehime/shoka)。
|
||||
|
||||
4. 文章详情界面中的`系列文章`,显示的是与当前文章同一分类的其他文章,并按照文章名正序排序。
|
||||
|
||||
> o(\* ̄▽ ̄\*)ゞ
|
||||
> 其实,不设置`category_map`也可以,只要在分类路径对应的文件夹下存在`cover.jpg`文件就行。
|
||||
> 现在,这项功能与`category_dir`的配置也无关,`hexo g`生成后,图片会自动被转移到`category_dir`的相关子目录下。
|
||||
|
||||
|
||||
|
||||
# 文章封面图
|
||||
- 如果文章的Front Matter设置了`cover: image path`,则封面会显示这张图片。
|
||||
```yml 举个栗子
|
||||
@@ -37,69 +98,12 @@ valine:
|
||||
```
|
||||
此时默认会显示第一个图片,即位于`<root>/source/assets/`目录里的`wallpaper-2572384.jpg`。
|
||||
|
||||
- 如果以上设置均不存在,将显示一张随机图片。
|
||||
图片取自`<root>/themes/shoka/_images.yml`中,使用渣浪图床。
|
||||
|
||||
# 首页置顶文章
|
||||
在文章的Front Matter设置`sticky: true`,则该文章将显示在首页最上方的`置顶文章`列。
|
||||
多篇文章按照发布时间倒序排列,不分页。
|
||||
|
||||
```raw
|
||||
---
|
||||
title: 置顶文章
|
||||
sticky: true
|
||||
---
|
||||
```
|
||||
|
||||
# 首页精选分类
|
||||
想要在首页显示分类翻转块,需要按照以下示例的方式,给需要显示的分类加上封面图。
|
||||
|
||||
1. 首先,修改站点的`_config.yml`
|
||||
找到`category_map:`,配置每个分类对应的英文映射,比如:
|
||||
```yml
|
||||
category_map:
|
||||
计算机科学: computer-science
|
||||
Java: java
|
||||
C++: cpp
|
||||
二进制杂谈: note
|
||||
计算机程序设计(C++)-西安交通大学: course-1
|
||||
零基础学Java语言-浙江大学-翁恺: course-1
|
||||
面向对象程序设计-Java语言-浙江大学-翁恺: course-2
|
||||
```
|
||||
> 注意:hexo会自动处理路径中的特殊字符,~\`!@#$%^&*()-_+=[]{}|\\;:"'<>,.?以及空格,这些全部会被替换成`-`
|
||||
> 所以避免在设置中使用上述字符,否则可导致无法抓取到目录下的`cover.jpg`
|
||||
|
||||
2. 在`<root>/source/_posts`文件夹相应的目录里,存放封面图
|
||||
例子:如 [第1周 计算](https://shoka.lostyu.me/computer-science/java/course-1/week-1/) 这篇文章。
|
||||
所处的分类是
|
||||
```yml
|
||||
categories:
|
||||
- [计算机科学, Java, 零基础学Java语言-浙江大学-翁恺]
|
||||
```
|
||||
现在需要在首页显示`零基础学Java语言-浙江大学-翁恺`这个分类,翻转卡片后,显示这个分类下的文章们。
|
||||
而该分类经过英文映射,它的路径将是`/computer-science/java/course-1/`。
|
||||
|
||||
那么,请在`<root>/source/_posts/computer-science/java/course-1/`的目录下放置`cover.jpg`文件。
|
||||
只要`分类路径`对应的目录下**存在**`cover.jpg`文件,这个分类就会在首页显示。
|
||||
在进行`hexo g`时,本分类的封面图会自动被复制到public目录里相应的位置。
|
||||
|
||||
3. 事实上,为了方便文章管理,这个分类下所有文章的md文件,我都会放在`<root>/source/_posts/computer-science/java/course-1/`这个目录下。
|
||||
|
||||
且站点`_config.yml`里,永久链接设置如下
|
||||
```yml
|
||||
permalink: :title/
|
||||
```
|
||||
`hexo g`后,文章的html文件们将全部生成到`<root>/public/computer-science/java/course-1/`目录。
|
||||
具体可以查看[本博客的github仓库](https://github.com/amehime/shoka)。
|
||||
|
||||
4. 文章详情界面中的`系列文章`,显示的是与当前文章同一分类的其他文章,并按照文章名正序排序。
|
||||
|
||||
> o(\* ̄▽ ̄\*)ゞ
|
||||
> 其实,不设置`category_map`也可以,只要在分类路径对应的文件夹下存在`cover.jpg`文件就行。
|
||||
> 现在,这项功能与`category_dir`的配置也无关,`hexo g`生成后,图片会自动被转移到`category_dir`的相关子目录下。
|
||||
- 如果站点配置中设置了`post_asset_folder: true`,那么上述本地图片路径应为`<root>/source/_posts/文章同名的文件夹/assets/wallpaper-2572384.jpg`,当然此时`assets`目录可以省掉。
|
||||
|
||||
- 如果以上设置均不存在,将显示一张随机图片,[随机图库配置戳此](../config/#随机图库)。
|
||||
|
||||
# 图片展示与相册
|
||||
|
||||
在文章的Front Matter设置`fancybox: false`,可以关闭文章页的图片展示功能。
|
||||
使用[Justified-Gallery](http://miromannino.github.io/Justified-Gallery/)对Gallery Post内图案进行排列。
|
||||
|
||||
@@ -145,24 +149,26 @@ sticky: true
|
||||

|
||||
{.gallery data-height="220"}
|
||||
|
||||
# 底部widgets
|
||||
目前页面底部可以显示两个小部件,即`随机文章`和`最近评论`。
|
||||
可以在主题`_config.yml`中配置开关。
|
||||
|
||||
```yml
|
||||
widgets:
|
||||
random_posts: true
|
||||
recent_comments: true
|
||||
```
|
||||
# 自定义页面配色
|
||||
主题配色全部在`<root>/themes/shoka/source/css/_colors.styl`文件中,可以自行查看。
|
||||
|
||||
# 修改页面配色
|
||||
自行查看`themes/shoka/source/css/_colors.styl`
|
||||
在`<root>/source/_data/`目录新建文件`colors.styl`,在此文件中添改样式。
|
||||
|
||||
# 修改404页面
|
||||
找到`themes/shoka/layout/page.njk`的第57 - 61行。
|
||||
59行的内容可以任意修改。
|
||||
> 自定义`colors.styl`文件将覆盖主题默认样式,为了避免出错,请保证原有样式名均存在,在原有样式基础上进行增删改。
|
||||
|
||||
如果只是想修改图片的话,位于:`themes/shoka/source/images/404.png`
|
||||
主题支持在`<root>/source/_data/`目录建立三个自定义`styl`文件:
|
||||
|
||||
自定义文件名|对应默认样式文件|样式功能
|
||||
--|--|--
|
||||
`colors.styl`|`_colors.styl`|页面配色
|
||||
`iconfont.styl`|`_iconfont.styl`|[图标样式](../config/#iconfont图标)
|
||||
`custom.styl`| - | 任意自定义样式
|
||||
|
||||
# 自定义主题图片
|
||||
如果想要修改主题的`<root>/themes/shoka/source/images/`目录内的某张图片,请在`<root>/source/_data/`目录新建目录`images`,并在这个文件夹中添加++同名++文件,部署时将自动覆盖主题内的默认图片。
|
||||
|
||||
可以用此方法自定义头像、打赏二维码等图片,并且避免覆盖更新主题时遗失自定义文件。
|
||||
|
||||
# 自定义语言包
|
||||
本功能参考NexT,主要可以用来定义菜单等处显示的文字,且可以方便主题无脑覆盖升级。
|
||||
|
||||
@@ -670,7 +670,7 @@ H~2~0
|
||||
{% endmedia %}
|
||||
```
|
||||
|
||||
标签包绕一段`yml`格式的内容,格式与[背景音乐](config/#背景音乐)的配置类似。
|
||||
标签包绕一段`yml`格式的内容,格式与[背景音乐](../config/#背景音乐)的配置类似。
|
||||
|
||||
亦可以直接使用网易云、虾米、QQ音乐的播放列表、单曲。
|
||||
|
||||
|
||||
@@ -8,7 +8,11 @@
|
||||
{%- set menuText = __('menu.' + name) | replace('menu.', '') %}
|
||||
{%- if parent %}
|
||||
<li class="item dropdown">
|
||||
<a href="javascript:void(0);">{{menuIcon + menuText}}</a>
|
||||
{%- if itemURL == '/' %}
|
||||
<a href="javascript:void(0);">{{menuIcon + menuText}}</a>
|
||||
{%- else %}
|
||||
{{ _url(itemURL, menuIcon + menuText, {rel: 'section'}) }}
|
||||
{%- endif %}
|
||||
<ul class="submenu">
|
||||
{%- else %}
|
||||
<li class="item">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "hexo-theme-shoka",
|
||||
"version": "0.2.4",
|
||||
"version": "0.2.5",
|
||||
"description": "",
|
||||
"author": "Ruri Shimotsuki",
|
||||
"license": "MIT",
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
'use strict';
|
||||
|
||||
const merge = require('hexo-util').deepMerge || require('lodash/merge');
|
||||
const fs = require('hexo-fs');
|
||||
const path = require('path');
|
||||
const yaml = require('js-yaml');
|
||||
|
||||
hexo.on('generateBefore', function () {
|
||||
hexo.extend.filter.register('before_generate', () => {
|
||||
if (hexo.config.theme_config) {
|
||||
hexo.theme.config = merge(hexo.theme.config, hexo.config.theme_config);
|
||||
}
|
||||
@@ -21,6 +24,20 @@ hexo.on('generateBefore', function () {
|
||||
for (const lang of ['en', 'ja', 'zh-CN', 'zh-HK', 'zh-TW']) {
|
||||
mergeLang(lang);
|
||||
}
|
||||
}
|
||||
|
||||
hexo.theme.config.style = {}
|
||||
|
||||
for (const style of ['iconfont', 'colors', 'custom']) {
|
||||
var custom_file = 'source/_data/'+style+'.styl'
|
||||
if (fs.existsSync(custom_file)) {
|
||||
hexo.theme.config.style[style] = path.resolve(hexo.base_dir, custom_file)
|
||||
}
|
||||
}
|
||||
|
||||
if (data.images && data.images.length > 6) {
|
||||
hexo.theme.config.image_list = data.images
|
||||
} else {
|
||||
hexo.theme.config.image_list = yaml.safeLoad(fs.readFileSync(path.join(__dirname, '../../_images.yml')))
|
||||
}
|
||||
})
|
||||
|
||||
26
scripts/generaters/images.js
Normal file
26
scripts/generaters/images.js
Normal file
@@ -0,0 +1,26 @@
|
||||
'use strict';
|
||||
|
||||
const fs = require('hexo-fs');
|
||||
|
||||
hexo.extend.generator.register('images', function(locals){
|
||||
const config = hexo.config;
|
||||
const theme = hexo.theme.config;
|
||||
const dir = 'source/_data/' + theme.images + '/'
|
||||
|
||||
if(!fs.existsSync(dir))
|
||||
return
|
||||
|
||||
var result = []
|
||||
var files = fs.listDirSync(dir)
|
||||
|
||||
files.forEach(file => {
|
||||
result.push({
|
||||
path: theme.images + '/' + file,
|
||||
data: function () {
|
||||
return fs.createReadStream(dir + file)
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
return result;
|
||||
});
|
||||
@@ -7,14 +7,10 @@ const url = require('url');
|
||||
const crypto = require('crypto');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const yaml = require('js-yaml');
|
||||
|
||||
const imageListFile = fs.readFileSync(path.join(__dirname, '../../_images.yml'));
|
||||
const imageList = yaml.safeLoad(imageListFile);
|
||||
|
||||
const randomServer = parseInt(Math.random()*4,10)+1
|
||||
|
||||
const randomBG = function(count = 1, image_server = null) {
|
||||
const randomBG = function(count = 1, image_server = null, image_list = []) {
|
||||
if (image_server) {
|
||||
if(count && count > 1) {
|
||||
var arr = new Array(count);
|
||||
@@ -37,7 +33,7 @@ const randomBG = function(count = 1, image_server = null) {
|
||||
}
|
||||
|
||||
if(count && count > 1) {
|
||||
var shuffled = imageList.slice(0), i = imageList.length, min = i - count, temp, index;
|
||||
var shuffled = image_list.slice(0), i = image_list.length, min = i - count, temp, index;
|
||||
while (i-- > min) {
|
||||
index = Math.floor((i + 1) * Math.random());
|
||||
temp = shuffled[index];
|
||||
@@ -50,7 +46,7 @@ const randomBG = function(count = 1, image_server = null) {
|
||||
});
|
||||
}
|
||||
|
||||
return parseImage(imageList[Math.floor(Math.random() * imageList.length)], 'mw690')
|
||||
return parseImage(image_list[Math.floor(Math.random() * image_list.length)], 'mw690')
|
||||
}
|
||||
|
||||
hexo.extend.helper.register('_url', function(path, text, options = {}) {
|
||||
@@ -120,14 +116,14 @@ hexo.extend.helper.register('_image_url', function(img, path = '') {
|
||||
})
|
||||
|
||||
hexo.extend.helper.register('_cover', function(item, num) {
|
||||
const { statics, js, image_server } = hexo.theme.config;
|
||||
const { statics, js, image_server, image_list } = hexo.theme.config;
|
||||
|
||||
if(item.cover) {
|
||||
return this._image_url(item.cover, item.path)
|
||||
} else if (item.photos && item.photos.length > 0) {
|
||||
return this._image_url(item.photos[0], item.path)
|
||||
} else {
|
||||
return randomBG(num || 1, image_server);
|
||||
return randomBG(num || 1, image_server, image_list);
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
@@ -129,3 +129,36 @@ dd {
|
||||
input, textarea {
|
||||
color: var(--text-color);
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'ic';
|
||||
src: url('//at.alicdn.com/t/font_' + $iconfont + '.eot');
|
||||
src: url('//at.alicdn.com/t/font_' + $iconfont + '.eot?#iefix') format('embedded-opentype'),
|
||||
url('//at.alicdn.com/t/font_' + $iconfont + '.woff2') format('woff2'),
|
||||
url('//at.alicdn.com/t/font_' + $iconfont + '.woff') format('woff'),
|
||||
url('//at.alicdn.com/t/font_' + $iconfont + '.ttf') format('truetype'),
|
||||
url('//at.alicdn.com/t/font_' + $iconfont + '.svg#ic') format('svg');
|
||||
}
|
||||
|
||||
.ic {
|
||||
font-family: "ic" !important;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
text-align: center;
|
||||
width: 1.25em;
|
||||
display: inline-block;
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
text-rendering: auto;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.ic em {
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
.ic-lg {
|
||||
font-size: 1.33333em;
|
||||
line-height: .75em;
|
||||
vertical-align: -.0667em;
|
||||
}
|
||||
|
||||
@@ -1,539 +0,0 @@
|
||||
/* Logo 字体 */
|
||||
@font-face {
|
||||
font-family: "iconfont logo";
|
||||
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
|
||||
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
|
||||
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
|
||||
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
|
||||
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
|
||||
}
|
||||
|
||||
.logo {
|
||||
font-family: "iconfont logo";
|
||||
font-size: 160px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
/* tabs */
|
||||
.nav-tabs {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.nav-tabs .nav-more {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
#tabs {
|
||||
border-bottom: 1px solid #eee;
|
||||
}
|
||||
|
||||
#tabs li {
|
||||
cursor: pointer;
|
||||
width: 100px;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
border-bottom: 2px solid transparent;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
margin-bottom: -1px;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
|
||||
#tabs .active {
|
||||
border-bottom-color: #f00;
|
||||
color: #222;
|
||||
}
|
||||
|
||||
.tab-container .content {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* 页面布局 */
|
||||
.main {
|
||||
padding: 30px 100px;
|
||||
width: 960px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.main .logo {
|
||||
color: #333;
|
||||
text-align: left;
|
||||
margin-bottom: 30px;
|
||||
line-height: 1;
|
||||
height: 110px;
|
||||
margin-top: -50px;
|
||||
overflow: hidden;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
.main .logo a {
|
||||
font-size: 160px;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.helps {
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.helps pre {
|
||||
padding: 20px;
|
||||
margin: 10px 0;
|
||||
border: solid 1px #e7e1cd;
|
||||
background-color: #fffdef;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.icon_lists {
|
||||
width: 100% !important;
|
||||
overflow: hidden;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
.icon_lists li {
|
||||
width: 100px;
|
||||
margin-bottom: 10px;
|
||||
margin-right: 20px;
|
||||
text-align: center;
|
||||
list-style: none !important;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.icon_lists li .code-name {
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
.icon_lists .icon {
|
||||
display: block;
|
||||
height: 100px;
|
||||
line-height: 100px;
|
||||
font-size: 42px;
|
||||
margin: 10px auto;
|
||||
color: #333;
|
||||
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
|
||||
-moz-transition: font-size 0.25s linear, width 0.25s linear;
|
||||
transition: font-size 0.25s linear, width 0.25s linear;
|
||||
}
|
||||
|
||||
.icon_lists .icon:hover {
|
||||
font-size: 100px;
|
||||
}
|
||||
|
||||
.icon_lists .svg-icon {
|
||||
/* 通过设置 font-size 来改变图标大小 */
|
||||
width: 1em;
|
||||
/* 图标和文字相邻时,垂直对齐 */
|
||||
vertical-align: -0.15em;
|
||||
/* 通过设置 color 来改变 SVG 的颜色/fill */
|
||||
fill: currentColor;
|
||||
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
|
||||
normalize.css 中也包含这行 */
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.icon_lists li .name,
|
||||
.icon_lists li .code-name {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
/* markdown 样式 */
|
||||
.markdown {
|
||||
color: #666;
|
||||
font-size: 14px;
|
||||
line-height: 1.8;
|
||||
}
|
||||
|
||||
.highlight {
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
.markdown img {
|
||||
vertical-align: middle;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.markdown h1 {
|
||||
color: #404040;
|
||||
font-weight: 500;
|
||||
line-height: 40px;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
.markdown h2,
|
||||
.markdown h3,
|
||||
.markdown h4,
|
||||
.markdown h5,
|
||||
.markdown h6 {
|
||||
color: #404040;
|
||||
margin: 1.6em 0 0.6em 0;
|
||||
font-weight: 500;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.markdown h1 {
|
||||
font-size: 28px;
|
||||
}
|
||||
|
||||
.markdown h2 {
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
.markdown h3 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.markdown h4 {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.markdown h5 {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.markdown h6 {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.markdown hr {
|
||||
height: 1px;
|
||||
border: 0;
|
||||
background: #e9e9e9;
|
||||
margin: 16px 0;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.markdown p {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
.markdown>p,
|
||||
.markdown>blockquote,
|
||||
.markdown>.highlight,
|
||||
.markdown>ol,
|
||||
.markdown>ul {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
.markdown ul>li {
|
||||
list-style: circle;
|
||||
}
|
||||
|
||||
.markdown>ul li,
|
||||
.markdown blockquote ul>li {
|
||||
margin-left: 20px;
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
.markdown>ul li p,
|
||||
.markdown>ol li p {
|
||||
margin: 0.6em 0;
|
||||
}
|
||||
|
||||
.markdown ol>li {
|
||||
list-style: decimal;
|
||||
}
|
||||
|
||||
.markdown>ol li,
|
||||
.markdown blockquote ol>li {
|
||||
margin-left: 20px;
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
.markdown code {
|
||||
margin: 0 3px;
|
||||
padding: 0 5px;
|
||||
background: #eee;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.markdown strong,
|
||||
.markdown b {
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.markdown>table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0px;
|
||||
empty-cells: show;
|
||||
border: 1px solid #e9e9e9;
|
||||
width: 95%;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
.markdown>table th {
|
||||
white-space: nowrap;
|
||||
color: #333;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.markdown>table th,
|
||||
.markdown>table td {
|
||||
border: 1px solid #e9e9e9;
|
||||
padding: 8px 16px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.markdown>table th {
|
||||
background: #F7F7F7;
|
||||
}
|
||||
|
||||
.markdown blockquote {
|
||||
font-size: 90%;
|
||||
color: #999;
|
||||
border-left: 4px solid #e9e9e9;
|
||||
padding-left: 0.8em;
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
.markdown blockquote p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.markdown .anchor {
|
||||
opacity: 0;
|
||||
transition: opacity 0.3s ease;
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
.markdown .waiting {
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.markdown h1:hover .anchor,
|
||||
.markdown h2:hover .anchor,
|
||||
.markdown h3:hover .anchor,
|
||||
.markdown h4:hover .anchor,
|
||||
.markdown h5:hover .anchor,
|
||||
.markdown h6:hover .anchor {
|
||||
opacity: 1;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.markdown>br,
|
||||
.markdown>p>br {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
background: white;
|
||||
padding: 0.5em;
|
||||
color: #333333;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
.hljs-comment,
|
||||
.hljs-meta {
|
||||
color: #969896;
|
||||
}
|
||||
|
||||
.hljs-string,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-strong,
|
||||
.hljs-emphasis,
|
||||
.hljs-quote {
|
||||
color: #df5000;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag,
|
||||
.hljs-type {
|
||||
color: #a71d5d;
|
||||
}
|
||||
|
||||
.hljs-literal,
|
||||
.hljs-symbol,
|
||||
.hljs-bullet,
|
||||
.hljs-attribute {
|
||||
color: #0086b3;
|
||||
}
|
||||
|
||||
.hljs-section,
|
||||
.hljs-name {
|
||||
color: #63a35c;
|
||||
}
|
||||
|
||||
.hljs-tag {
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.hljs-title,
|
||||
.hljs-attr,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-class,
|
||||
.hljs-selector-attr,
|
||||
.hljs-selector-pseudo {
|
||||
color: #795da3;
|
||||
}
|
||||
|
||||
.hljs-addition {
|
||||
color: #55a532;
|
||||
background-color: #eaffea;
|
||||
}
|
||||
|
||||
.hljs-deletion {
|
||||
color: #bd2c00;
|
||||
background-color: #ffecec;
|
||||
}
|
||||
|
||||
.hljs-link {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
/* 代码高亮 */
|
||||
/* PrismJS 1.15.0
|
||||
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
|
||||
/**
|
||||
* prism.js default theme for JavaScript, CSS and HTML
|
||||
* Based on dabblet (http://dabblet.com)
|
||||
* @author Lea Verou
|
||||
*/
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: black;
|
||||
background: none;
|
||||
text-shadow: 0 1px white;
|
||||
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
word-spacing: normal;
|
||||
word-break: normal;
|
||||
word-wrap: normal;
|
||||
line-height: 1.5;
|
||||
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
tab-size: 4;
|
||||
|
||||
-webkit-hyphens: none;
|
||||
-moz-hyphens: none;
|
||||
-ms-hyphens: none;
|
||||
hyphens: none;
|
||||
}
|
||||
|
||||
pre[class*="language-"]::-moz-selection,
|
||||
pre[class*="language-"] ::-moz-selection,
|
||||
code[class*="language-"]::-moz-selection,
|
||||
code[class*="language-"] ::-moz-selection {
|
||||
text-shadow: none;
|
||||
background: #b3d4fc;
|
||||
}
|
||||
|
||||
pre[class*="language-"]::selection,
|
||||
pre[class*="language-"] ::selection,
|
||||
code[class*="language-"]::selection,
|
||||
code[class*="language-"] ::selection {
|
||||
text-shadow: none;
|
||||
background: #b3d4fc;
|
||||
}
|
||||
|
||||
@media print {
|
||||
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Code blocks */
|
||||
pre[class*="language-"] {
|
||||
padding: 1em;
|
||||
margin: .5em 0;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
:not(pre)>code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
background: #f5f2f0;
|
||||
}
|
||||
|
||||
/* Inline code */
|
||||
:not(pre)>code[class*="language-"] {
|
||||
padding: .1em;
|
||||
border-radius: .3em;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.doctype,
|
||||
.token.cdata {
|
||||
color: slategray;
|
||||
}
|
||||
|
||||
.token.punctuation {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.namespace {
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
.token.property,
|
||||
.token.tag,
|
||||
.token.boolean,
|
||||
.token.number,
|
||||
.token.constant,
|
||||
.token.symbol,
|
||||
.token.deleted {
|
||||
color: #905;
|
||||
}
|
||||
|
||||
.token.selector,
|
||||
.token.attr-name,
|
||||
.token.string,
|
||||
.token.char,
|
||||
.token.builtin,
|
||||
.token.inserted {
|
||||
color: #690;
|
||||
}
|
||||
|
||||
.token.operator,
|
||||
.token.entity,
|
||||
.token.url,
|
||||
.language-css .token.string,
|
||||
.style .token.string {
|
||||
color: #9a6e3a;
|
||||
background: hsla(0, 0%, 100%, .5);
|
||||
}
|
||||
|
||||
.token.atrule,
|
||||
.token.attr-value,
|
||||
.token.keyword {
|
||||
color: #07a;
|
||||
}
|
||||
|
||||
.token.function,
|
||||
.token.class-name {
|
||||
color: #DD4A68;
|
||||
}
|
||||
|
||||
.token.regex,
|
||||
.token.important,
|
||||
.token.variable {
|
||||
color: #e90;
|
||||
}
|
||||
|
||||
.token.important,
|
||||
.token.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.token.italic {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.token.entity {
|
||||
cursor: help;
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
@@ -1,786 +0,0 @@
|
||||
{
|
||||
"id": "1832207",
|
||||
"name": "icon",
|
||||
"font_family": "ic",
|
||||
"css_prefix_text": "i-",
|
||||
"description": "hexo-theme-shoka的icon们",
|
||||
"glyphs": [
|
||||
{
|
||||
"icon_id": "1621430",
|
||||
"name": "静音",
|
||||
"font_class": "volume-off",
|
||||
"unicode": "e61e",
|
||||
"unicode_decimal": 58910
|
||||
},
|
||||
{
|
||||
"icon_id": "1621486",
|
||||
"name": "声音",
|
||||
"font_class": "volume-on",
|
||||
"unicode": "e62c",
|
||||
"unicode_decimal": 58924
|
||||
},
|
||||
{
|
||||
"icon_id": "2767703",
|
||||
"name": "播放",
|
||||
"font_class": "circle-play",
|
||||
"unicode": "e647",
|
||||
"unicode_decimal": 58951
|
||||
},
|
||||
{
|
||||
"icon_id": "2767705",
|
||||
"name": "下一首",
|
||||
"font_class": "forward",
|
||||
"unicode": "e648",
|
||||
"unicode_decimal": 58952
|
||||
},
|
||||
{
|
||||
"icon_id": "2767707",
|
||||
"name": "上一首",
|
||||
"font_class": "backward",
|
||||
"unicode": "e649",
|
||||
"unicode_decimal": 58953
|
||||
},
|
||||
{
|
||||
"icon_id": "2767708",
|
||||
"name": "暂停",
|
||||
"font_class": "circle-pause",
|
||||
"unicode": "e64a",
|
||||
"unicode_decimal": 58954
|
||||
},
|
||||
{
|
||||
"icon_id": "2767709",
|
||||
"name": "单曲循环",
|
||||
"font_class": "loop",
|
||||
"unicode": "e64b",
|
||||
"unicode_decimal": 58955
|
||||
},
|
||||
{
|
||||
"icon_id": "2767710",
|
||||
"name": "列表循环",
|
||||
"font_class": "order",
|
||||
"unicode": "e64c",
|
||||
"unicode_decimal": 58956
|
||||
},
|
||||
{
|
||||
"icon_id": "2767712",
|
||||
"name": "随机播放",
|
||||
"font_class": "random",
|
||||
"unicode": "e64d",
|
||||
"unicode_decimal": 58957
|
||||
},
|
||||
{
|
||||
"icon_id": "10918102",
|
||||
"name": "douban-fill",
|
||||
"font_class": "douban",
|
||||
"unicode": "e75f",
|
||||
"unicode_decimal": 59231
|
||||
},
|
||||
{
|
||||
"icon_id": "5634753",
|
||||
"name": "linux",
|
||||
"font_class": "linux",
|
||||
"unicode": "f1e8",
|
||||
"unicode_decimal": 61928
|
||||
},
|
||||
{
|
||||
"icon_id": "5634785",
|
||||
"name": "opera",
|
||||
"font_class": "opera",
|
||||
"unicode": "f205",
|
||||
"unicode_decimal": 61957
|
||||
},
|
||||
{
|
||||
"icon_id": "5634808",
|
||||
"name": "qq",
|
||||
"font_class": "qq",
|
||||
"unicode": "f216",
|
||||
"unicode_decimal": 61974
|
||||
},
|
||||
{
|
||||
"icon_id": "5634830",
|
||||
"name": "safari",
|
||||
"font_class": "safari",
|
||||
"unicode": "f229",
|
||||
"unicode_decimal": 61993
|
||||
},
|
||||
{
|
||||
"icon_id": "5634848",
|
||||
"name": "snapchat-ghost",
|
||||
"font_class": "snapchat-ghost",
|
||||
"unicode": "f234",
|
||||
"unicode_decimal": 62004
|
||||
},
|
||||
{
|
||||
"icon_id": "5634904",
|
||||
"name": "weixin",
|
||||
"font_class": "weixin",
|
||||
"unicode": "f262",
|
||||
"unicode_decimal": 62050
|
||||
},
|
||||
{
|
||||
"icon_id": "5634909",
|
||||
"name": "windows",
|
||||
"font_class": "windows",
|
||||
"unicode": "f266",
|
||||
"unicode_decimal": 62054
|
||||
},
|
||||
{
|
||||
"icon_id": "6986878",
|
||||
"name": "stars",
|
||||
"font_class": "stars",
|
||||
"unicode": "e8c4",
|
||||
"unicode_decimal": 59588
|
||||
},
|
||||
{
|
||||
"icon_id": "14343500",
|
||||
"name": "apple",
|
||||
"font_class": "apple",
|
||||
"unicode": "e600",
|
||||
"unicode_decimal": 58880
|
||||
},
|
||||
{
|
||||
"icon_id": "14343526",
|
||||
"name": "blackberry",
|
||||
"font_class": "blackberry",
|
||||
"unicode": "e601",
|
||||
"unicode_decimal": 58881
|
||||
},
|
||||
{
|
||||
"icon_id": "14343550",
|
||||
"name": "centos",
|
||||
"font_class": "centos",
|
||||
"unicode": "e602",
|
||||
"unicode_decimal": 58882
|
||||
},
|
||||
{
|
||||
"icon_id": "14343621",
|
||||
"name": "fedora",
|
||||
"font_class": "fedora",
|
||||
"unicode": "e603",
|
||||
"unicode_decimal": 58883
|
||||
},
|
||||
{
|
||||
"icon_id": "14343775",
|
||||
"name": "redhat",
|
||||
"font_class": "redhat",
|
||||
"unicode": "e604",
|
||||
"unicode_decimal": 58884
|
||||
},
|
||||
{
|
||||
"icon_id": "14343836",
|
||||
"name": "ubuntu",
|
||||
"font_class": "ubuntu",
|
||||
"unicode": "e605",
|
||||
"unicode_decimal": 58885
|
||||
},
|
||||
{
|
||||
"icon_id": "14343915",
|
||||
"name": "suse",
|
||||
"font_class": "suse",
|
||||
"unicode": "e606",
|
||||
"unicode_decimal": 58886
|
||||
},
|
||||
{
|
||||
"icon_id": "5634240",
|
||||
"name": "mobile-alt",
|
||||
"font_class": "mobile-alt",
|
||||
"unicode": "f052",
|
||||
"unicode_decimal": 61522
|
||||
},
|
||||
{
|
||||
"icon_id": "5634274",
|
||||
"name": "paw",
|
||||
"font_class": "paw",
|
||||
"unicode": "f06b",
|
||||
"unicode_decimal": 61547
|
||||
},
|
||||
{
|
||||
"icon_id": "5634558",
|
||||
"name": "android",
|
||||
"font_class": "android",
|
||||
"unicode": "f161",
|
||||
"unicode_decimal": 61793
|
||||
},
|
||||
{
|
||||
"icon_id": "5634601",
|
||||
"name": "chrome",
|
||||
"font_class": "chrome",
|
||||
"unicode": "f178",
|
||||
"unicode_decimal": 61816
|
||||
},
|
||||
{
|
||||
"icon_id": "5634647",
|
||||
"name": "edge",
|
||||
"font_class": "edge",
|
||||
"unicode": "f195",
|
||||
"unicode_decimal": 61845
|
||||
},
|
||||
{
|
||||
"icon_id": "5634661",
|
||||
"name": "firefox",
|
||||
"font_class": "firefox",
|
||||
"unicode": "f1a1",
|
||||
"unicode_decimal": 61857
|
||||
},
|
||||
{
|
||||
"icon_id": "5634724",
|
||||
"name": "internet-explorer",
|
||||
"font_class": "internet-explorer",
|
||||
"unicode": "f1d4",
|
||||
"unicode_decimal": 61908
|
||||
},
|
||||
{
|
||||
"icon_id": "5634755",
|
||||
"name": "markdown",
|
||||
"font_class": "markdown",
|
||||
"unicode": "f1eb",
|
||||
"unicode_decimal": 61931
|
||||
},
|
||||
{
|
||||
"icon_id": "5635000",
|
||||
"name": "grin-squint-tears",
|
||||
"font_class": "smile",
|
||||
"unicode": "f2a5",
|
||||
"unicode_decimal": 62117
|
||||
},
|
||||
{
|
||||
"icon_id": "16554499",
|
||||
"name": "preview",
|
||||
"font_class": "preview",
|
||||
"unicode": "e901",
|
||||
"unicode_decimal": 59649
|
||||
},
|
||||
{
|
||||
"icon_id": "14678781",
|
||||
"name": "arrow_uturn_right_circle",
|
||||
"font_class": "share",
|
||||
"unicode": "e61b",
|
||||
"unicode_decimal": 58907
|
||||
},
|
||||
{
|
||||
"icon_id": "14679129",
|
||||
"name": "link_circle",
|
||||
"font_class": "link-circle",
|
||||
"unicode": "e67b",
|
||||
"unicode_decimal": 59003
|
||||
},
|
||||
{
|
||||
"icon_id": "14679219",
|
||||
"name": "person_circle",
|
||||
"font_class": "person",
|
||||
"unicode": "e69d",
|
||||
"unicode_decimal": 59037
|
||||
},
|
||||
{
|
||||
"icon_id": "14679388",
|
||||
"name": "sunrise_fill",
|
||||
"font_class": "sun",
|
||||
"unicode": "e6d1",
|
||||
"unicode_decimal": 59089
|
||||
},
|
||||
{
|
||||
"icon_id": "14679604",
|
||||
"name": "moon_stars_fill",
|
||||
"font_class": "moon",
|
||||
"unicode": "e71e",
|
||||
"unicode_decimal": 59166
|
||||
},
|
||||
{
|
||||
"icon_id": "5633963",
|
||||
"name": "compress",
|
||||
"font_class": "compress",
|
||||
"unicode": "ef82",
|
||||
"unicode_decimal": 61314
|
||||
},
|
||||
{
|
||||
"icon_id": "5634022",
|
||||
"name": "expand",
|
||||
"font_class": "expand",
|
||||
"unicode": "efb4",
|
||||
"unicode_decimal": 61364
|
||||
},
|
||||
{
|
||||
"icon_id": "5633787",
|
||||
"name": "align-justify",
|
||||
"font_class": "align-justify",
|
||||
"unicode": "ef13",
|
||||
"unicode_decimal": 61203
|
||||
},
|
||||
{
|
||||
"icon_id": "5633788",
|
||||
"name": "align-left",
|
||||
"font_class": "align-left",
|
||||
"unicode": "ef14",
|
||||
"unicode_decimal": 61204
|
||||
},
|
||||
{
|
||||
"icon_id": "5634027",
|
||||
"name": "eye",
|
||||
"font_class": "eye",
|
||||
"unicode": "efb8",
|
||||
"unicode_decimal": 61368
|
||||
},
|
||||
{
|
||||
"icon_id": "5634280",
|
||||
"name": "pen-nib",
|
||||
"font_class": "pen",
|
||||
"unicode": "f071",
|
||||
"unicode_decimal": 61553
|
||||
},
|
||||
{
|
||||
"icon_id": "5633943",
|
||||
"name": "clock",
|
||||
"font_class": "clock",
|
||||
"unicode": "ef75",
|
||||
"unicode_decimal": 61301
|
||||
},
|
||||
{
|
||||
"icon_id": "1261708",
|
||||
"name": "flag",
|
||||
"font_class": "flag",
|
||||
"unicode": "e680",
|
||||
"unicode_decimal": 59008
|
||||
},
|
||||
{
|
||||
"icon_id": "1898537",
|
||||
"name": "at",
|
||||
"font_class": "at",
|
||||
"unicode": "e619",
|
||||
"unicode_decimal": 58905
|
||||
},
|
||||
{
|
||||
"icon_id": "1898741",
|
||||
"name": "file-text",
|
||||
"font_class": "file",
|
||||
"unicode": "e68d",
|
||||
"unicode_decimal": 59021
|
||||
},
|
||||
{
|
||||
"icon_id": "1898639",
|
||||
"name": "clipboard",
|
||||
"font_class": "clipboard",
|
||||
"unicode": "e651",
|
||||
"unicode_decimal": 58961
|
||||
},
|
||||
{
|
||||
"icon_id": "5634033",
|
||||
"name": "feather",
|
||||
"font_class": "feather",
|
||||
"unicode": "efbd",
|
||||
"unicode_decimal": 61373
|
||||
},
|
||||
{
|
||||
"icon_id": "5634251",
|
||||
"name": "music",
|
||||
"font_class": "music",
|
||||
"unicode": "f059",
|
||||
"unicode_decimal": 61529
|
||||
},
|
||||
{
|
||||
"icon_id": "5634273",
|
||||
"name": "pause-circle",
|
||||
"font_class": "pause",
|
||||
"unicode": "f06a",
|
||||
"unicode_decimal": 61546
|
||||
},
|
||||
{
|
||||
"icon_id": "5633959",
|
||||
"name": "comments",
|
||||
"font_class": "comments",
|
||||
"unicode": "ef7f",
|
||||
"unicode_decimal": 61311
|
||||
},
|
||||
{
|
||||
"icon_id": "5634295",
|
||||
"name": "play-circle",
|
||||
"font_class": "play",
|
||||
"unicode": "f07f",
|
||||
"unicode_decimal": 61567
|
||||
},
|
||||
{
|
||||
"icon_id": "5633884",
|
||||
"name": "calendar-check",
|
||||
"font_class": "calendar-check",
|
||||
"unicode": "ef5b",
|
||||
"unicode_decimal": 61275
|
||||
},
|
||||
{
|
||||
"icon_id": "5633800",
|
||||
"name": "angle-up",
|
||||
"font_class": "angle-up",
|
||||
"unicode": "ef1b",
|
||||
"unicode_decimal": 61211
|
||||
},
|
||||
{
|
||||
"icon_id": "5634657",
|
||||
"name": "facebook",
|
||||
"font_class": "facebook",
|
||||
"unicode": "f19d",
|
||||
"unicode_decimal": 61853
|
||||
},
|
||||
{
|
||||
"icon_id": "5634723",
|
||||
"name": "instagram",
|
||||
"font_class": "instagram",
|
||||
"unicode": "f1d3",
|
||||
"unicode_decimal": 61907
|
||||
},
|
||||
{
|
||||
"icon_id": "5634843",
|
||||
"name": "skype",
|
||||
"font_class": "skype",
|
||||
"unicode": "f231",
|
||||
"unicode_decimal": 62001
|
||||
},
|
||||
{
|
||||
"icon_id": "5634855",
|
||||
"name": "stack-overflow",
|
||||
"font_class": "stack-overflow",
|
||||
"unicode": "f239",
|
||||
"unicode_decimal": 62009
|
||||
},
|
||||
{
|
||||
"icon_id": "5634925",
|
||||
"name": "youtube",
|
||||
"font_class": "youtube",
|
||||
"unicode": "f274",
|
||||
"unicode_decimal": 62068
|
||||
},
|
||||
{
|
||||
"icon_id": "1261900",
|
||||
"name": "list-alt",
|
||||
"font_class": "list-alt",
|
||||
"unicode": "e6c1",
|
||||
"unicode_decimal": 59073
|
||||
},
|
||||
{
|
||||
"icon_id": "5634398",
|
||||
"name": "star",
|
||||
"font_class": "star",
|
||||
"unicode": "f0d4",
|
||||
"unicode_decimal": 61652
|
||||
},
|
||||
{
|
||||
"icon_id": "5634192",
|
||||
"name": "link",
|
||||
"font_class": "link-alt",
|
||||
"unicode": "f037",
|
||||
"unicode_decimal": 61495
|
||||
},
|
||||
{
|
||||
"icon_id": "5634266",
|
||||
"name": "paper-plane",
|
||||
"font_class": "paper-plane",
|
||||
"unicode": "f063",
|
||||
"unicode_decimal": 61539
|
||||
},
|
||||
{
|
||||
"icon_id": "5635076",
|
||||
"name": "user-circle",
|
||||
"font_class": "user",
|
||||
"unicode": "f2dd",
|
||||
"unicode_decimal": 62173
|
||||
},
|
||||
{
|
||||
"icon_id": "7736185",
|
||||
"name": "link",
|
||||
"font_class": "link",
|
||||
"unicode": "e8fc",
|
||||
"unicode_decimal": 59644
|
||||
},
|
||||
{
|
||||
"icon_id": "5633798",
|
||||
"name": "angle-down",
|
||||
"font_class": "angle-down",
|
||||
"unicode": "ef1a",
|
||||
"unicode_decimal": 61210
|
||||
},
|
||||
{
|
||||
"icon_id": "12692953",
|
||||
"name": "calendar-alt",
|
||||
"font_class": "calendar",
|
||||
"unicode": "e812",
|
||||
"unicode_decimal": 59410
|
||||
},
|
||||
{
|
||||
"icon_id": "7736100",
|
||||
"name": "fort-awesome",
|
||||
"font_class": "home",
|
||||
"unicode": "e8ed",
|
||||
"unicode_decimal": 59629
|
||||
},
|
||||
{
|
||||
"icon_id": "5634205",
|
||||
"name": "magic",
|
||||
"font_class": "magic",
|
||||
"unicode": "f03e",
|
||||
"unicode_decimal": 61502
|
||||
},
|
||||
{
|
||||
"icon_id": "4710397",
|
||||
"name": "sakura-black",
|
||||
"font_class": "sakura",
|
||||
"unicode": "e695",
|
||||
"unicode_decimal": 59029
|
||||
},
|
||||
{
|
||||
"icon_id": "7239917",
|
||||
"name": "tag",
|
||||
"font_class": "tag",
|
||||
"unicode": "e759",
|
||||
"unicode_decimal": 59225
|
||||
},
|
||||
{
|
||||
"icon_id": "5633799",
|
||||
"name": "angle-left",
|
||||
"font_class": "angle-left",
|
||||
"unicode": "ef19",
|
||||
"unicode_decimal": 61209
|
||||
},
|
||||
{
|
||||
"icon_id": "5633812",
|
||||
"name": "arrow-circle-right",
|
||||
"font_class": "arrow-circle-right",
|
||||
"unicode": "ef23",
|
||||
"unicode_decimal": 61219
|
||||
},
|
||||
{
|
||||
"icon_id": "5633915",
|
||||
"name": "check-circle",
|
||||
"font_class": "check-circle",
|
||||
"unicode": "ef66",
|
||||
"unicode_decimal": 61286
|
||||
},
|
||||
{
|
||||
"icon_id": "5634024",
|
||||
"name": "exclamation-circle",
|
||||
"font_class": "exclamation-circle",
|
||||
"unicode": "efb5",
|
||||
"unicode_decimal": 61365
|
||||
},
|
||||
{
|
||||
"icon_id": "5634165",
|
||||
"name": "info-circle",
|
||||
"font_class": "info-circle",
|
||||
"unicode": "f02b",
|
||||
"unicode_decimal": 61483
|
||||
},
|
||||
{
|
||||
"icon_id": "5634237",
|
||||
"name": "minus-circle",
|
||||
"font_class": "minus-circle",
|
||||
"unicode": "f050",
|
||||
"unicode_decimal": 61520
|
||||
},
|
||||
{
|
||||
"icon_id": "5634298",
|
||||
"name": "plus-circle",
|
||||
"font_class": "plus-circle",
|
||||
"unicode": "f082",
|
||||
"unicode_decimal": 61570
|
||||
},
|
||||
{
|
||||
"icon_id": "5634983",
|
||||
"name": "file-word",
|
||||
"font_class": "file-word",
|
||||
"unicode": "f299",
|
||||
"unicode_decimal": 62105
|
||||
},
|
||||
{
|
||||
"icon_id": "5633912",
|
||||
"name": "check",
|
||||
"font_class": "check",
|
||||
"unicode": "ef65",
|
||||
"unicode_decimal": 61285
|
||||
},
|
||||
{
|
||||
"icon_id": "5634457",
|
||||
"name": "times",
|
||||
"font_class": "times",
|
||||
"unicode": "f109",
|
||||
"unicode_decimal": 61705
|
||||
},
|
||||
{
|
||||
"icon_id": "5634195",
|
||||
"name": "list-ol",
|
||||
"font_class": "list-ol",
|
||||
"unicode": "f039",
|
||||
"unicode_decimal": 61497
|
||||
},
|
||||
{
|
||||
"icon_id": "5633803",
|
||||
"name": "archive",
|
||||
"font_class": "archive",
|
||||
"unicode": "ef1c",
|
||||
"unicode_decimal": 61212
|
||||
},
|
||||
{
|
||||
"icon_id": "5633806",
|
||||
"name": "angle-right",
|
||||
"font_class": "angle-right",
|
||||
"unicode": "ef1f",
|
||||
"unicode_decimal": 61215
|
||||
},
|
||||
{
|
||||
"icon_id": "5633814",
|
||||
"name": "arrow-down",
|
||||
"font_class": "arrow-down",
|
||||
"unicode": "ef25",
|
||||
"unicode_decimal": 61221
|
||||
},
|
||||
{
|
||||
"icon_id": "5633820",
|
||||
"name": "arrow-up",
|
||||
"font_class": "arrow-up",
|
||||
"unicode": "ef2a",
|
||||
"unicode_decimal": 61226
|
||||
},
|
||||
{
|
||||
"icon_id": "5633910",
|
||||
"name": "chart-area",
|
||||
"font_class": "chart-area",
|
||||
"unicode": "ef64",
|
||||
"unicode_decimal": 61284
|
||||
},
|
||||
{
|
||||
"icon_id": "5633932",
|
||||
"name": "chevron-left",
|
||||
"font_class": "chevron-left",
|
||||
"unicode": "ef6e",
|
||||
"unicode_decimal": 61294
|
||||
},
|
||||
{
|
||||
"icon_id": "5633933",
|
||||
"name": "chevron-right",
|
||||
"font_class": "chevron-right",
|
||||
"unicode": "ef6f",
|
||||
"unicode_decimal": 61295
|
||||
},
|
||||
{
|
||||
"icon_id": "5633950",
|
||||
"name": "coffee",
|
||||
"font_class": "coffee",
|
||||
"unicode": "ef7a",
|
||||
"unicode_decimal": 61306
|
||||
},
|
||||
{
|
||||
"icon_id": "5634013",
|
||||
"name": "envelope",
|
||||
"font_class": "envelope",
|
||||
"unicode": "efae",
|
||||
"unicode_decimal": 61358
|
||||
},
|
||||
{
|
||||
"icon_id": "5634025",
|
||||
"name": "external-link-alt",
|
||||
"font_class": "external-link-alt",
|
||||
"unicode": "efb6",
|
||||
"unicode_decimal": 61366
|
||||
},
|
||||
{
|
||||
"icon_id": "5634137",
|
||||
"name": "heart",
|
||||
"font_class": "heart",
|
||||
"unicode": "f013",
|
||||
"unicode_decimal": 61459
|
||||
},
|
||||
{
|
||||
"icon_id": "5634142",
|
||||
"name": "heartbeat",
|
||||
"font_class": "heartbeat",
|
||||
"unicode": "f017",
|
||||
"unicode_decimal": 61463
|
||||
},
|
||||
{
|
||||
"icon_id": "5634346",
|
||||
"name": "search",
|
||||
"font_class": "search",
|
||||
"unicode": "f0a8",
|
||||
"unicode_decimal": 61608
|
||||
},
|
||||
{
|
||||
"icon_id": "5634371",
|
||||
"name": "sitemap",
|
||||
"font_class": "sitemap",
|
||||
"unicode": "f0bd",
|
||||
"unicode_decimal": 61629
|
||||
},
|
||||
{
|
||||
"icon_id": "5634433",
|
||||
"name": "tags",
|
||||
"font_class": "tags",
|
||||
"unicode": "f0f3",
|
||||
"unicode_decimal": 61683
|
||||
},
|
||||
{
|
||||
"icon_id": "5634443",
|
||||
"name": "th",
|
||||
"font_class": "th",
|
||||
"unicode": "f0fc",
|
||||
"unicode_decimal": 61692
|
||||
},
|
||||
{
|
||||
"icon_id": "5634455",
|
||||
"name": "thumbtack",
|
||||
"font_class": "thumbtack",
|
||||
"unicode": "f107",
|
||||
"unicode_decimal": 61703
|
||||
},
|
||||
{
|
||||
"icon_id": "5634458",
|
||||
"name": "times-circle",
|
||||
"font_class": "times-circle",
|
||||
"unicode": "f10a",
|
||||
"unicode_decimal": 61706
|
||||
},
|
||||
{
|
||||
"icon_id": "5634610",
|
||||
"name": "creative-commons",
|
||||
"font_class": "creative-commons",
|
||||
"unicode": "f17e",
|
||||
"unicode_decimal": 61822
|
||||
},
|
||||
{
|
||||
"icon_id": "5634687",
|
||||
"name": "github",
|
||||
"font_class": "github",
|
||||
"unicode": "f1b4",
|
||||
"unicode_decimal": 61876
|
||||
},
|
||||
{
|
||||
"icon_id": "5634881",
|
||||
"name": "twitter",
|
||||
"font_class": "twitter",
|
||||
"unicode": "f24d",
|
||||
"unicode_decimal": 62029
|
||||
},
|
||||
{
|
||||
"icon_id": "5634903",
|
||||
"name": "weibo",
|
||||
"font_class": "weibo",
|
||||
"unicode": "f261",
|
||||
"unicode_decimal": 62049
|
||||
},
|
||||
{
|
||||
"icon_id": "5634930",
|
||||
"name": "address-card",
|
||||
"font_class": "address-card",
|
||||
"unicode": "f278",
|
||||
"unicode_decimal": 62072
|
||||
},
|
||||
{
|
||||
"icon_id": "7239960",
|
||||
"name": "zhihu",
|
||||
"font_class": "zhihu",
|
||||
"unicode": "e765",
|
||||
"unicode_decimal": 59237
|
||||
},
|
||||
{
|
||||
"icon_id": "10918145",
|
||||
"name": "netease-cloud-music-line",
|
||||
"font_class": "cloud-music",
|
||||
"unicode": "e76a",
|
||||
"unicode_decimal": 59242
|
||||
}
|
||||
]
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 106 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,36 +1,3 @@
|
||||
@font-face {
|
||||
font-family: 'ic'; /* project id 1832207 */
|
||||
src: url('//at.alicdn.com/t/font_1832207_c8i9n1ulxlt.eot');
|
||||
src: url('//at.alicdn.com/t/font_1832207_c8i9n1ulxlt.eot?#iefix') format('embedded-opentype'),
|
||||
url('//at.alicdn.com/t/font_1832207_c8i9n1ulxlt.woff2') format('woff2'),
|
||||
url('//at.alicdn.com/t/font_1832207_c8i9n1ulxlt.woff') format('woff'),
|
||||
url('//at.alicdn.com/t/font_1832207_c8i9n1ulxlt.ttf') format('truetype'),
|
||||
url('//at.alicdn.com/t/font_1832207_c8i9n1ulxlt.svg#ic') format('svg');
|
||||
}
|
||||
|
||||
.ic {
|
||||
font-family: "ic" !important;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
text-align: center;
|
||||
width: 1.25em;
|
||||
display: inline-block;
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
text-rendering: auto;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.ic em {
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
.ic-lg {
|
||||
font-size: 1.33333em;
|
||||
line-height: .75em;
|
||||
vertical-align: -.0667em;
|
||||
}
|
||||
|
||||
.i-volume-off:before {
|
||||
content: "\e61e";
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// Scaffolding
|
||||
// ==================================================
|
||||
@import 'normalize';
|
||||
@import 'iconfont';
|
||||
@import 'scrollbar';
|
||||
@import 'animate';
|
||||
@import 'base';
|
||||
|
||||
443
source/css/_iconfont.styl
Normal file
443
source/css/_iconfont.styl
Normal file
@@ -0,0 +1,443 @@
|
||||
.i-volume-off:before {
|
||||
content: "\e61e";
|
||||
}
|
||||
|
||||
.i-volume-on:before {
|
||||
content: "\e62c";
|
||||
}
|
||||
|
||||
.i-circle-play:before {
|
||||
content: "\e647";
|
||||
}
|
||||
|
||||
.i-forward:before {
|
||||
content: "\e648";
|
||||
}
|
||||
|
||||
.i-backward:before {
|
||||
content: "\e649";
|
||||
}
|
||||
|
||||
.i-circle-pause:before {
|
||||
content: "\e64a";
|
||||
}
|
||||
|
||||
.i-loop:before {
|
||||
content: "\e64b";
|
||||
}
|
||||
|
||||
.i-order:before {
|
||||
content: "\e64c";
|
||||
}
|
||||
|
||||
.i-random:before {
|
||||
content: "\e64d";
|
||||
}
|
||||
|
||||
.i-douban:before {
|
||||
content: "\e75f";
|
||||
}
|
||||
|
||||
.i-linux:before {
|
||||
content: "\f1e8";
|
||||
}
|
||||
|
||||
.i-opera:before {
|
||||
content: "\f205";
|
||||
}
|
||||
|
||||
.i-qq:before {
|
||||
content: "\f216";
|
||||
}
|
||||
|
||||
.i-safari:before {
|
||||
content: "\f229";
|
||||
}
|
||||
|
||||
.i-snapchat-ghost:before {
|
||||
content: "\f234";
|
||||
}
|
||||
|
||||
.i-weixin:before {
|
||||
content: "\f262";
|
||||
}
|
||||
|
||||
.i-windows:before {
|
||||
content: "\f266";
|
||||
}
|
||||
|
||||
.i-stars:before {
|
||||
content: "\e8c4";
|
||||
}
|
||||
|
||||
.i-apple:before {
|
||||
content: "\e600";
|
||||
}
|
||||
|
||||
.i-blackberry:before {
|
||||
content: "\e601";
|
||||
}
|
||||
|
||||
.i-centos:before {
|
||||
content: "\e602";
|
||||
}
|
||||
|
||||
.i-fedora:before {
|
||||
content: "\e603";
|
||||
}
|
||||
|
||||
.i-redhat:before {
|
||||
content: "\e604";
|
||||
}
|
||||
|
||||
.i-ubuntu:before {
|
||||
content: "\e605";
|
||||
}
|
||||
|
||||
.i-suse:before {
|
||||
content: "\e606";
|
||||
}
|
||||
|
||||
.i-mobile-alt:before {
|
||||
content: "\f052";
|
||||
}
|
||||
|
||||
.i-paw:before {
|
||||
content: "\f06b";
|
||||
}
|
||||
|
||||
.i-android:before {
|
||||
content: "\f161";
|
||||
}
|
||||
|
||||
.i-chrome:before {
|
||||
content: "\f178";
|
||||
}
|
||||
|
||||
.i-edge:before {
|
||||
content: "\f195";
|
||||
}
|
||||
|
||||
.i-firefox:before {
|
||||
content: "\f1a1";
|
||||
}
|
||||
|
||||
.i-internet-explorer:before {
|
||||
content: "\f1d4";
|
||||
}
|
||||
|
||||
.i-markdown:before {
|
||||
content: "\f1eb";
|
||||
}
|
||||
|
||||
.i-smile:before {
|
||||
content: "\f2a5";
|
||||
}
|
||||
|
||||
.i-preview:before {
|
||||
content: "\e901";
|
||||
}
|
||||
|
||||
.i-share:before {
|
||||
content: "\e61b";
|
||||
}
|
||||
|
||||
.i-link-circle:before {
|
||||
content: "\e67b";
|
||||
}
|
||||
|
||||
.i-person:before {
|
||||
content: "\e69d";
|
||||
}
|
||||
|
||||
.i-sun:before {
|
||||
content: "\e6d1";
|
||||
}
|
||||
|
||||
.i-moon:before {
|
||||
content: "\e71e";
|
||||
}
|
||||
|
||||
.i-compress:before {
|
||||
content: "\ef82";
|
||||
}
|
||||
|
||||
.i-expand:before {
|
||||
content: "\efb4";
|
||||
}
|
||||
|
||||
.i-align-justify:before {
|
||||
content: "\ef13";
|
||||
}
|
||||
|
||||
.i-align-left:before {
|
||||
content: "\ef14";
|
||||
}
|
||||
|
||||
.i-eye:before {
|
||||
content: "\efb8";
|
||||
}
|
||||
|
||||
.i-pen:before {
|
||||
content: "\f071";
|
||||
}
|
||||
|
||||
.i-clock:before {
|
||||
content: "\ef75";
|
||||
}
|
||||
|
||||
.i-flag:before {
|
||||
content: "\e680";
|
||||
}
|
||||
|
||||
.i-at:before {
|
||||
content: "\e619";
|
||||
}
|
||||
|
||||
.i-file:before {
|
||||
content: "\e68d";
|
||||
}
|
||||
|
||||
.i-clipboard:before {
|
||||
content: "\e651";
|
||||
}
|
||||
|
||||
.i-feather:before {
|
||||
content: "\efbd";
|
||||
}
|
||||
|
||||
.i-music:before {
|
||||
content: "\f059";
|
||||
}
|
||||
|
||||
.i-pause:before {
|
||||
content: "\f06a";
|
||||
}
|
||||
|
||||
.i-comments:before {
|
||||
content: "\ef7f";
|
||||
}
|
||||
|
||||
.i-play:before {
|
||||
content: "\f07f";
|
||||
}
|
||||
|
||||
.i-calendar-check:before {
|
||||
content: "\ef5b";
|
||||
}
|
||||
|
||||
.i-angle-up:before {
|
||||
content: "\ef1b";
|
||||
}
|
||||
|
||||
.i-facebook:before {
|
||||
content: "\f19d";
|
||||
}
|
||||
|
||||
.i-instagram:before {
|
||||
content: "\f1d3";
|
||||
}
|
||||
|
||||
.i-skype:before {
|
||||
content: "\f231";
|
||||
}
|
||||
|
||||
.i-stack-overflow:before {
|
||||
content: "\f239";
|
||||
}
|
||||
|
||||
.i-youtube:before {
|
||||
content: "\f274";
|
||||
}
|
||||
|
||||
.i-list-alt:before {
|
||||
content: "\e6c1";
|
||||
}
|
||||
|
||||
.i-star:before {
|
||||
content: "\f0d4";
|
||||
}
|
||||
|
||||
.i-link-alt:before {
|
||||
content: "\f037";
|
||||
}
|
||||
|
||||
.i-paper-plane:before {
|
||||
content: "\f063";
|
||||
}
|
||||
|
||||
.i-user:before {
|
||||
content: "\f2dd";
|
||||
}
|
||||
|
||||
.i-link:before {
|
||||
content: "\e8fc";
|
||||
}
|
||||
|
||||
.i-angle-down:before {
|
||||
content: "\ef1a";
|
||||
}
|
||||
|
||||
.i-calendar:before {
|
||||
content: "\e812";
|
||||
}
|
||||
|
||||
.i-home:before {
|
||||
content: "\e8ed";
|
||||
}
|
||||
|
||||
.i-magic:before {
|
||||
content: "\f03e";
|
||||
}
|
||||
|
||||
.i-sakura:before {
|
||||
content: "\e695";
|
||||
}
|
||||
|
||||
.i-tag:before {
|
||||
content: "\e759";
|
||||
}
|
||||
|
||||
.i-angle-left:before {
|
||||
content: "\ef19";
|
||||
}
|
||||
|
||||
.i-arrow-circle-right:before {
|
||||
content: "\ef23";
|
||||
}
|
||||
|
||||
.i-check-circle:before {
|
||||
content: "\ef66";
|
||||
}
|
||||
|
||||
.i-exclamation-circle:before {
|
||||
content: "\efb5";
|
||||
}
|
||||
|
||||
.i-info-circle:before {
|
||||
content: "\f02b";
|
||||
}
|
||||
|
||||
.i-minus-circle:before {
|
||||
content: "\f050";
|
||||
}
|
||||
|
||||
.i-plus-circle:before {
|
||||
content: "\f082";
|
||||
}
|
||||
|
||||
.i-file-word:before {
|
||||
content: "\f299";
|
||||
}
|
||||
|
||||
.i-check:before {
|
||||
content: "\ef65";
|
||||
}
|
||||
|
||||
.i-times:before {
|
||||
content: "\f109";
|
||||
}
|
||||
|
||||
.i-list-ol:before {
|
||||
content: "\f039";
|
||||
}
|
||||
|
||||
.i-archive:before {
|
||||
content: "\ef1c";
|
||||
}
|
||||
|
||||
.i-angle-right:before {
|
||||
content: "\ef1f";
|
||||
}
|
||||
|
||||
.i-arrow-down:before {
|
||||
content: "\ef25";
|
||||
}
|
||||
|
||||
.i-arrow-up:before {
|
||||
content: "\ef2a";
|
||||
}
|
||||
|
||||
.i-chart-area:before {
|
||||
content: "\ef64";
|
||||
}
|
||||
|
||||
.i-chevron-left:before {
|
||||
content: "\ef6e";
|
||||
}
|
||||
|
||||
.i-chevron-right:before {
|
||||
content: "\ef6f";
|
||||
}
|
||||
|
||||
.i-coffee:before {
|
||||
content: "\ef7a";
|
||||
}
|
||||
|
||||
.i-envelope:before {
|
||||
content: "\efae";
|
||||
}
|
||||
|
||||
.i-external-link-alt:before {
|
||||
content: "\efb6";
|
||||
}
|
||||
|
||||
.i-heart:before {
|
||||
content: "\f013";
|
||||
}
|
||||
|
||||
.i-heartbeat:before {
|
||||
content: "\f017";
|
||||
}
|
||||
|
||||
.i-search:before {
|
||||
content: "\f0a8";
|
||||
}
|
||||
|
||||
.i-sitemap:before {
|
||||
content: "\f0bd";
|
||||
}
|
||||
|
||||
.i-tags:before {
|
||||
content: "\f0f3";
|
||||
}
|
||||
|
||||
.i-th:before {
|
||||
content: "\f0fc";
|
||||
}
|
||||
|
||||
.i-thumbtack:before {
|
||||
content: "\f107";
|
||||
}
|
||||
|
||||
.i-times-circle:before {
|
||||
content: "\f10a";
|
||||
}
|
||||
|
||||
.i-creative-commons:before {
|
||||
content: "\f17e";
|
||||
}
|
||||
|
||||
.i-github:before {
|
||||
content: "\f1b4";
|
||||
}
|
||||
|
||||
.i-twitter:before {
|
||||
content: "\f24d";
|
||||
}
|
||||
|
||||
.i-weibo:before {
|
||||
content: "\f261";
|
||||
}
|
||||
|
||||
.i-address-card:before {
|
||||
content: "\f278";
|
||||
}
|
||||
|
||||
.i-zhihu:before {
|
||||
content: "\e765";
|
||||
}
|
||||
|
||||
.i-cloud-music:before {
|
||||
content: "\e76a";
|
||||
}
|
||||
@@ -34,6 +34,7 @@ $font-family-posts = get_font_family('posts'), $font-family-base if get_f
|
||||
$font-family-monospace = consolas, Menlo, $font-family-chinese;
|
||||
$font-family-monospace = get_font_family('codes'), consolas, Menlo, $font-family-chinese if get_font_family('codes');
|
||||
|
||||
$iconfont = hexo-config('iconfont');
|
||||
|
||||
// Font size
|
||||
$font-size-base = (hexo-config('font.enable') and hexo-config('font.global.size') is a 'unit') ? unit(hexo-config('font.global.size'), em) : 1em;
|
||||
|
||||
@@ -1,8 +1,16 @@
|
||||
@import "_variables.styl";
|
||||
@import "_variables";
|
||||
|
||||
@import "_mixins.styl";
|
||||
@import "_mixins";
|
||||
|
||||
@import "_colors.styl";
|
||||
if $colors = hexo-config('style.colors')
|
||||
@import $colors;
|
||||
else
|
||||
@import "_colors";
|
||||
|
||||
if $_iconfont = hexo-config('style.iconfont')
|
||||
@import $_iconfont;
|
||||
else
|
||||
@import "_iconfont";
|
||||
|
||||
// Scaffolding
|
||||
@import "_common/scaffolding";
|
||||
@@ -12,3 +20,6 @@
|
||||
|
||||
// Components
|
||||
@import "_common/components";
|
||||
|
||||
if $custom = hexo-config('style.custom')
|
||||
@import $custom;
|
||||
|
||||
@@ -99,6 +99,7 @@ const postFancybox = function(p) {
|
||||
}
|
||||
}
|
||||
if(info = element.attr('title')) {
|
||||
$imageWrapLink.attr('data-caption', info);
|
||||
var para = document.createElement('span');
|
||||
var txt = document.createTextNode(info);
|
||||
para.appendChild(txt);
|
||||
|
||||
Reference in New Issue
Block a user