├── .gitignore
├── .travis.yml
├── CHANGELOG.md
├── LICENSE
├── README.md
├── README.zhCN.md
├── _config.yml
├── gulpfile.js
├── languages
├── en-us.yml
└── zh-hans.yml
├── layout
├── _partial
│ ├── _page.ejs
│ ├── _post.ejs
│ ├── archive.ejs
│ ├── comments.ejs
│ ├── footer.ejs
│ ├── head.ejs
│ ├── leftMenu.ejs
│ └── middleCover.ejs
├── _widget
│ ├── ads
│ │ ├── adSense-scripts.ejs
│ │ ├── adSense.ejs
│ │ └── adaptive-unit.ejs
│ ├── category-items.ejs
│ ├── common-article.ejs
│ ├── search-bar.ejs
│ ├── sns-entry.ejs
│ ├── third-scripts.ejs
│ └── user-entry.ejs
├── archive.ejs
├── category.ejs
├── index.ejs
├── layout.ejs
├── page.ejs
├── post.ejs
├── tag.ejs
└── tags.ejs
├── package.json
├── pnpm-lock.yaml
└── source
├── 404.html
├── css
├── JSimple.css
├── JSimple.min.css
├── atom-one-dark.min.css
├── atom-one-light.min.css
├── default.min.css
├── fonts
│ ├── FontAwesome.otf
│ ├── FontModule.css
│ ├── fontawesome-webfont.eot
│ ├── fontawesome-webfont.svg
│ ├── fontawesome-webfont.ttf
│ ├── fontawesome-webfont.woff
│ └── fontawesome-webfont.woff2
├── github-dark.min.css
├── github-light.min.css
├── highlight
│ ├── atom-one-dark.css
│ ├── atom-one-light.css
│ ├── default.css
│ ├── github-dark.css
│ ├── github-light.css
│ ├── one-dark.css
│ ├── one-light.css
│ ├── solarized-dark.css
│ ├── solarized-light.css
│ ├── tokyo-night-dark.css
│ └── tokyo-night-light.css
├── one-dark.min.css
├── one-light.min.css
├── solarized-dark.min.css
├── solarized-light.min.css
├── tokyo-night-dark.min.css
└── tokyo-night-light.min.css
├── images
├── 404-bg.webp
├── JSimple-Desktop-With-LocalSearch.png
├── JSimple-Desktop.png
├── avatar.webp
├── cover-day.webp
├── cover-night.webp
├── favicon.png
├── favicon.svg
├── logo.webp
├── pagespeed-test.png
├── rssFeed-bg.webp
└── tags-bg.webp
├── js
├── SimpleCore.min.js
└── lib
│ ├── SimpleCore.js
│ └── zepto.min.js
└── warn.html
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | Thumbs.db
3 | *.log
4 | node_modules/
5 |
6 | ## Directory-based project format:
7 | .idea/
8 | .vscode/
9 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "12.20.0"
4 | install:
5 | npm install
6 | script:
7 | npm test && npm run build
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | #### I decide to make a change log for this project from 2019. Just want remember all of us's coding footprint.
2 |
3 |
4 |
5 | v1.1.0 - Aug 9, 2024
6 |
7 | > Long time no see, this version brings many updates and optimizations. Maybe it's the last update, use it and cherish it!
8 |
9 | * remove all those unnecessary configrations, keep it simpify, optimization and re-optimization
10 | * updated a lot of styles for home-page and post-page, even on mobile
11 | * use webp files insted of png which were default use under the theme images
12 | * added common highlight css themes for coding posts
13 | * accelerated website access, especially improved SEO performance. Now analyzed using the [pagespeed](https://pagespeed.web.dev) test with a score of 95 or higher
14 | * gulp support, that means we could use the best source files support
15 |
16 |
17 | v1.0.2 - May 18, 2021
18 |
19 | * optimize code line number width
20 | * fixed nav menu active background style
21 | * upgrade tag cloud, see: https://github.com/D0n9X1n/hexo-tag-cloud
22 | * update 404 default page styles
23 |
24 | v1.0.1 - Jua 16, 2021
25 |
26 | * optimize source loading time
27 | * optimize cover image loading
28 | * forbidden busuanzi fetch in homepage
29 | * fixed mathjax display problems
30 |
31 | v1.0.0 - July 26, 2020
32 |
33 | * combine and compress js & css
34 |
35 |
36 | v0.0.9.2 - July 25, 2020
37 |
38 | * Sns information update
39 | * Upgrade gitTalk js lib
40 |
41 |
42 | v0.0.9 - July 9, 2020
43 |
44 | * Cover image bugfix, see [issues-52](https://github.com/tangkunyin/hexo-theme-jsimple/issues/52)
45 | * Fix wrong guide url in readme.
46 | * Replace JQuery with Zepto which made lib size reduce to 9.7kb.
47 | * Remove lazyload image code. You can use this: https://www.npmjs.com/package/hexo-lazyload-image
48 |
49 |
50 | v0.0.8 - Mar 3, 2019
51 |
52 | * Gitalk support by pr [pr-36](https://github.com/tangkunyin/hexo-theme-jsimple/pull/36)
53 | * Default reading mode support [issues-37](https://github.com/tangkunyin/hexo-theme-jsimple/issues/37)
54 | * Code line number style error fixed [issues-32](https://github.com/tangkunyin/hexo-theme-jsimple/issues/32)
55 | * Hexo server error when local-search not been set [issues-34](https://github.com/tangkunyin/hexo-theme-jsimple/issues/34)
56 | * Baidu auto push support
57 | * Remove archive author when always you
58 | * Mathjax support
59 |
60 | v0.0.7 - Jau 12, 2019
61 |
62 | * Some `colors`、`font styles`、`body styles` optimized
63 | * Fixed the code-highlight-style spaces defects in night model
64 | * Make copyright year text to configurable
65 | * Update default donate qrcode and some tips
66 | * Update csp model field and 404 page description
67 | * Analytics now only support google
68 | * Google AdSense now support
69 | * Replace search module with `hexo-generator-search`
70 | * Image lazy-load support
71 | * ScrollBar hidden and go2Top bug fixed in Chrome
72 | * I18N optimized(English Only)
73 | * Post sticky top support
74 |
75 |
76 | v0.0.6 - Nov 5, 2018
77 |
78 | ...
79 |
80 | v0.0.5 - Jan 20, 2018
81 |
82 | ...
83 |
84 | v0.0.4 - Sep 3, 2017
85 |
86 | ...
87 |
88 | v0.0.3 - Sep 3, 2017
89 |
90 | ...
91 |
92 | v0.0.2 - Mar 5, 2017
93 |
94 | ...
95 |
96 | v0.0.1 - Feb 22, 2017
97 |
98 | * `JSimple` was born at the end of 2016. Feb 22, 2017, the first version was released.
99 |
100 |
101 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2016 Mr.Seven
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # JSimple
2 |
3 | > The style of this theme is inspired by the earlier stage of Jianshu.com
4 |
5 | **JSimple is a responsive blog theme for Hexo, including local search, day-night mode, article view count, etc.**.
6 |
7 | - [**☞ Preview Demo**](https://tomartisan.com) | [**For Chinese click here**](https://github.com/tangkunyin/hexo-theme-jsimple/blob/master/README.zhCN.md)
8 |
9 | 
10 |
11 |
12 | ## Usage
13 |
14 | ### 1. Download it to the theme folder of Hexo site
15 |
16 | ```bash
17 | cd themes
18 |
19 | git clone https://github.com/tangkunyin/hexo-theme-jsimple
20 | ```
21 |
22 | ### 2. Add dependencies for runtime
23 |
24 | ```bash
25 | yarn add hexo-generator-search hexo-generator-sitemap
26 | ```
27 |
28 | ### 3. Configurations for site and theme
29 |
30 | 1. Enable new theme: `theme: hexo-theme-jsimple`
31 | 2. Configure categories, local-search, site-map
32 |
33 | #### Config Details
34 |
35 | ##### For Site
36 |
37 | ```yml
38 | # Enable theme
39 | theme: hexo-theme-jsimple
40 |
41 | # Enable local search, you must do this, otherwise it will not work for search(when press 'Shift' key)
42 | search:
43 | path: search.json
44 | field: all
45 | content: true
46 |
47 |
48 | # Sitemap config. It's not necessary.
49 | ## Doc: https://github.com/hexojs/hexo-generator-sitemap#readme
50 | sitemap:
51 | rel: true
52 | tags: true
53 | categories: true
54 | path:
55 | - sitemap.xml
56 | - sitemap.txt
57 |
58 | # Category settings, need to correspond one-to-one in the theme settings. It is not recommended to have too many article categories
59 | default_category: top1
60 | category_map:
61 | 顶部菜单1: top1
62 | 顶部菜单2: top2
63 | 顶部菜单3: top3
64 | 顶部菜单4: top4
65 | ```
66 |
67 |
68 | ##### For theme
69 |
70 | Config file under the theme folder, also named `_config.yml`. We can put site info, and third extensions in it.
71 |
72 | **Note: For site statistics and comments, only Google and Disqus are supported, and since there is no intention to support anything else, please do not submit PRs or ISSUES for this**, if you need other features, just do it yourself.
73 |
74 | > PS: The current version brings many updates and optimizations, enough to cover most application scenarios. so use it and cherish it, maybe the last update.
75 |
76 | 
77 |
78 | ## Other notes
79 |
80 | #### Local Search
81 |
82 | 
83 |
84 | Because the search in the previous version didn't work well. Such as highlighting content, and responsive problems on small screens.
85 |
86 | So I replace it with `hexo-generator-search`. Thanks for [Next](https://github.com/theme-next/hexo-theme-next) theme.
87 |
88 | There are two Chinese articles that told how to create local-search in Hexo.
89 |
90 | - [hexo-generator-search](https://github.com/wzpan/hexo-generator-search)
91 | - [为 Hexo 博客创建本地搜索引擎](https://liam.page/2017/09/21/local-search-engine-in-Hexo-site/)
92 |
93 |
94 | #### AdSence
95 |
96 | From version `0.0.7`. Google AdSense has been added. If you don't need this, just close it.
97 |
98 |
99 | #### Something about Hexo optimizations
100 |
101 | > I have written some posts for optimizing Hexo usage, if need please refer below articles
102 |
103 | - [JSimple主题用户指南](https://tomartisan.com/groceries/jsimple-usage/)
104 | - [在hexo博客中打造相对完美的URL](https://tomartisan.com/groceries/hexo-perfect-link/)
105 | - [将Hexo博客url优化进行到底](https://tomartisan.com/groceries/permalink-optimize-hexo/)
106 | - [Update-for-JSimple-in-Early2019](https://tomartisan.com/groceries/the-update-for-jsimple-in-early2019/)
107 |
108 | ## Browser support
109 |
110 | 
111 |
112 |
113 | ## Contributing
114 |
115 | All kinds of contributions (enhancements, new features, documentation & code improvements, issues & bugs reporting) are welcome.
116 |
117 | Looking forward to your pull request.
118 |
119 | > Special thanks to iTimeTraveler and jiangmuzi, who designed the theme [Hipaper](https://github.com/iTimeTraveler/hexo-theme-hipaper) and [JianShu](https://github.com/jiangmuzi/jianshu).
120 |
121 |
122 | ## License
123 |
124 | JSimple is under the MIT license. See the [LICENSE](https://github.com/tangkunyin/hexo-theme-jsimple/blob/master/LICENSE) file for details.
125 |
126 | ## Thanks
127 |
128 | [Hexo](https://hexo.io)
129 | [Font Awesome](http://fontawesome.io)
130 |
131 |
132 |
--------------------------------------------------------------------------------
/README.zhCN.md:
--------------------------------------------------------------------------------
1 | # JSimple
2 |
3 | > 主题样式参考简书早期时候的风格
4 |
5 | **适用于Hexo的三栏式主题。支持响应式、站内搜索、主流评论系统、文章浏览统计以及白天和夜间模式**.
6 |
7 | [**☞ 一睹为快**](https://tomartisan.com) | [**For English Document click here**](https://github.com/tangkunyin/hexo-theme-jsimple/blob/master/README.md)
8 |
9 | 
10 |
11 | ## 使用简介
12 |
13 | ### 1. 下载代码到hexo站点的theme文件夹
14 |
15 | ```bash
16 | cd themes
17 |
18 | git clone https://github.com/tangkunyin/hexo-theme-jsimple
19 | ```
20 |
21 | ### 2. 添加必要的依赖
22 |
23 | ```bash
24 | yarn add hexo-generator-search hexo-generator-sitemap
25 | ```
26 |
27 | ### 3. 站点配置文件,更新主题设置和主题必须的配置
28 |
29 | 1. 启用新主题:`theme: hexo-theme-jsimple`
30 | 2. 配置分类、搜索、站点地图等设置项(下文详述)
31 |
32 |
33 | ### 4. 运行测试
34 |
35 | ```bash
36 | yarn run server
37 |
38 | or
39 |
40 | hexo s
41 | ```
42 |
43 |
44 | ## 配置说明
45 |
46 | ### 站点配置
47 |
48 | ```yml
49 | # 启用主题
50 | theme: hexo-theme-jsimple
51 |
52 | # 本地搜索配置,如果此项不配置。主题则无法使用搜索功能
53 | search:
54 | path: search.json
55 | field: all
56 | content: true
57 |
58 |
59 | # 网站地图配置
60 | ## Doc: https://github.com/hexojs/hexo-generator-sitemap#readme
61 | sitemap:
62 | rel: true
63 | tags: true
64 | categories: true
65 | path:
66 | - sitemap.xml
67 | - sitemap.txt
68 |
69 | # 分类配置,此处需要和主题中一一对应。文章分类不建议设置过多
70 | default_category: top1
71 | category_map:
72 | 顶部菜单1: top1
73 | 顶部菜单2: top2
74 | 顶部菜单3: top3
75 | 顶部菜单4: top4
76 | ```
77 |
78 | ### 主题配置
79 |
80 | 在主题目录下的`_config.yml`中,设置站点信息、三方功能增强等。
81 | 由于 [_config.yml](https://github.com/tangkunyin/hexo-theme-jsimple/blob/master/_config.yml) 文件每一项头部均有说明,配置一看就明白了,此处就不再赘述。
82 |
83 | **要注意的是:对于站点统计和评论,仅支持Google和Disqus。因为就不打算支持别的,所以请勿提交这方面的PR或ISSUES**,像国内的备案号或其他模块更不会支持,有需要的朋友请自行解决。
84 |
85 | > PS:目前支持的功能基本上能完美覆盖正常使用,因此这或许是继上一次以来的最后一波更新。且用,且珍惜!
86 |
87 | 
88 |
89 | ### 其他
90 |
91 | #### 搜索模块
92 |
93 | 
94 |
95 | 鉴于旧版本搜索有样式问题,另外检索词并不能匹配文章,也不能突出颜色。所以新版直接换成了`hexo-generator-search`
96 |
97 | - [hexo-generator-search](https://github.com/wzpan/hexo-generator-search)
98 | - [为 Hexo 博客创建本地搜索引擎](https://liam.page/2017/09/21/local-search-engine-in-Hexo-site/)
99 |
100 |
101 | #### AdSence广告
102 |
103 | 从`0.0.7`版本开始,新增了广告位。为什么是AdSence?第一,无需备案;第二,覆盖范围广。此功能需要申请账户。具体谷歌解决
104 |
105 |
106 | #### 主题配置指南相关
107 |
108 | 其中关于配置分类别名以及自定义文章链接,请看如下文章操作:
109 |
110 | - [JSimple主题用户指南](https://tomartisan.com/groceries/jsimple-usage/)
111 | - [在hexo博客中打造相对完美的URL](https://tomartisan.com/groceries/hexo-perfect-link/)
112 | - [将Hexo博客url优化进行到底](https://tomartisan.com/groceries/permalink-optimize-hexo/)
113 | - [Update-for-JSimple-in-Early2019](https://tomartisan.com/groceries/the-update-for-jsimple-in-early2019/)
114 |
115 | ## 浏览器支持
116 |
117 | 
118 |
119 |
120 | ## 贡献
121 |
122 | 啥都不说了,喜欢就点赞。欢迎`PR`。已知代码高亮不是太完美,强迫症可以试试下边的主题...
123 |
124 | > 特别感谢 `iTimeTraveler` 和 `jiangmuzi`, 他们提供了原型 [Hipaper](https://github.com/iTimeTraveler/hexo-theme-hipaper)、 [JianShu](https://github.com/jiangmuzi/jianshu).
125 |
126 |
127 | ## 鸣谢
128 |
129 | [Hexo](https://hexo.io)
130 | [Font Awesome](http://fontawesome.io)
131 |
132 | ## License
133 |
134 | JSimple is under the MIT license. See the [LICENSE](https://github.com/tangkunyin/hexo-theme-jsimple/blob/master/LICENSE) file for details.
135 |
136 |
--------------------------------------------------------------------------------
/_config.yml:
--------------------------------------------------------------------------------
1 | # 站点名称、简称
2 | site_name: JSimple
3 | short_name: JSM
4 |
5 |
6 | # 站长基本信息
7 | authorInfo:
8 | name: 托码斯
9 | home: https://bento.me/tomartisan
10 | desc: 一个爱吃苹果的「小黄人」
11 | avatar: /images/avatar.webp
12 |
13 | # 默认主题:浅色(day),深色(night)
14 | read_mode: day
15 |
16 | # 首页文章排序方式: 最新在前(-1),最老在前(1)
17 | home_page_sort: -1
18 | # 首页展示多少篇文章
19 | home_article_shown: 10
20 |
21 | # 代码高亮配置,采用 hightlight,样式在 css/hightlight/* 定义
22 | highlight_theme: atom-one
23 |
24 |
25 | # 顶部导航菜单名称和别名配置
26 | ## 此处申明的菜单条目,需要和站点根目录下"_config.yml"中分类的配置对应,建议不超过4个。如:
27 | ### default_category: top1
28 | ### category_map:
29 | ### 顶部菜单1: top1
30 | ### 顶部菜单2: top2
31 | ### 顶部菜单3: top3
32 | ### 顶部菜单4: top4
33 | menu:
34 | 顶部菜单1: top1
35 | 顶部菜单2: top2
36 | 顶部菜单3: top3
37 | 顶部菜单4: top4
38 |
39 | # 最左侧常驻的导航菜单,一般指向 /about 即可
40 | left_nav_menus:
41 | - uri: about
42 | title: About
43 | faName: fa-question-circle
44 |
45 |
46 | # 中间封面信息
47 | middleCover:
48 | title: 用代码摇滚这个世界
49 | description: 一个关注科技与人文的技术博客
50 | # 中间封面社交连接
51 | sns:
52 | github: https://github.com/tangkunyin
53 | youtube: https://www.youtube.com/@itomartisan
54 |
55 |
56 | # 站点互动信息连接,如聊天室和捐赠地址
57 | chatLink: https://t.me/itomartisan
58 | donateLink: https://buymeacoffee.com/tomartisan
59 |
60 |
61 | # 文章内容申明
62 | post_declare:
63 | enable: true
64 | desc: 本文内容由XXX创作整理,读者若需转载,请保留出处,谢谢!
65 |
66 | # 站点创建时间,用于页底动态展示:成立X天
67 | site_creation:
68 | year: 2020
69 | fulltime: 08/08/2024
70 |
71 | # 托管商信息
72 | serveInfo:
73 | name: github
74 | url: https://pages.github.com
75 |
76 |
77 | # 本地搜索
78 | # 依赖库: https://github.com/theme-next/hexo-generator-searchdb
79 | local_search:
80 | # if auto, trigger search by changing input
81 | # if manual, trigger search by pressing enter key or search button
82 | trigger: auto
83 | # show top n results per article, show all results by setting to -1
84 | top_n_per_article: 1
85 | # unescape html strings to the readable one
86 | unescape: false
87 |
88 | ## 网站统计,仅支持Google。需要别的自行修改源码
89 | analytics:
90 | enable: false
91 | shortname: tomax
92 |
93 | ## 网站评论,仅支持Disqus。需要别的自行修改源码
94 | comments:
95 | enable: false
96 | configId: 12345
97 |
98 | ## 微软的clarity服务
99 | clarity:
100 | enable: false
101 | configId: 54321
102 |
103 | ## Google AdSense.
104 | adsense:
105 | auto: false
106 | client_id:
107 | page_tb_id:
108 | archive_id:
109 | tags_id:
110 | post_inner_id:
111 | post_left_id:
112 | post_right_id:
113 |
114 |
--------------------------------------------------------------------------------
/gulpfile.js:
--------------------------------------------------------------------------------
1 | import gulp from "gulp";
2 | import babel from "gulp-babel";
3 | import minifycss from "gulp-clean-css";
4 | import uglify from "gulp-uglify";
5 | import rename from "gulp-rename";
6 | import concat from "gulp-concat";
7 |
8 | process.on('unhandledRejection', error => {
9 | console.error('unhandledRejection', error);
10 | process.exit(1);
11 | });
12 |
13 | const CleanCssOps = {
14 | level: {
15 | 1: {
16 | specialComments: 0
17 | },
18 | 2: {
19 | all: true
20 | }
21 | }
22 | }
23 |
24 | const cssLib = ["./source/css/fonts/FontModule.css"];
25 | gulp.task('build-theme-minifyCss', async function () {
26 | await gulp
27 | .src(cssLib.concat('./source/css/JSimple.css'))
28 | .pipe(minifycss(CleanCssOps))
29 | .pipe(concat("./source/css/JSimple.min.css"))
30 | .pipe(gulp.dest('./'));
31 | });
32 | gulp.task("build-highlight-minifyCss", async function () {
33 | await gulp
34 | .src("./source/css/highlight/*.css")
35 | .pipe(minifycss(CleanCssOps))
36 | .pipe(rename({ extname: ".min.css" }))
37 | .pipe(gulp.dest("./source/css"));
38 | });
39 |
40 |
41 | const jsLib = ["./source/js/lib/zepto.min.js"];
42 | gulp.task('build-minifyJs', async function () {
43 | await gulp
44 | .src(jsLib.concat('./source/js/lib/SimpleCore.js'))
45 | .pipe(
46 | babel({
47 | ignore: jsLib,
48 | presets: ['@babel/preset-env']
49 | })
50 | )
51 | .pipe(uglify())
52 | .pipe(concat('./source/js/SimpleCore.min.js'))
53 | .pipe(gulp.dest('./'));
54 | });
55 |
56 |
57 | gulp.task(
58 | "build-minifyCss",
59 | gulp.parallel("build-theme-minifyCss", "build-highlight-minifyCss", function (done) {
60 | done();
61 | })
62 | );
63 |
64 |
65 | gulp.task(
66 | 'default',
67 | gulp.parallel('build-minifyCss', 'build-minifyJs', function (done) {
68 | done();
69 | })
70 | );
71 |
--------------------------------------------------------------------------------
/languages/en-us.yml:
--------------------------------------------------------------------------------
1 | home: Home
2 | archives: Archives
3 | about: About
4 | app: App
5 | map: SiteMap
6 | categories: Categories
7 | search: Search
8 | search_tip: Press Shift to Search
9 | search_placeholder: Input query keywords here...
10 | tags: Tags
11 | tagcloud: Tag Cloud
12 | prev: Prev
13 | next: Next
14 | comment: Comments
15 | page: Page %d
16 | recent_posts: Latest
17 | newer: Newer
18 | older: Older
19 | share: Share
20 | category: Category
21 | tag: Tag
22 | connect: 'Connect With Us'
23 | post_total_count: Nice 🥳 %d posts in total. Keep on posting.
24 | tag_total_count: There are %d tags so far.
25 | read_more: Continue Reading →
26 | contents: Contents
27 | none: None
28 | donate: Buymeacoffee
29 | buildTip: Has been established
30 | day: Days
31 | based_on: Based on
32 | theme_by: Theme by
33 | author: Author
34 | hosted: Hosted
35 | last_edited: Last edited at
36 | post_words_count: emm... %d words in the article
37 | post_view_count_prefix: you are the
38 | post_view_count_subfix: th visited person
39 | post_declare: Warning
40 | sticky: Stickied
41 |
--------------------------------------------------------------------------------
/languages/zh-hans.yml:
--------------------------------------------------------------------------------
1 | home: 首页
2 | archives: 归档
3 | about: 关于
4 | app: 应用
5 | map: 网站地图
6 | categories: 分类
7 | search: 搜索
8 | search_tip: 按Shift启动搜索
9 | search_placeholder: 请输入查询关键词
10 | tags: 标签
11 | tagcloud: 标签云
12 | prev: 上一页
13 | next: 下一页
14 | comment: 留言
15 | page: 第 %d 页
16 | recent_posts: 最新
17 | newer: 上一篇
18 | older: 下一篇
19 | share: 分享
20 | category: 类目
21 | tag: 标签
22 | connect: '联系我们'
23 | post_total_count: 截止目前,本站累计发布文章%d篇,创作仍在继续...
24 | tag_total_count: 总的来说,本站目前涉及%d个细分领域,请继续保持关注...
25 | read_more: '阅读全文'
26 | contents: 文章目录
27 | none: 无
28 | donate: 赞赏
29 | buildTip: 本站已建立
30 | day: 天
31 | based_on: 基于
32 | theme_by: 主题采用
33 | author: 作者
34 | hosted: 托管于
35 | last_edited: 最后编辑于
36 | post_words_count: 本文共计%d个字
37 | post_view_count_prefix: 你是第
38 | post_view_count_subfix: 位到访读者
39 | post_declare: 声明
40 | sticky: 置顶
41 |
--------------------------------------------------------------------------------
/layout/_partial/_page.ejs:
--------------------------------------------------------------------------------
1 |
7 | <%- partial('_widget/common-article', {post: post}) %>
8 |
--------------------------------------------------------------------------------
/layout/_partial/_post.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 | - <%= __('recent_posts') %>
4 | <% if(page.categories && page.categories.first()){ %>
5 | <% for (var name in theme.menu){ %>
6 | -
7 | <%= name %>
8 |
9 | <% } %>
10 | <% }else { %>
11 | <% console.warn('Error ******* Please set categories in your scaffold file at least *******') %>
12 | <% } %>
13 | <%- partial('_widget/search-bar') %>
14 |
15 |
16 | <%- partial('_widget/common-article', {post: post}) %>
17 |
--------------------------------------------------------------------------------
/layout/_partial/archive.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 | <% for (let menuKey in theme.menu){ %>
7 |
10 | <% } %>
11 | <%- partial('_widget/search-bar') %>
12 |
13 |
14 |
15 |
16 | <% page.posts.sort('date', theme.home_page_sort).limit(theme.home_article_shown).each(function(post){ %>
17 | <%- partial('_widget/category-items', {post: post}) %>
18 | <% }) %>
19 |
20 | <% if (page.total > 1){ %>
21 |
28 | <% } %>
29 | <%- partial('_widget/ads/adSense') %>
--------------------------------------------------------------------------------
/layout/_partial/comments.ejs:
--------------------------------------------------------------------------------
1 | <% if (theme.comments.enable){ %>
2 | <% if (theme.comments.shortname) { %>
3 |
4 |
18 |
19 | <% } %>
20 | <% } %>
--------------------------------------------------------------------------------
/layout/_partial/footer.ejs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/layout/_partial/head.ejs:
--------------------------------------------------------------------------------
1 |
4 | <%
5 | var siteTitle = page.title;
6 | var keywords = page.keywords ? page.keywords : config.keywords;
7 | var description = "";
8 |
9 |
10 | if (is_archive()) {
11 | siteTitle = __('archives');
12 | if (is_month()) {
13 | siteTitle += ' | ' + page.year + '/' + page.month;
14 | } else if (is_year()) {
15 | siteTitle += ' | ' + page.year;
16 | }
17 | } else if (is_category()) {
18 | siteTitle = __('categories') + ' | ' + page.category;
19 | } else if (is_tag()) {
20 | siteTitle = __('tags') + ' | ' + page.tag;
21 | }
22 |
23 |
24 | if (page.description) {
25 | description = page.description;
26 | } else if (page.content) {
27 | description = strip_html(page.content);
28 | } else {
29 | description = config.description;
30 | }
31 | description = description.substring(0, 200).replace(/^\s+|\s+$/g, '');
32 | %>
33 |
34 | <% if (siteTitle){ %><%= __(siteTitle.toLowerCase()) %> | <% } %><%= config.title %><% if (is_home()){ %> | <%= config.subtitle %><% } %>
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 | <% if (is_post() || is_page()) { %>
54 |
55 |
56 | <% } %>
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/layout/_partial/leftMenu.ejs:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
--------------------------------------------------------------------------------
/layout/_partial/middleCover.ejs:
--------------------------------------------------------------------------------
1 |
2 |

3 |
4 |

5 |
<%= theme.site_name %>
6 |
<%= theme.middleCover.title %>
7 |
<%= theme.middleCover.description %>
8 |
9 | <%- partial('_widget/sns-entry') %>
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/layout/_widget/ads/adSense-scripts.ejs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/layout/_widget/ads/adSense.ejs:
--------------------------------------------------------------------------------
1 | <% if (theme.adsense.client_id){ %>
2 | <% if (is_archive()){ %>
3 |
4 | <%- partial('adaptive-unit', {format: 'auto', slotId: theme.adsense.archive_id, adStyles: 'display:block'}) %>
5 |
6 | <% } else if ('tags' === page.layout) { %>
7 |
8 | <%- partial('adaptive-unit', {format: 'auto', slotId: theme.adsense.tags_id, adStyles: 'display:block'}) %>
9 |
10 | <% } else if (is_post()) { %>
11 |
12 | <%- partial('adaptive-unit', {format: 'fixed', slotId: theme.adsense.post_left_id, adStyles: 'display:inline-block;width:160px;height:600px'}) %>
13 |
14 |
15 | <%- partial('adaptive-unit', {format: 'fixed', slotId: theme.adsense.post_right_id, adStyles: 'display:inline-block;width:160px;height:600px'}) %>
16 |
17 |
18 | <%- partial('adaptive-unit', {format: 'fluid', slotId: theme.adsense.post_inner_id, adStyles: 'display:block; text-align:center;'}) %>
19 |
20 | <% } else if (is_page()) { %>
21 |
22 | <%- partial('adaptive-unit', {format: 'fixed', slotId: theme.adsense.post_right_id, adStyles: 'display:inline-block;width:160px;height:600px'}) %>
23 |
24 |
25 | <%- partial('adaptive-unit', {format: 'auto', slotId: theme.adsense.page_tb_id, adStyles: 'display:block'}) %>
26 |
27 | <% } %>
28 | <% if (is_archive() || 'tags' === page.layout || is_page() || is_post()) { %>
29 | <%- partial('adSense-scripts', {type: 'custom'}) %>
30 | <% } else if (theme.adsense.auto && (is_home() || is_category() || is_tag())) { %>
31 | <%- partial('adSense-scripts', {type: 'auto'}) %>
32 | <% } %>
33 | <% } %>
--------------------------------------------------------------------------------
/layout/_widget/ads/adaptive-unit.ejs:
--------------------------------------------------------------------------------
1 | <% if (format === 'auto') { %>
2 |
8 | <% } else if (format === 'fluid') { %>
9 |
15 | <% } else { %>
16 |
20 | <% } %>
--------------------------------------------------------------------------------
/layout/_widget/category-items.ejs:
--------------------------------------------------------------------------------
1 | <% var external_link = config.external_link ? '_blank' : '_self'; %>
2 |
3 | <% if (post.photos && post.photos.length){ %>
4 |
5 |
6 |

7 |
8 | <% } %>
9 |
30 |
31 | <%= post.description || post.title %>
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/layout/_widget/common-article.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
24 |
25 | <%- post.content %>
26 | <% if(post.layout && post.layout === 'post') { %>
27 | <%- partial('_widget/ads/adSense', null, { cache: false }) %>
28 | <% } %>
29 |
30 |
31 | <% if (theme.donateLink){ %>
32 |
37 | <% } %>
38 |
39 | <% if (post.tags){ %>
40 | <%= __('tags') %>:
41 | <% post.tags.each(function(tag){ %>
42 |
<%= tag.name %>
43 | <% }) %>
44 |
45 | <% } %>
46 |
47 | <% if(post.layout && post.layout === 'post' && theme.post_declare) { %>
48 |
<%= __('post_declare') %>: <%= theme.post_declare.desc %>
49 | <% } %>
50 | <% if(post.layout && post.layout !== 'post') { %>
51 | <%- partial('_widget/ads/adSense', null, { cache: false }) %>
52 | <% } %>
53 | <%- partial('_partial/comments', null, { cache: false }) %>
54 |
--------------------------------------------------------------------------------
/layout/_widget/search-bar.ejs:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
--------------------------------------------------------------------------------
/layout/_widget/sns-entry.ejs:
--------------------------------------------------------------------------------
1 | <% for (let snsKey in theme.middleCover.sns){ %>
2 |
7 | <% } %>
8 |
--------------------------------------------------------------------------------
/layout/_widget/third-scripts.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | <% if (is_post() || is_page()) { %>
5 | <% if (theme.comments.enable){ %>
6 |
7 | <% } %>
8 | <% } %>
9 |
10 |
11 | <% if (theme.analytics.enable){ %>
12 |
13 |
19 | <% } %>
20 |
21 |
22 | <% if (theme.clarity.enable){ %>
23 |
30 | <% } %>
--------------------------------------------------------------------------------
/layout/_widget/user-entry.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | <% if(theme.chatLink) { %>
5 |
6 | <% } %>
7 |
--------------------------------------------------------------------------------
/layout/archive.ejs:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
13 | <%- partial('_widget/ads/adSense') %>
14 |
15 |
16 | <% var lastDate; %>
17 | <% site.posts.sort('date', theme.home_page_sort).each(function(post, i){ %>
18 | <% var currentDate = parseInt(date(post.date, 'YYYYMM')); %>
19 | <% if (lastDate != currentDate){ %>
20 | <% lastDate = currentDate; %>
21 |
22 |
<%= date(post.date, 'YYYY') %>年<%= date(post.date, 'MM') %>月
23 |
24 | <% } %>
25 |
26 | <%= date(post.date, 'DD') %>日,<%= time(post.date) %>
27 | <%= post.title %>
28 | <% if(post.author && theme.authorInfo.name && post.author != theme.authorInfo.name) { %>
29 | ,作者<%= post.author ? post.author : theme.authorInfo.name %>
32 | <% } %>
33 |
34 | <% if (!site.posts.sort('date', theme.home_page_sort).eq(i + 1) || currentDate != parseInt(date(site.posts.sort('date', theme.home_page_sort).eq(i + 1).date, 'YYYYMM'))){ %>
35 |
36 |
37 | <% } %>
38 | <% }) %>
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/layout/category.ejs:
--------------------------------------------------------------------------------
1 | <%- partial('_partial/archive', {pagination: config.category, index: true}) %>
--------------------------------------------------------------------------------
/layout/index.ejs:
--------------------------------------------------------------------------------
1 | <%- partial('_partial/archive', {pagination: 2, index: true}) %>
--------------------------------------------------------------------------------
/layout/layout.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | <%- partial('_partial/head') %>
5 |
6 |
7 | <%- partial('_partial/leftMenu') %>
8 | <%- partial('_widget/user-entry') %>
9 |
10 |
11 |
12 | <%- partial('_partial/middleCover') %>
13 | <%- body %>
14 |
15 |
16 | <%- partial('_partial/footer') %>
17 |
18 |
19 |
37 |
40 |
41 | <%- partial('_widget/third-scripts', null, { cache: false }) %>
42 |
43 |
--------------------------------------------------------------------------------
/layout/page.ejs:
--------------------------------------------------------------------------------
1 | <%- partial('_partial/_page', {post: page, index: false}) %>
--------------------------------------------------------------------------------
/layout/post.ejs:
--------------------------------------------------------------------------------
1 | <%- partial('_partial/_post', {post: page, index: false}) %>
--------------------------------------------------------------------------------
/layout/tag.ejs:
--------------------------------------------------------------------------------
1 | <%- partial('_partial/archive', {pagination: config.tag, index: true}) %>
--------------------------------------------------------------------------------
/layout/tags.ejs:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
13 | 
14 |
15 |
16 | <% site.tags.sort('name').map(function(tag){ %>
17 |
22 | <% }) %>
23 |
24 |
25 |
26 | <%- partial('_widget/ads/adSense') %>
27 |
28 |
29 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hexo-theme-jsimple",
3 | "version": "1.1.0",
4 | "description": "Simple three column theme for Hexo.Inspired by JianShu.com",
5 | "license": "MIT",
6 | "keywords": [
7 | "Simple",
8 | "Three Column",
9 | "Jian Shu",
10 | "Hexo"
11 | ],
12 | "author": {
13 | "name": "Thomas Tang",
14 | "url": "https://tomartisan.com",
15 | "email": "hello@tangkunyin.com"
16 | },
17 | "scripts": {
18 | "lint": "ejslint ./layout/*",
19 | "build:css": "gulp build-minifyCss",
20 | "build:all": "gulp",
21 | "publish": "pnpm run lint && pnpm run build:all"
22 | },
23 | "type": "module",
24 | "packageManager": "pnpm@9.4.0",
25 | "devDependencies": {
26 | "ejs-lint": "^2.0.0",
27 | "@babel/core": "^7.23.9",
28 | "@babel/preset-env": "^7.23.9",
29 | "gulp": "^4.0.2",
30 | "gulp-babel": "^8.0.0",
31 | "gulp-clean-css": "^4.3.0",
32 | "gulp-concat": "^2.6.1",
33 | "gulp-rename": "^2.0.0",
34 | "gulp-uglify": "^3.0.2"
35 | },
36 | "repository": {
37 | "type": "git",
38 | "url": "git+https://github.com/tangkunyin/hexo-theme-jsimple.git"
39 | },
40 | "bugs": {
41 | "url": "https://github.com/tangkunyin/hexo-theme-jsimple/issues"
42 | },
43 | "engines": {
44 | "node": ">=18"
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/source/404.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 404 - Not Found
6 |
7 |
53 |
65 |
66 |
67 |
68 |
69 |

70 |
71 |
72 |
73 |
404 !
74 |
Page not found...
75 |
Return to home page afterseconds
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/source/css/atom-one-dark.min.css:
--------------------------------------------------------------------------------
1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
--------------------------------------------------------------------------------
/source/css/atom-one-light.min.css:
--------------------------------------------------------------------------------
1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs-comment,.hljs-quote{color:#a0a1a7;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#a626a4}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e45649}.hljs-literal{color:#0184bb}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#50a14f}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#986801}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#4078f2}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#c18401}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
--------------------------------------------------------------------------------
/source/css/default.min.css:
--------------------------------------------------------------------------------
1 | .markdown-body .gist,.markdown-body .highlight,.markdown-body pre{border-style:solid;border-color:#eef1f8;border-width:1px 0;background:#f8f8f8}.markdown-body .gist .gist-file,.markdown-body code,.markdown-body pre{font-family:"Source Code Pro",Consolas,Monaco,Menlo,Consolas,monospace}.markdown-body .highlight,.markdown-body pre{margin:10px 0;padding:5px;overflow:auto;color:#4d4d4c;line-height:22px}.markdown-body .gist .gist-file .gist-data .line-numbers,.markdown-body .highlight .gutter pre{color:#666;font-size:.85em}.markdown-body code{background:rgba(208,211,248,.2);color:#333;padding:0 .3em}.markdown-body pre code{background:0 0;text-shadow:none;padding:0}.markdown-body .highlight pre{border:none;margin:0}.markdown-body .highlight table{margin:0;width:auto;border:none}.markdown-body .highlight tbody{margin:0;display:flex}.markdown-body .highlight td{border:none;padding:0}.markdown-body .highlight figcaption{font-size:.85em;color:#8e908c;line-height:1em;margin-bottom:1em}.markdown-body .highlight figcaption:after,.markdown-body .highlight figcaption:before{content:"";display:table}.markdown-body .highlight figcaption:after{clear:both}.markdown-body .highlight figcaption a{float:right}.markdown-body .highlight .gutter{width:50px}.markdown-body .highlight .code{flex:1}.markdown-body .highlight .gutter pre{text-align:center}.markdown-body .highlight .line{height:22px}.markdown-body .highlight .line.marked{background:#d6d6d6}.markdown-body .gist{margin:0 -20px;padding:15px 20px 15px 0}.markdown-body .gist .gist-file{border:none;margin:0}.markdown-body .gist .gist-file .gist-data{background:0 0;border:none}.markdown-body .gist .gist-file .gist-data .line-numbers{background:0 0;border:none;padding:0 20px 0 0}.markdown-body .gist .gist-file .gist-data .line-data{padding:0!important}.markdown-body .gist .gist-file .highlight{margin:0;padding:0;border:none}.markdown-body .gist .gist-file .gist-meta{background:#f8f8f8;color:#8e908c;font:.85em -apple-system,Arial,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif;text-shadow:0 0;padding:0;margin-top:1em;margin-left:20px}.markdown-body .gist .gist-file .gist-meta a{color:color-link;font-weight:400}.markdown-body .gist .gist-file .gist-meta a:hover{text-decoration:underline}.markdown-body figure td.code pre{white-space:pre!important}.markdown-body figure table tr{display:flex!important;justify-content:flex-start!important}pre .attribute,pre .css .class,pre .css .id,pre .css .pseudo,pre .html .doctype,pre .regexp,pre .ruby .constant,pre .tag,pre .variable,pre .xml .doctype,pre .xml .pi,pre .xml .tag .title{color:#c82829}pre .built_in,pre .constant,pre .literal,pre .number,pre .params,pre .preprocessor{color:#fb6d19}pre .class,pre .css .rules .attribute,pre .header,pre .inheritance,pre .ruby .class .title,pre .ruby .symbol,pre .string,pre .value,pre .xml .cdata{color:#718c00}pre .css .hexcolor{color:#3e999f}pre .coffeescript .title,pre .function,pre .javascript .title,pre .perl .sub,pre .python .decorator,pre .python .title,pre .ruby .function .title,pre .ruby .title .keyword{color:#4271ae}pre .javascript .function,pre .keyword{color:#8959a8}pre{color:#525252}pre .constant,pre .function .keyword{color:#0092db}pre .attribute,pre .keyword{color:#e96900}pre .literal,pre .number{color:#ae81ff}pre .change,pre .clojure .built_in,pre .flow,pre .lisp .title,pre .nginx .title,pre .tag,pre .tag .title,pre .tex .special,pre .winutils{color:#2973b7}pre .addition,pre .apache .cbracket,pre .apache .tag,pre .attr_selector,pre .built_in,pre .django .filter .argument,pre .django .template_tag,pre .django .variable,pre .envvar,pre .haskell .type,pre .javadoc,pre .preprocessor,pre .prompt,pre .pseudo,pre .regexp,pre .ruby .class .parent,pre .smalltalk .array,pre .smalltalk .class,pre .smalltalk .localvars,pre .sql .aggregate,pre .stream,pre .string,pre .subst,pre .symbol,pre .symbol .string,pre .tag .value,pre .tex .command,pre .value{color:#42b983}pre .title{color:#83b917}pre .apache .sqbracket,pre .comment,pre .doctype,pre .java .annotation,pre .pi,pre .python .decorator,pre .shebang,pre .template_comment,pre .tex .formula{color:#b3b3b3}pre .deletion{color:#ba4545}pre .coffeescript .javascript,pre .javascript .xml,pre .tex .formula,pre .xml .cdata,pre .xml .css,pre .xml .javascript,pre .xml .vbscript{opacity:.5}.night-mode blockquote,.night-mode code,.night-mode pre{background-color:#333!important;border-color:#2f2f2f;color:#f3f3f3}
--------------------------------------------------------------------------------
/source/css/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/css/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/source/css/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/css/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/source/css/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/css/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/source/css/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/css/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/source/css/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/css/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/source/css/github-dark.min.css:
--------------------------------------------------------------------------------
1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
--------------------------------------------------------------------------------
/source/css/github-light.min.css:
--------------------------------------------------------------------------------
1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}
--------------------------------------------------------------------------------
/source/css/highlight/atom-one-dark.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*
12 |
13 | Atom One Dark by Daniel Gamage
14 | Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax
15 |
16 | base: #282c34
17 | mono-1: #abb2bf
18 | mono-2: #818896
19 | mono-3: #5c6370
20 | hue-1: #56b6c2
21 | hue-2: #61aeee
22 | hue-3: #c678dd
23 | hue-4: #98c379
24 | hue-5: #e06c75
25 | hue-5-2: #be5046
26 | hue-6: #d19a66
27 | hue-6-2: #e6c07b
28 |
29 | */
30 |
31 | .hljs {
32 | color: #abb2bf;
33 | background: #282c34;
34 | }
35 |
36 | .hljs-comment,
37 | .hljs-quote {
38 | color: #5c6370;
39 | font-style: italic;
40 | }
41 |
42 | .hljs-doctag,
43 | .hljs-keyword,
44 | .hljs-formula {
45 | color: #c678dd;
46 | }
47 |
48 | .hljs-section,
49 | .hljs-name,
50 | .hljs-selector-tag,
51 | .hljs-deletion,
52 | .hljs-subst {
53 | color: #e06c75;
54 | }
55 |
56 | .hljs-literal {
57 | color: #56b6c2;
58 | }
59 |
60 | .hljs-string,
61 | .hljs-regexp,
62 | .hljs-addition,
63 | .hljs-attribute,
64 | .hljs-meta .hljs-string {
65 | color: #98c379;
66 | }
67 |
68 | .hljs-attr,
69 | .hljs-variable,
70 | .hljs-template-variable,
71 | .hljs-type,
72 | .hljs-selector-class,
73 | .hljs-selector-attr,
74 | .hljs-selector-pseudo,
75 | .hljs-number {
76 | color: #d19a66;
77 | }
78 |
79 | .hljs-symbol,
80 | .hljs-bullet,
81 | .hljs-link,
82 | .hljs-meta,
83 | .hljs-selector-id,
84 | .hljs-title {
85 | color: #61aeee;
86 | }
87 |
88 | .hljs-built_in,
89 | .hljs-title.class_,
90 | .hljs-class .hljs-title {
91 | color: #e6c07b;
92 | }
93 |
94 | .hljs-emphasis {
95 | font-style: italic;
96 | }
97 |
98 | .hljs-strong {
99 | font-weight: bold;
100 | }
101 |
102 | .hljs-link {
103 | text-decoration: underline;
104 | }
--------------------------------------------------------------------------------
/source/css/highlight/atom-one-light.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*
12 |
13 | Atom One Light by Daniel Gamage
14 | Original One Light Syntax theme from https://github.com/atom/one-light-syntax
15 |
16 | base: #fafafa
17 | mono-1: #383a42
18 | mono-2: #686b77
19 | mono-3: #a0a1a7
20 | hue-1: #0184bb
21 | hue-2: #4078f2
22 | hue-3: #a626a4
23 | hue-4: #50a14f
24 | hue-5: #e45649
25 | hue-5-2: #c91243
26 | hue-6: #986801
27 | hue-6-2: #c18401
28 |
29 | */
30 |
31 | .hljs {
32 | color: #383a42;
33 | background: #fafafa;
34 | }
35 |
36 | .hljs-comment,
37 | .hljs-quote {
38 | color: #a0a1a7;
39 | font-style: italic;
40 | }
41 |
42 | .hljs-doctag,
43 | .hljs-keyword,
44 | .hljs-formula {
45 | color: #a626a4;
46 | }
47 |
48 | .hljs-section,
49 | .hljs-name,
50 | .hljs-selector-tag,
51 | .hljs-deletion,
52 | .hljs-subst {
53 | color: #e45649;
54 | }
55 |
56 | .hljs-literal {
57 | color: #0184bb;
58 | }
59 |
60 | .hljs-string,
61 | .hljs-regexp,
62 | .hljs-addition,
63 | .hljs-attribute,
64 | .hljs-meta .hljs-string {
65 | color: #50a14f;
66 | }
67 |
68 | .hljs-attr,
69 | .hljs-variable,
70 | .hljs-template-variable,
71 | .hljs-type,
72 | .hljs-selector-class,
73 | .hljs-selector-attr,
74 | .hljs-selector-pseudo,
75 | .hljs-number {
76 | color: #986801;
77 | }
78 |
79 | .hljs-symbol,
80 | .hljs-bullet,
81 | .hljs-link,
82 | .hljs-meta,
83 | .hljs-selector-id,
84 | .hljs-title {
85 | color: #4078f2;
86 | }
87 |
88 | .hljs-built_in,
89 | .hljs-title.class_,
90 | .hljs-class .hljs-title {
91 | color: #c18401;
92 | }
93 |
94 | .hljs-emphasis {
95 | font-style: italic;
96 | }
97 |
98 | .hljs-strong {
99 | font-weight: bold;
100 | }
101 |
102 | .hljs-link {
103 | text-decoration: underline;
104 | }
--------------------------------------------------------------------------------
/source/css/highlight/default.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * 扩展主题,使其支持行号和暗黑模式
3 | * 提示:当 line_number 和 wrap 为 false,hljs 为 true 的时候,本样式无效
4 | */
5 | .markdown-body pre,
6 | .markdown-body .highlight {
7 | background: #f8f8f8;
8 | margin: 10px 0;
9 | padding: 5px;
10 | border-style: solid;
11 | border-color: #eef1f8;
12 | border-width: 1px 0;
13 | overflow: auto;
14 | color: #4d4d4c;
15 | line-height: 22px;
16 | }
17 |
18 | .markdown-body .highlight .gutter pre,
19 | .markdown-body .gist .gist-file .gist-data .line-numbers {
20 | color: #666;
21 | font-size: 0.85em;
22 | }
23 |
24 | .markdown-body pre,
25 | .markdown-body code {
26 | font-family: "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace;
27 | }
28 |
29 | .markdown-body code {
30 | background: rgba(208, 211, 248, 0.2);
31 | color: #333;
32 | padding: 0 0.3em;
33 | }
34 |
35 | .markdown-body pre code {
36 | background: none;
37 | text-shadow: none;
38 | padding: 0;
39 | }
40 |
41 | .markdown-body .highlight pre {
42 | border: none;
43 | margin: 0;
44 | }
45 |
46 | .markdown-body .highlight table {
47 | margin: 0;
48 | width: auto;
49 | border: none;
50 | }
51 |
52 | .markdown-body .highlight tbody {
53 | margin: 0;
54 | display: flex;
55 | }
56 |
57 | .markdown-body .highlight td {
58 | border: none;
59 | padding: 0;
60 | }
61 |
62 | .markdown-body .highlight figcaption {
63 | font-size: 0.85em;
64 | color: #8e908c;
65 | line-height: 1em;
66 | margin-bottom: 1em;
67 | }
68 |
69 | .markdown-body .highlight figcaption:before,
70 | .markdown-body .highlight figcaption:after {
71 | content: "";
72 | display: table;
73 | }
74 |
75 | .markdown-body .highlight figcaption:after {
76 | clear: both;
77 | }
78 |
79 | .markdown-body .highlight figcaption a {
80 | float: right;
81 | }
82 |
83 | .markdown-body .highlight .gutter {
84 | width: 50px;
85 | }
86 |
87 | .markdown-body .highlight .code {
88 | flex: 1;
89 | }
90 |
91 | .markdown-body .highlight .gutter pre {
92 | text-align: center;
93 | }
94 |
95 | .markdown-body .highlight .line {
96 | height: 22px;
97 | }
98 |
99 | .markdown-body .highlight .line.marked {
100 | background: #d6d6d6;
101 | }
102 |
103 | .markdown-body .gist {
104 | margin: 0 -20px;
105 | border-style: solid;
106 | border-color: #eef1f8;
107 | border-width: 1px 0;
108 | background: #f8f8f8;
109 | padding: 15px 20px 15px 0;
110 | }
111 |
112 | .markdown-body .gist .gist-file {
113 | border: none;
114 | font-family: "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace;
115 | margin: 0;
116 | }
117 |
118 | .markdown-body .gist .gist-file .gist-data {
119 | background: none;
120 | border: none;
121 | }
122 |
123 | .markdown-body .gist .gist-file .gist-data .line-numbers {
124 | background: none;
125 | border: none;
126 | padding: 0 20px 0 0;
127 | }
128 |
129 | .markdown-body .gist .gist-file .gist-data .line-data {
130 | padding: 0 !important;
131 | }
132 |
133 | .markdown-body .gist .gist-file .highlight {
134 | margin: 0;
135 | padding: 0;
136 | border: none;
137 | }
138 |
139 | .markdown-body .gist .gist-file .gist-meta {
140 | background: #f8f8f8;
141 | color: #8e908c;
142 | font: 0.85em -apple-system, "Arial", BlinkMacSystemFont, "Segoe UI",
143 | "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans",
144 | "Helvetica Neue", sans-serif;
145 | text-shadow: 0 0;
146 | padding: 0;
147 | margin-top: 1em;
148 | margin-left: 20px;
149 | }
150 |
151 | .markdown-body .gist .gist-file .gist-meta a {
152 | color: color-link;
153 | font-weight: normal;
154 | }
155 |
156 | .markdown-body .gist .gist-file .gist-meta a:hover {
157 | text-decoration: underline;
158 | }
159 |
160 | .markdown-body figure td.code pre {
161 | white-space: pre !important;
162 | }
163 |
164 | .markdown-body figure table tr {
165 | display: flex !important;
166 | justify-content: flex-start !important;
167 | }
168 |
169 | pre .comment,
170 | pre .title {
171 | color: #8e908c;
172 | }
173 |
174 | pre .variable,
175 | pre .attribute,
176 | pre .tag,
177 | pre .regexp,
178 | pre .ruby .constant,
179 | pre .xml .tag .title,
180 | pre .xml .pi,
181 | pre .xml .doctype,
182 | pre .html .doctype,
183 | pre .css .id,
184 | pre .css .class,
185 | pre .css .pseudo {
186 | color: #c82829;
187 | }
188 |
189 | pre .number,
190 | pre .preprocessor,
191 | pre .built_in,
192 | pre .literal,
193 | pre .params,
194 | pre .constant {
195 | color: #fb6d19;
196 | }
197 |
198 | pre .class,
199 | pre .ruby .class .title,
200 | pre .css .rules .attribute {
201 | color: #718c00;
202 | }
203 |
204 | pre .string,
205 | pre .value,
206 | pre .inheritance,
207 | pre .header,
208 | pre .ruby .symbol,
209 | pre .xml .cdata {
210 | color: #718c00;
211 | }
212 |
213 | pre .css .hexcolor {
214 | color: #3e999f;
215 | }
216 |
217 | pre .function,
218 | pre .python .decorator,
219 | pre .python .title,
220 | pre .ruby .function .title,
221 | pre .ruby .title .keyword,
222 | pre .perl .sub,
223 | pre .javascript .title,
224 | pre .coffeescript .title {
225 | color: #4271ae;
226 | }
227 |
228 | pre .keyword,
229 | pre .javascript .function {
230 | color: #8959a8;
231 | }
232 |
233 | pre {
234 | color: #525252;
235 | }
236 |
237 | pre .function .keyword,
238 | pre .constant {
239 | color: #0092db;
240 | }
241 |
242 | pre .keyword,
243 | pre .attribute {
244 | color: #e96900;
245 | }
246 |
247 | pre .number,
248 | pre .literal {
249 | color: #ae81ff;
250 | }
251 |
252 | pre .tag,
253 | pre .tag .title,
254 | pre .change,
255 | pre .winutils,
256 | pre .flow,
257 | pre .lisp .title,
258 | pre .clojure .built_in,
259 | pre .nginx .title,
260 | pre .tex .special {
261 | color: #2973b7;
262 | }
263 |
264 | pre .symbol,
265 | pre .symbol .string,
266 | pre .value,
267 | pre .regexp {
268 | color: #42b983;
269 | }
270 |
271 | pre .title {
272 | color: #83b917;
273 | }
274 |
275 | pre .tag .value,
276 | pre .string,
277 | pre .subst,
278 | pre .haskell .type,
279 | pre .preprocessor,
280 | pre .ruby .class .parent,
281 | pre .built_in,
282 | pre .sql .aggregate,
283 | pre .django .template_tag,
284 | pre .django .variable,
285 | pre .smalltalk .class,
286 | pre .javadoc,
287 | pre .django .filter .argument,
288 | pre .smalltalk .localvars,
289 | pre .smalltalk .array,
290 | pre .attr_selector,
291 | pre .pseudo,
292 | pre .addition,
293 | pre .stream,
294 | pre .envvar,
295 | pre .apache .tag,
296 | pre .apache .cbracket,
297 | pre .tex .command,
298 | pre .prompt {
299 | color: #42b983;
300 | }
301 |
302 | pre .comment,
303 | pre .java .annotation,
304 | pre .python .decorator,
305 | pre .template_comment,
306 | pre .pi,
307 | pre .doctype,
308 | pre .shebang,
309 | pre .apache .sqbracket,
310 | pre .tex .formula {
311 | color: #b3b3b3;
312 | }
313 |
314 | pre .deletion {
315 | color: #ba4545;
316 | }
317 |
318 | pre .coffeescript .javascript,
319 | pre .javascript .xml,
320 | pre .tex .formula,
321 | pre .xml .javascript,
322 | pre .xml .vbscript,
323 | pre .xml .css,
324 | pre .xml .cdata {
325 | opacity: 0.5;
326 | }
327 |
328 | .night-mode pre,
329 | .night-mode code,
330 | .night-mode blockquote {
331 | background-color: #333 !important;
332 | border-color: #2f2f2f;
333 | color: #f3f3f3;
334 | }
--------------------------------------------------------------------------------
/source/css/highlight/github-dark.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: GitHub Dark
13 | Description: Dark theme as seen on github.com
14 | Author: github.com
15 | Maintainer: @Hirse
16 | Updated: 2021-05-15
17 |
18 | Outdated base version: https://github.com/primer/github-syntax-dark
19 | Current colors taken from GitHub's CSS
20 | */
21 | .hljs {
22 | color: #c9d1d9;
23 | background: #0d1117
24 | }
25 |
26 | .hljs-doctag,
27 | .hljs-keyword,
28 | .hljs-meta .hljs-keyword,
29 | .hljs-template-tag,
30 | .hljs-template-variable,
31 | .hljs-type,
32 | .hljs-variable.language_ {
33 | /* prettylights-syntax-keyword */
34 | color: #ff7b72
35 | }
36 |
37 | .hljs-title,
38 | .hljs-title.class_,
39 | .hljs-title.class_.inherited__,
40 | .hljs-title.function_ {
41 | /* prettylights-syntax-entity */
42 | color: #d2a8ff
43 | }
44 |
45 | .hljs-attr,
46 | .hljs-attribute,
47 | .hljs-literal,
48 | .hljs-meta,
49 | .hljs-number,
50 | .hljs-operator,
51 | .hljs-variable,
52 | .hljs-selector-attr,
53 | .hljs-selector-class,
54 | .hljs-selector-id {
55 | /* prettylights-syntax-constant */
56 | color: #79c0ff
57 | }
58 |
59 | .hljs-regexp,
60 | .hljs-string,
61 | .hljs-meta .hljs-string {
62 | /* prettylights-syntax-string */
63 | color: #a5d6ff
64 | }
65 |
66 | .hljs-built_in,
67 | .hljs-symbol {
68 | /* prettylights-syntax-variable */
69 | color: #ffa657
70 | }
71 |
72 | .hljs-comment,
73 | .hljs-code,
74 | .hljs-formula {
75 | /* prettylights-syntax-comment */
76 | color: #8b949e
77 | }
78 |
79 | .hljs-name,
80 | .hljs-quote,
81 | .hljs-selector-tag,
82 | .hljs-selector-pseudo {
83 | /* prettylights-syntax-entity-tag */
84 | color: #7ee787
85 | }
86 |
87 | .hljs-subst {
88 | /* prettylights-syntax-storage-modifier-import */
89 | color: #c9d1d9
90 | }
91 |
92 | .hljs-section {
93 | /* prettylights-syntax-markup-heading */
94 | color: #1f6feb;
95 | font-weight: bold
96 | }
97 |
98 | .hljs-bullet {
99 | /* prettylights-syntax-markup-list */
100 | color: #f2cc60
101 | }
102 |
103 | .hljs-emphasis {
104 | /* prettylights-syntax-markup-italic */
105 | color: #c9d1d9;
106 | font-style: italic
107 | }
108 |
109 | .hljs-strong {
110 | /* prettylights-syntax-markup-bold */
111 | color: #c9d1d9;
112 | font-weight: bold
113 | }
114 |
115 | .hljs-addition {
116 | /* prettylights-syntax-markup-inserted */
117 | color: #aff5b4;
118 | background-color: #033a16
119 | }
120 |
121 | .hljs-deletion {
122 | /* prettylights-syntax-markup-deleted */
123 | color: #ffdcd7;
124 | background-color: #67060c
125 | }
126 |
127 | .hljs-char.escape_,
128 | .hljs-link,
129 | .hljs-params,
130 | .hljs-property,
131 | .hljs-punctuation,
132 | .hljs-tag {
133 | /* purposely ignored */
134 |
135 | }
--------------------------------------------------------------------------------
/source/css/highlight/github-light.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: GitHub
13 | Description: Light theme as seen on github.com
14 | Author: github.com
15 | Maintainer: @Hirse
16 | Updated: 2021-05-15
17 |
18 | Outdated base version: https://github.com/primer/github-syntax-light
19 | Current colors taken from GitHub's CSS
20 | */
21 | .hljs {
22 | color: #24292e;
23 | background: #ffffff
24 | }
25 |
26 | .hljs-doctag,
27 | .hljs-keyword,
28 | .hljs-meta .hljs-keyword,
29 | .hljs-template-tag,
30 | .hljs-template-variable,
31 | .hljs-type,
32 | .hljs-variable.language_ {
33 | /* prettylights-syntax-keyword */
34 | color: #d73a49
35 | }
36 |
37 | .hljs-title,
38 | .hljs-title.class_,
39 | .hljs-title.class_.inherited__,
40 | .hljs-title.function_ {
41 | /* prettylights-syntax-entity */
42 | color: #6f42c1
43 | }
44 |
45 | .hljs-attr,
46 | .hljs-attribute,
47 | .hljs-literal,
48 | .hljs-meta,
49 | .hljs-number,
50 | .hljs-operator,
51 | .hljs-variable,
52 | .hljs-selector-attr,
53 | .hljs-selector-class,
54 | .hljs-selector-id {
55 | /* prettylights-syntax-constant */
56 | color: #005cc5
57 | }
58 |
59 | .hljs-regexp,
60 | .hljs-string,
61 | .hljs-meta .hljs-string {
62 | /* prettylights-syntax-string */
63 | color: #032f62
64 | }
65 |
66 | .hljs-built_in,
67 | .hljs-symbol {
68 | /* prettylights-syntax-variable */
69 | color: #e36209
70 | }
71 |
72 | .hljs-comment,
73 | .hljs-code,
74 | .hljs-formula {
75 | /* prettylights-syntax-comment */
76 | color: #6a737d
77 | }
78 |
79 | .hljs-name,
80 | .hljs-quote,
81 | .hljs-selector-tag,
82 | .hljs-selector-pseudo {
83 | /* prettylights-syntax-entity-tag */
84 | color: #22863a
85 | }
86 |
87 | .hljs-subst {
88 | /* prettylights-syntax-storage-modifier-import */
89 | color: #24292e
90 | }
91 |
92 | .hljs-section {
93 | /* prettylights-syntax-markup-heading */
94 | color: #005cc5;
95 | font-weight: bold
96 | }
97 |
98 | .hljs-bullet {
99 | /* prettylights-syntax-markup-list */
100 | color: #735c0f
101 | }
102 |
103 | .hljs-emphasis {
104 | /* prettylights-syntax-markup-italic */
105 | color: #24292e;
106 | font-style: italic
107 | }
108 |
109 | .hljs-strong {
110 | /* prettylights-syntax-markup-bold */
111 | color: #24292e;
112 | font-weight: bold
113 | }
114 |
115 | .hljs-addition {
116 | /* prettylights-syntax-markup-inserted */
117 | color: #22863a;
118 | background-color: #f0fff4
119 | }
120 |
121 | .hljs-deletion {
122 | /* prettylights-syntax-markup-deleted */
123 | color: #b31d28;
124 | background-color: #ffeef0
125 | }
126 |
127 | .hljs-char.escape_,
128 | .hljs-link,
129 | .hljs-params,
130 | .hljs-property,
131 | .hljs-punctuation,
132 | .hljs-tag {
133 | /* purposely ignored */
134 |
135 | }
--------------------------------------------------------------------------------
/source/css/highlight/one-dark.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 | code.hljs {
7 | padding: 3px 5px
8 | }
9 | /*!
10 | Theme: OneDark
11 | Author: Lalit Magant (http://github.com/tilal6991)
12 | License: ~ MIT (or more permissive) [via base16-schemes-source]
13 | Maintainer: @highlightjs/core-team
14 | Version: 2021.09.0
15 | */
16 | /*
17 | WARNING: DO NOT EDIT THIS FILE DIRECTLY.
18 |
19 | This theme file was auto-generated from the Base16 scheme onedark
20 | by the Highlight.js Base16 template builder.
21 |
22 | - https://github.com/highlightjs/base16-highlightjs
23 | */
24 | /*
25 | base00 #282c34 Default Background
26 | base01 #353b45 Lighter Background (Used for status bars, line number and folding marks)
27 | base02 #3e4451 Selection Background
28 | base03 #545862 Comments, Invisibles, Line Highlighting
29 | base04 #565c64 Dark Foreground (Used for status bars)
30 | base05 #abb2bf Default Foreground, Caret, Delimiters, Operators
31 | base06 #b6bdca Light Foreground (Not often used)
32 | base07 #c8ccd4 Light Background (Not often used)
33 | base08 #e06c75 Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted
34 | base09 #d19a66 Integers, Boolean, Constants, XML Attributes, Markup Link Url
35 | base0A #e5c07b Classes, Markup Bold, Search Text Background
36 | base0B #98c379 Strings, Inherited Class, Markup Code, Diff Inserted
37 | base0C #56b6c2 Support, Regular Expressions, Escape Characters, Markup Quotes
38 | base0D #61afef Functions, Methods, Attribute IDs, Headings
39 | base0E #c678dd Keywords, Storage, Selector, Markup Italic, Diff Changed
40 | base0F #be5046 Deprecated, Opening/Closing Embedded Language Tags, e.g.
41 | */
42 | pre code.hljs {
43 | display: block;
44 | overflow-x: auto;
45 | padding: 1em
46 | }
47 | code.hljs {
48 | padding: 3px 5px
49 | }
50 | .hljs {
51 | color: #abb2bf;
52 | background: #282c34
53 | }
54 | .hljs::selection,
55 | .hljs ::selection {
56 | background-color: #3e4451;
57 | color: #abb2bf
58 | }
59 | /* purposely do not highlight these things */
60 | .hljs-formula,
61 | .hljs-params,
62 | .hljs-property {
63 |
64 | }
65 | /* base03 - #545862 - Comments, Invisibles, Line Highlighting */
66 | .hljs-comment {
67 | color: #545862
68 | }
69 | /* base04 - #565c64 - Dark Foreground (Used for status bars) */
70 | .hljs-tag {
71 | color: #565c64
72 | }
73 | /* base05 - #abb2bf - Default Foreground, Caret, Delimiters, Operators */
74 | .hljs-subst,
75 | .hljs-punctuation,
76 | .hljs-operator {
77 | color: #abb2bf
78 | }
79 | .hljs-operator {
80 | opacity: 0.7
81 | }
82 | /* base08 - Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted */
83 | .hljs-bullet,
84 | .hljs-variable,
85 | .hljs-template-variable,
86 | .hljs-selector-tag,
87 | .hljs-name,
88 | .hljs-deletion {
89 | color: #e06c75
90 | }
91 | /* base09 - Integers, Boolean, Constants, XML Attributes, Markup Link Url */
92 | .hljs-symbol,
93 | .hljs-number,
94 | .hljs-link,
95 | .hljs-attr,
96 | .hljs-variable.constant_,
97 | .hljs-literal {
98 | color: #d19a66
99 | }
100 | /* base0A - Classes, Markup Bold, Search Text Background */
101 | .hljs-title,
102 | .hljs-class .hljs-title,
103 | .hljs-title.class_ {
104 | color: #e5c07b
105 | }
106 | .hljs-strong {
107 | font-weight: bold;
108 | color: #e5c07b
109 | }
110 | /* base0B - Strings, Inherited Class, Markup Code, Diff Inserted */
111 | .hljs-code,
112 | .hljs-addition,
113 | .hljs-title.class_.inherited__,
114 | .hljs-string {
115 | color: #98c379
116 | }
117 | /* base0C - Support, Regular Expressions, Escape Characters, Markup Quotes */
118 | /* guessing */
119 | .hljs-built_in,
120 | .hljs-doctag,
121 | .hljs-quote,
122 | .hljs-keyword.hljs-atrule,
123 | .hljs-regexp {
124 | color: #56b6c2
125 | }
126 | /* base0D - Functions, Methods, Attribute IDs, Headings */
127 | .hljs-function .hljs-title,
128 | .hljs-attribute,
129 | .ruby .hljs-property,
130 | .hljs-title.function_,
131 | .hljs-section {
132 | color: #61afef
133 | }
134 | /* base0E - Keywords, Storage, Selector, Markup Italic, Diff Changed */
135 | /* .hljs-selector-id, */
136 | /* .hljs-selector-class, */
137 | /* .hljs-selector-attr, */
138 | /* .hljs-selector-pseudo, */
139 | .hljs-type,
140 | .hljs-template-tag,
141 | .diff .hljs-meta,
142 | .hljs-keyword {
143 | color: #c678dd
144 | }
145 | .hljs-emphasis {
146 | color: #c678dd;
147 | font-style: italic
148 | }
149 | /* base0F - Deprecated, Opening/Closing Embedded Language Tags, e.g. */
150 | /*
151 | prevent top level .keyword and .string scopes
152 | from leaking into meta by accident
153 | */
154 | .hljs-meta,
155 | .hljs-meta .hljs-keyword,
156 | .hljs-meta .hljs-string {
157 | color: #be5046
158 | }
159 | /* for v10 compatible themes */
160 | .hljs-meta .hljs-keyword,
161 | .hljs-meta-keyword {
162 | font-weight: bold
163 | }
--------------------------------------------------------------------------------
/source/css/highlight/one-light.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: One Light
13 | Author: Daniel Pfeifer (http://github.com/purpleKarrot)
14 | License: ~ MIT (or more permissive) [via base16-schemes-source]
15 | Maintainer: @highlightjs/core-team
16 | Version: 2021.09.0
17 | */
18 | /*
19 | WARNING: DO NOT EDIT THIS FILE DIRECTLY.
20 |
21 | This theme file was auto-generated from the Base16 scheme one-light
22 | by the Highlight.js Base16 template builder.
23 |
24 | - https://github.com/highlightjs/base16-highlightjs
25 | */
26 | /*
27 | base00 #fafafa Default Background
28 | base01 #f0f0f1 Lighter Background (Used for status bars, line number and folding marks)
29 | base02 #e5e5e6 Selection Background
30 | base03 #a0a1a7 Comments, Invisibles, Line Highlighting
31 | base04 #696c77 Dark Foreground (Used for status bars)
32 | base05 #383a42 Default Foreground, Caret, Delimiters, Operators
33 | base06 #202227 Light Foreground (Not often used)
34 | base07 #090a0b Light Background (Not often used)
35 | base08 #ca1243 Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted
36 | base09 #d75f00 Integers, Boolean, Constants, XML Attributes, Markup Link Url
37 | base0A #c18401 Classes, Markup Bold, Search Text Background
38 | base0B #50a14f Strings, Inherited Class, Markup Code, Diff Inserted
39 | base0C #0184bc Support, Regular Expressions, Escape Characters, Markup Quotes
40 | base0D #4078f2 Functions, Methods, Attribute IDs, Headings
41 | base0E #a626a4 Keywords, Storage, Selector, Markup Italic, Diff Changed
42 | base0F #986801 Deprecated, Opening/Closing Embedded Language Tags, e.g.
43 | */
44 | pre code.hljs {
45 | display: block;
46 | overflow-x: auto;
47 | padding: 1em
48 | }
49 |
50 | code.hljs {
51 | padding: 3px 5px
52 | }
53 |
54 | .hljs {
55 | color: #383a42;
56 | background: #fafafa
57 | }
58 |
59 | .hljs::selection,
60 | .hljs ::selection {
61 | background-color: #e5e5e6;
62 | color: #383a42
63 | }
64 |
65 | /* purposely do not highlight these things */
66 | .hljs-formula,
67 | .hljs-params,
68 | .hljs-property {}
69 |
70 | /* base03 - #a0a1a7 - Comments, Invisibles, Line Highlighting */
71 | .hljs-comment {
72 | color: #a0a1a7
73 | }
74 |
75 | /* base04 - #696c77 - Dark Foreground (Used for status bars) */
76 | .hljs-tag {
77 | color: #696c77
78 | }
79 |
80 | /* base05 - #383a42 - Default Foreground, Caret, Delimiters, Operators */
81 | .hljs-subst,
82 | .hljs-punctuation,
83 | .hljs-operator {
84 | color: #383a42
85 | }
86 |
87 | .hljs-operator {
88 | opacity: 0.7
89 | }
90 |
91 | /* base08 - Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted */
92 | .hljs-bullet,
93 | .hljs-variable,
94 | .hljs-template-variable,
95 | .hljs-selector-tag,
96 | .hljs-name,
97 | .hljs-deletion {
98 | color: #ca1243
99 | }
100 |
101 | /* base09 - Integers, Boolean, Constants, XML Attributes, Markup Link Url */
102 | .hljs-symbol,
103 | .hljs-number,
104 | .hljs-link,
105 | .hljs-attr,
106 | .hljs-variable.constant_,
107 | .hljs-literal {
108 | color: #d75f00
109 | }
110 |
111 | /* base0A - Classes, Markup Bold, Search Text Background */
112 | .hljs-title,
113 | .hljs-class .hljs-title,
114 | .hljs-title.class_ {
115 | color: #c18401
116 | }
117 |
118 | .hljs-strong {
119 | font-weight: bold;
120 | color: #c18401
121 | }
122 |
123 | /* base0B - Strings, Inherited Class, Markup Code, Diff Inserted */
124 | .hljs-code,
125 | .hljs-addition,
126 | .hljs-title.class_.inherited__,
127 | .hljs-string {
128 | color: #50a14f
129 | }
130 |
131 | /* base0C - Support, Regular Expressions, Escape Characters, Markup Quotes */
132 | /* guessing */
133 | .hljs-built_in,
134 | .hljs-doctag,
135 | .hljs-quote,
136 | .hljs-keyword.hljs-atrule,
137 | .hljs-regexp {
138 | color: #0184bc
139 | }
140 |
141 | /* base0D - Functions, Methods, Attribute IDs, Headings */
142 | .hljs-function .hljs-title,
143 | .hljs-attribute,
144 | .ruby .hljs-property,
145 | .hljs-title.function_,
146 | .hljs-section {
147 | color: #4078f2
148 | }
149 |
150 | /* base0E - Keywords, Storage, Selector, Markup Italic, Diff Changed */
151 | /* .hljs-selector-id, */
152 | /* .hljs-selector-class, */
153 | /* .hljs-selector-attr, */
154 | /* .hljs-selector-pseudo, */
155 | .hljs-type,
156 | .hljs-template-tag,
157 | .diff .hljs-meta,
158 | .hljs-keyword {
159 | color: #a626a4
160 | }
161 |
162 | .hljs-emphasis {
163 | color: #a626a4;
164 | font-style: italic
165 | }
166 |
167 | /* base0F - Deprecated, Opening/Closing Embedded Language Tags, e.g. */
168 | /*
169 | prevent top level .keyword and .string scopes
170 | from leaking into meta by accident
171 | */
172 | .hljs-meta,
173 | .hljs-meta .hljs-keyword,
174 | .hljs-meta .hljs-string {
175 | color: #986801
176 | }
177 |
178 | /* for v10 compatible themes */
179 | .hljs-meta .hljs-keyword,
180 | .hljs-meta-keyword {
181 | font-weight: bold
182 | }
--------------------------------------------------------------------------------
/source/css/highlight/solarized-dark.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: Solarized Dark
13 | Author: Ethan Schoonover (modified by aramisgithub)
14 | License: ~ MIT (or more permissive) [via base16-schemes-source]
15 | Maintainer: @highlightjs/core-team
16 | Version: 2021.09.0
17 | */
18 | /*
19 | WARNING: DO NOT EDIT THIS FILE DIRECTLY.
20 |
21 | This theme file was auto-generated from the Base16 scheme solarized-dark
22 | by the Highlight.js Base16 template builder.
23 |
24 | - https://github.com/highlightjs/base16-highlightjs
25 | */
26 | /*
27 | base00 #002b36 Default Background
28 | base01 #073642 Lighter Background (Used for status bars, line number and folding marks)
29 | base02 #586e75 Selection Background
30 | base03 #657b83 Comments, Invisibles, Line Highlighting
31 | base04 #839496 Dark Foreground (Used for status bars)
32 | base05 #93a1a1 Default Foreground, Caret, Delimiters, Operators
33 | base06 #eee8d5 Light Foreground (Not often used)
34 | base07 #fdf6e3 Light Background (Not often used)
35 | base08 #dc322f Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted
36 | base09 #cb4b16 Integers, Boolean, Constants, XML Attributes, Markup Link Url
37 | base0A #b58900 Classes, Markup Bold, Search Text Background
38 | base0B #859900 Strings, Inherited Class, Markup Code, Diff Inserted
39 | base0C #2aa198 Support, Regular Expressions, Escape Characters, Markup Quotes
40 | base0D #268bd2 Functions, Methods, Attribute IDs, Headings
41 | base0E #6c71c4 Keywords, Storage, Selector, Markup Italic, Diff Changed
42 | base0F #d33682 Deprecated, Opening/Closing Embedded Language Tags, e.g.
43 | */
44 | pre code.hljs {
45 | display: block;
46 | overflow-x: auto;
47 | padding: 1em
48 | }
49 |
50 | code.hljs {
51 | padding: 3px 5px
52 | }
53 |
54 | .hljs {
55 | color: #93a1a1;
56 | background: #002b36
57 | }
58 |
59 | .hljs::selection,
60 | .hljs ::selection {
61 | background-color: #586e75;
62 | color: #93a1a1
63 | }
64 |
65 | /* purposely do not highlight these things */
66 | .hljs-formula,
67 | .hljs-params,
68 | .hljs-property {}
69 |
70 | /* base03 - #657b83 - Comments, Invisibles, Line Highlighting */
71 | .hljs-comment {
72 | color: #657b83
73 | }
74 |
75 | /* base04 - #839496 - Dark Foreground (Used for status bars) */
76 | .hljs-tag {
77 | color: #839496
78 | }
79 |
80 | /* base05 - #93a1a1 - Default Foreground, Caret, Delimiters, Operators */
81 | .hljs-subst,
82 | .hljs-punctuation,
83 | .hljs-operator {
84 | color: #93a1a1
85 | }
86 |
87 | .hljs-operator {
88 | opacity: 0.7
89 | }
90 |
91 | /* base08 - Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted */
92 | .hljs-bullet,
93 | .hljs-variable,
94 | .hljs-template-variable,
95 | .hljs-selector-tag,
96 | .hljs-name,
97 | .hljs-deletion {
98 | color: #dc322f
99 | }
100 |
101 | /* base09 - Integers, Boolean, Constants, XML Attributes, Markup Link Url */
102 | .hljs-symbol,
103 | .hljs-number,
104 | .hljs-link,
105 | .hljs-attr,
106 | .hljs-variable.constant_,
107 | .hljs-literal {
108 | color: #cb4b16
109 | }
110 |
111 | /* base0A - Classes, Markup Bold, Search Text Background */
112 | .hljs-title,
113 | .hljs-class .hljs-title,
114 | .hljs-title.class_ {
115 | color: #b58900
116 | }
117 |
118 | .hljs-strong {
119 | font-weight: bold;
120 | color: #b58900
121 | }
122 |
123 | /* base0B - Strings, Inherited Class, Markup Code, Diff Inserted */
124 | .hljs-code,
125 | .hljs-addition,
126 | .hljs-title.class_.inherited__,
127 | .hljs-string {
128 | color: #859900
129 | }
130 |
131 | /* base0C - Support, Regular Expressions, Escape Characters, Markup Quotes */
132 | /* guessing */
133 | .hljs-built_in,
134 | .hljs-doctag,
135 | .hljs-quote,
136 | .hljs-keyword.hljs-atrule,
137 | .hljs-regexp {
138 | color: #2aa198
139 | }
140 |
141 | /* base0D - Functions, Methods, Attribute IDs, Headings */
142 | .hljs-function .hljs-title,
143 | .hljs-attribute,
144 | .ruby .hljs-property,
145 | .hljs-title.function_,
146 | .hljs-section {
147 | color: #268bd2
148 | }
149 |
150 | /* base0E - Keywords, Storage, Selector, Markup Italic, Diff Changed */
151 | /* .hljs-selector-id, */
152 | /* .hljs-selector-class, */
153 | /* .hljs-selector-attr, */
154 | /* .hljs-selector-pseudo, */
155 | .hljs-type,
156 | .hljs-template-tag,
157 | .diff .hljs-meta,
158 | .hljs-keyword {
159 | color: #6c71c4
160 | }
161 |
162 | .hljs-emphasis {
163 | color: #6c71c4;
164 | font-style: italic
165 | }
166 |
167 | /* base0F - Deprecated, Opening/Closing Embedded Language Tags, e.g. */
168 | /*
169 | prevent top level .keyword and .string scopes
170 | from leaking into meta by accident
171 | */
172 | .hljs-meta,
173 | .hljs-meta .hljs-keyword,
174 | .hljs-meta .hljs-string {
175 | color: #d33682
176 | }
177 |
178 | /* for v10 compatible themes */
179 | .hljs-meta .hljs-keyword,
180 | .hljs-meta-keyword {
181 | font-weight: bold
182 | }
--------------------------------------------------------------------------------
/source/css/highlight/solarized-light.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: Solarized Light
13 | Author: Ethan Schoonover (modified by aramisgithub)
14 | License: ~ MIT (or more permissive) [via base16-schemes-source]
15 | Maintainer: @highlightjs/core-team
16 | Version: 2021.09.0
17 | */
18 | /*
19 | WARNING: DO NOT EDIT THIS FILE DIRECTLY.
20 |
21 | This theme file was auto-generated from the Base16 scheme solarized-light
22 | by the Highlight.js Base16 template builder.
23 |
24 | - https://github.com/highlightjs/base16-highlightjs
25 | */
26 | /*
27 | base00 #fdf6e3 Default Background
28 | base01 #eee8d5 Lighter Background (Used for status bars, line number and folding marks)
29 | base02 #93a1a1 Selection Background
30 | base03 #839496 Comments, Invisibles, Line Highlighting
31 | base04 #657b83 Dark Foreground (Used for status bars)
32 | base05 #586e75 Default Foreground, Caret, Delimiters, Operators
33 | base06 #073642 Light Foreground (Not often used)
34 | base07 #002b36 Light Background (Not often used)
35 | base08 #dc322f Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted
36 | base09 #cb4b16 Integers, Boolean, Constants, XML Attributes, Markup Link Url
37 | base0A #b58900 Classes, Markup Bold, Search Text Background
38 | base0B #859900 Strings, Inherited Class, Markup Code, Diff Inserted
39 | base0C #2aa198 Support, Regular Expressions, Escape Characters, Markup Quotes
40 | base0D #268bd2 Functions, Methods, Attribute IDs, Headings
41 | base0E #6c71c4 Keywords, Storage, Selector, Markup Italic, Diff Changed
42 | base0F #d33682 Deprecated, Opening/Closing Embedded Language Tags, e.g.
43 | */
44 | pre code.hljs {
45 | display: block;
46 | overflow-x: auto;
47 | padding: 1em
48 | }
49 |
50 | code.hljs {
51 | padding: 3px 5px
52 | }
53 |
54 | .hljs {
55 | color: #586e75;
56 | background: #fdf6e3
57 | }
58 |
59 | .hljs::selection,
60 | .hljs ::selection {
61 | background-color: #93a1a1;
62 | color: #586e75
63 | }
64 |
65 | /* purposely do not highlight these things */
66 | .hljs-formula,
67 | .hljs-params,
68 | .hljs-property {}
69 |
70 | /* base03 - #839496 - Comments, Invisibles, Line Highlighting */
71 | .hljs-comment {
72 | color: #839496
73 | }
74 |
75 | /* base04 - #657b83 - Dark Foreground (Used for status bars) */
76 | .hljs-tag {
77 | color: #657b83
78 | }
79 |
80 | /* base05 - #586e75 - Default Foreground, Caret, Delimiters, Operators */
81 | .hljs-subst,
82 | .hljs-punctuation,
83 | .hljs-operator {
84 | color: #586e75
85 | }
86 |
87 | .hljs-operator {
88 | opacity: 0.7
89 | }
90 |
91 | /* base08 - Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted */
92 | .hljs-bullet,
93 | .hljs-variable,
94 | .hljs-template-variable,
95 | .hljs-selector-tag,
96 | .hljs-name,
97 | .hljs-deletion {
98 | color: #dc322f
99 | }
100 |
101 | /* base09 - Integers, Boolean, Constants, XML Attributes, Markup Link Url */
102 | .hljs-symbol,
103 | .hljs-number,
104 | .hljs-link,
105 | .hljs-attr,
106 | .hljs-variable.constant_,
107 | .hljs-literal {
108 | color: #cb4b16
109 | }
110 |
111 | /* base0A - Classes, Markup Bold, Search Text Background */
112 | .hljs-title,
113 | .hljs-class .hljs-title,
114 | .hljs-title.class_ {
115 | color: #b58900
116 | }
117 |
118 | .hljs-strong {
119 | font-weight: bold;
120 | color: #b58900
121 | }
122 |
123 | /* base0B - Strings, Inherited Class, Markup Code, Diff Inserted */
124 | .hljs-code,
125 | .hljs-addition,
126 | .hljs-title.class_.inherited__,
127 | .hljs-string {
128 | color: #859900
129 | }
130 |
131 | /* base0C - Support, Regular Expressions, Escape Characters, Markup Quotes */
132 | /* guessing */
133 | .hljs-built_in,
134 | .hljs-doctag,
135 | .hljs-quote,
136 | .hljs-keyword.hljs-atrule,
137 | .hljs-regexp {
138 | color: #2aa198
139 | }
140 |
141 | /* base0D - Functions, Methods, Attribute IDs, Headings */
142 | .hljs-function .hljs-title,
143 | .hljs-attribute,
144 | .ruby .hljs-property,
145 | .hljs-title.function_,
146 | .hljs-section {
147 | color: #268bd2
148 | }
149 |
150 | /* base0E - Keywords, Storage, Selector, Markup Italic, Diff Changed */
151 | /* .hljs-selector-id, */
152 | /* .hljs-selector-class, */
153 | /* .hljs-selector-attr, */
154 | /* .hljs-selector-pseudo, */
155 | .hljs-type,
156 | .hljs-template-tag,
157 | .diff .hljs-meta,
158 | .hljs-keyword {
159 | color: #6c71c4
160 | }
161 |
162 | .hljs-emphasis {
163 | color: #6c71c4;
164 | font-style: italic
165 | }
166 |
167 | /* base0F - Deprecated, Opening/Closing Embedded Language Tags, e.g. */
168 | /*
169 | prevent top level .keyword and .string scopes
170 | from leaking into meta by accident
171 | */
172 | .hljs-meta,
173 | .hljs-meta .hljs-keyword,
174 | .hljs-meta .hljs-string {
175 | color: #d33682
176 | }
177 |
178 | /* for v10 compatible themes */
179 | .hljs-meta .hljs-keyword,
180 | .hljs-meta-keyword {
181 | font-weight: bold
182 | }
--------------------------------------------------------------------------------
/source/css/highlight/tokyo-night-dark.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: Tokyo-night-Dark
13 | origin: https://github.com/enkia/tokyo-night-vscode-theme
14 | Description: Original highlight.js style
15 | Author: (c) Henri Vandersleyen
16 | License: see project LICENSE
17 | Touched: 2022
18 | */
19 | /* Comment */
20 | .hljs-meta,
21 | .hljs-comment {
22 | color: #565f89
23 | }
24 |
25 | /* Red */
26 | /*INFO: This keyword, HTML elements, Regex group symbol, CSS units, Terminal Red */
27 | .hljs-tag,
28 | .hljs-doctag,
29 | .hljs-selector-id,
30 | .hljs-selector-class,
31 | .hljs-regexp,
32 | .hljs-template-tag,
33 | .hljs-selector-pseudo,
34 | .hljs-selector-attr,
35 | .hljs-variable.language_,
36 | .hljs-deletion {
37 | color: #f7768e
38 | }
39 |
40 | /*Orange */
41 | /*INFO: Number and Boolean constants, Language support constants */
42 | .hljs-variable,
43 | .hljs-template-variable,
44 | .hljs-number,
45 | .hljs-literal,
46 | .hljs-type,
47 | .hljs-params,
48 | .hljs-link {
49 | color: #ff9e64
50 | }
51 |
52 | /* Yellow */
53 | /* INFO: Function parameters, Regex character sets, Terminal Yellow */
54 | .hljs-built_in,
55 | .hljs-attribute {
56 | color: #e0af68
57 | }
58 |
59 | /* cyan */
60 | /* INFO: Language support functions, CSS HTML elements */
61 | .hljs-selector-tag {
62 | color: #2ac3de
63 | }
64 |
65 | /* light blue */
66 | /* INFO: Object properties, Regex quantifiers and flags, Markdown headings, Terminal Cyan, Markdown code, Import/export keywords */
67 | .hljs-keyword,
68 | .hljs-title.function_,
69 | .hljs-title,
70 | .hljs-title.class_,
71 | .hljs-title.class_.inherited__,
72 | .hljs-subst,
73 | .hljs-property {
74 | color: #7dcfff
75 | }
76 |
77 | /*Green*/
78 | /* INFO: Object literal keys, Markdown links, Terminal Green */
79 | .hljs-selector-tag {
80 | color: #73daca
81 | }
82 |
83 | /*Green(er) */
84 | /* INFO: Strings, CSS class names */
85 | .hljs-quote,
86 | .hljs-string,
87 | .hljs-symbol,
88 | .hljs-bullet,
89 | .hljs-addition {
90 | color: #9ece6a
91 | }
92 |
93 | /* Blue */
94 | /* INFO: Function names, CSS property names, Terminal Blue */
95 | .hljs-code,
96 | .hljs-formula,
97 | .hljs-section {
98 | color: #7aa2f7
99 | }
100 |
101 | /* Magenta */
102 | /*INFO: Control Keywords, Storage Types, Regex symbols and operators, HTML Attributes, Terminal Magenta */
103 | .hljs-name,
104 | .hljs-keyword,
105 | .hljs-operator,
106 | .hljs-keyword,
107 | .hljs-char.escape_,
108 | .hljs-attr {
109 | color: #bb9af7
110 | }
111 |
112 | /* white*/
113 | /* INFO: Variables, Class names, Terminal White */
114 | .hljs-punctuation {
115 | color: #c0caf5
116 | }
117 |
118 | .hljs {
119 | background: #1a1b26;
120 | color: #9aa5ce
121 | }
122 |
123 | .hljs-emphasis {
124 | font-style: italic
125 | }
126 |
127 | .hljs-strong {
128 | font-weight: bold
129 | }
--------------------------------------------------------------------------------
/source/css/highlight/tokyo-night-light.css:
--------------------------------------------------------------------------------
1 | pre code.hljs {
2 | display: block;
3 | overflow-x: auto;
4 | padding: 1em
5 | }
6 |
7 | code.hljs {
8 | padding: 3px 5px
9 | }
10 |
11 | /*!
12 | Theme: Tokyo-night-light
13 | origin: https://github.com/enkia/tokyo-night-vscode-theme
14 | Description: Original highlight.js style
15 | Author: (c) Henri Vandersleyen
16 | License: see project LICENSE
17 | Touched: 2022
18 | */
19 | /* Comment */
20 | .hljs-meta,
21 | .hljs-comment {
22 | color: #9699a3
23 | }
24 |
25 | /* Red */
26 | /*INFO: This keyword, HTML elements, Regex group symbol, CSS units, Terminal Red */
27 | .hljs-tag,
28 | .hljs-doctag,
29 | .hljs-selector-id,
30 | .hljs-selector-class,
31 | .hljs-regexp,
32 | .hljs-template-tag,
33 | .hljs-selector-pseudo,
34 | .hljs-selector-attr,
35 | .hljs-variable.language_,
36 | .hljs-deletion {
37 | color: #8c4351
38 | }
39 |
40 | /*Orange */
41 | /*INFO: Number and Boolean constants, Language support constants */
42 | .hljs-variable,
43 | .hljs-template-variable,
44 | .hljs-number,
45 | .hljs-literal,
46 | .hljs-type,
47 | .hljs-params,
48 | .hljs-link {
49 | color: #965027
50 | }
51 |
52 | /* Yellow */
53 | /* INFO: Function parameters, Regex character sets, Terminal Yellow */
54 | .hljs-built_in,
55 | .hljs-attribute {
56 | color: #8f5e15
57 | }
58 |
59 | /* cyan */
60 | /* INFO: Language support functions, CSS HTML elements */
61 | .hljs-selector-tag {
62 | color: #166775
63 | }
64 |
65 | /* light blue */
66 | /* INFO: Object properties, Regex quantifiers and flags, Markdown headings, Terminal Cyan, Markdown code, Import/export keywords */
67 | .hljs-keyword,
68 | .hljs-title.function_,
69 | .hljs-title,
70 | .hljs-title.class_,
71 | .hljs-title.class_.inherited__,
72 | .hljs-subst,
73 | .hljs-property {
74 | color: #0f4b6e
75 | }
76 |
77 | /*Green*/
78 | /* INFO: Object literal keys, Markdown links, Terminal Green */
79 | .hljs-selector-tag {
80 | color: #33635c
81 | }
82 |
83 | /*Green(er) */
84 | /* INFO: Strings, CSS class names */
85 | .hljs-quote,
86 | .hljs-string,
87 | .hljs-symbol,
88 | .hljs-bullet,
89 | .hljs-addition {
90 | color: #485e30
91 | }
92 |
93 | /* Blue */
94 | /* INFO: Function names, CSS property names, Terminal Blue */
95 | .hljs-code,
96 | .hljs-formula,
97 | .hljs-section {
98 | color: #34548a
99 | }
100 |
101 | /* Magenta */
102 | /*INFO: Control Keywords, Storage Types, Regex symbols and operators, HTML Attributes, Terminal Magenta */
103 | .hljs-name,
104 | .hljs-keyword,
105 | .hljs-operator,
106 | .hljs-keyword,
107 | .hljs-char.escape_,
108 | .hljs-attr {
109 | color: #5a4a78
110 | }
111 |
112 | /* white*/
113 | /* INFO: Variables, Class names, Terminal White */
114 | .hljs-punctuation {
115 | color: #343b58
116 | }
117 |
118 | .hljs {
119 | background: #d5d6db;
120 | color: #565a6e
121 | }
122 |
123 | .hljs-emphasis {
124 | font-style: italic
125 | }
126 |
127 | .hljs-strong {
128 | font-weight: bold
129 | }
--------------------------------------------------------------------------------
/source/css/one-dark.min.css:
--------------------------------------------------------------------------------
1 | .hljs-meta .hljs-keyword,.hljs-meta-keyword,.hljs-strong{font-weight:700}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs ::selection,.hljs::selection{background-color:#3e4451;color:#abb2bf}.hljs-comment{color:#545862}.hljs-tag{color:#565c64}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#abb2bf}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e06c75}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d19a66}.hljs-class .hljs-title,.hljs-strong,.hljs-title,.hljs-title.class_{color:#e5c07b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#98c379}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#56b6c2}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#61afef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c678dd}.hljs-emphasis{color:#c678dd;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#be5046}
--------------------------------------------------------------------------------
/source/css/one-light.min.css:
--------------------------------------------------------------------------------
1 | .hljs-meta .hljs-keyword,.hljs-meta-keyword,.hljs-strong{font-weight:700}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs ::selection,.hljs::selection{background-color:#e5e5e6;color:#383a42}.hljs-comment{color:#a0a1a7}.hljs-tag{color:#696c77}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#383a42}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ca1243}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d75f00}.hljs-class .hljs-title,.hljs-strong,.hljs-title,.hljs-title.class_{color:#c18401}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#50a14f}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0184bc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4078f2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a626a4}.hljs-emphasis{color:#a626a4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#986801}
--------------------------------------------------------------------------------
/source/css/solarized-dark.min.css:
--------------------------------------------------------------------------------
1 | .hljs-meta .hljs-keyword,.hljs-meta-keyword,.hljs-strong{font-weight:700}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#93a1a1;background:#002b36}.hljs ::selection,.hljs::selection{background-color:#586e75;color:#93a1a1}.hljs-comment{color:#657b83}.hljs-tag{color:#839496}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#93a1a1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dc322f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cb4b16}.hljs-class .hljs-title,.hljs-strong,.hljs-title,.hljs-title.class_{color:#b58900}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#859900}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2aa198}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#268bd2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6c71c4}.hljs-emphasis{color:#6c71c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d33682}
--------------------------------------------------------------------------------
/source/css/solarized-light.min.css:
--------------------------------------------------------------------------------
1 | .hljs-meta .hljs-keyword,.hljs-meta-keyword,.hljs-strong{font-weight:700}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#586e75;background:#fdf6e3}.hljs ::selection,.hljs::selection{background-color:#93a1a1;color:#586e75}.hljs-comment{color:#839496}.hljs-tag{color:#657b83}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#586e75}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dc322f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cb4b16}.hljs-class .hljs-title,.hljs-strong,.hljs-title,.hljs-title.class_{color:#b58900}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#859900}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2aa198}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#268bd2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6c71c4}.hljs-emphasis{color:#6c71c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d33682}
--------------------------------------------------------------------------------
/source/css/tokyo-night-dark.min.css:
--------------------------------------------------------------------------------
1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs-comment,.hljs-meta{color:#565f89}.hljs-deletion,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-tag,.hljs-template-tag,.hljs-variable.language_{color:#f7768e}.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-template-variable,.hljs-type,.hljs-variable{color:#ff9e64}.hljs-attribute,.hljs-built_in{color:#e0af68}.hljs-keyword,.hljs-property,.hljs-subst,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#7dcfff}.hljs-selector-tag{color:#73daca}.hljs-addition,.hljs-bullet,.hljs-quote,.hljs-string,.hljs-symbol{color:#9ece6a}.hljs-code,.hljs-formula,.hljs-section{color:#7aa2f7}.hljs-attr,.hljs-char.escape_,.hljs-keyword,.hljs-name,.hljs-operator{color:#bb9af7}.hljs-punctuation{color:#c0caf5}.hljs{background:#1a1b26;color:#9aa5ce}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
--------------------------------------------------------------------------------
/source/css/tokyo-night-light.min.css:
--------------------------------------------------------------------------------
1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs-comment,.hljs-meta{color:#9699a3}.hljs-deletion,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-tag,.hljs-template-tag,.hljs-variable.language_{color:#8c4351}.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-template-variable,.hljs-type,.hljs-variable{color:#965027}.hljs-attribute,.hljs-built_in{color:#8f5e15}.hljs-keyword,.hljs-property,.hljs-subst,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#0f4b6e}.hljs-selector-tag{color:#33635c}.hljs-addition,.hljs-bullet,.hljs-quote,.hljs-string,.hljs-symbol{color:#485e30}.hljs-code,.hljs-formula,.hljs-section{color:#34548a}.hljs-attr,.hljs-char.escape_,.hljs-keyword,.hljs-name,.hljs-operator{color:#5a4a78}.hljs-punctuation{color:#343b58}.hljs{background:#d5d6db;color:#565a6e}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
--------------------------------------------------------------------------------
/source/images/404-bg.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/404-bg.webp
--------------------------------------------------------------------------------
/source/images/JSimple-Desktop-With-LocalSearch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/JSimple-Desktop-With-LocalSearch.png
--------------------------------------------------------------------------------
/source/images/JSimple-Desktop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/JSimple-Desktop.png
--------------------------------------------------------------------------------
/source/images/avatar.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/avatar.webp
--------------------------------------------------------------------------------
/source/images/cover-day.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/cover-day.webp
--------------------------------------------------------------------------------
/source/images/cover-night.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/cover-night.webp
--------------------------------------------------------------------------------
/source/images/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/favicon.png
--------------------------------------------------------------------------------
/source/images/favicon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/source/images/logo.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/logo.webp
--------------------------------------------------------------------------------
/source/images/pagespeed-test.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/pagespeed-test.png
--------------------------------------------------------------------------------
/source/images/rssFeed-bg.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/rssFeed-bg.webp
--------------------------------------------------------------------------------
/source/images/tags-bg.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tangkunyin/hexo-theme-jsimple/91a170f1b943fcbbb724c849d674718e716c04e7/source/images/tags-bg.webp
--------------------------------------------------------------------------------
/source/js/SimpleCore.min.js:
--------------------------------------------------------------------------------
1 | !function(t,e){"function"==typeof define&&define.amd?define(function(){return e(t)}):e(t)}(this,function(h){M=(i=[]).concat,o=i.filter,l=i.slice,f=h.document,p={},e={},R={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},Z=/^\s*<(\w+|!)[^>]*>/,z=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,q=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,H=/^(?:body|html)$/i,I=/([A-Z])/g,V=["val","css","html","text","data","width","height","offset"],t=f.createElement("table"),_=f.createElement("tr"),B={tr:f.createElement("tbody"),tbody:t,thead:t,tfoot:t,td:_,th:_,"*":f.createElement("div")},U=/complete|loaded|interactive/,X=/^[\w-]*$/,W=(J={}).toString,d={},Y=f.createElement("div"),G={tabindex:"tabIndex",readonly:"readOnly",for:"htmlFor",class:"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},m=Array.isArray||function(t){return t instanceof Array},d.matches=function(t,e){var n,r;return!(!e||!t||1!==t.nodeType)&&((n=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.matchesSelector)?n.call(t,e):((r=!(n=t.parentNode))&&(n=Y).appendChild(t),n=~d.qsa(n,e).indexOf(t),r&&Y.removeChild(t),n))},s=function(t){return t.replace(/-+(.)?/g,function(t,e){return e?e.toUpperCase():""})},n=function(n){return o.call(n,function(t,e){return n.indexOf(t)==e})},d.fragment=function(t,e,n){var r,i,o;return(r=z.test(t)?c(f.createElement(RegExp.$1)):r)||(t.replace&&(t=t.replace(q,"<$1>$2>")),e===u&&(e=Z.test(t)&&RegExp.$1),(o=B[e=e in B?e:"*"]).innerHTML=""+t,r=c.each(l.call(o.childNodes),function(){o.removeChild(this)})),N(n)&&(i=c(r),c.each(n,function(t,e){-1)<[^<]*)*<\/script>/gi,et=/^(?:text|application)\/javascript/i,nt=/^(?:text|application)\/xml/i,rt="application/json",it="text/html",ot=/^\s*$/,(at=x.createElement("a")).href=h.location.href,g.active=0,g.ajaxJSONP=function(n,r){var i,o,t,a,s,u,e,c;return"type"in n?(t=n.jsonpCallback,a=(g.isFunction(t)?t():t)||"Zepto"+Q++,s=x.createElement("script"),u=h[a],c={abort:e=function(t){g(s).triggerHandler("error",t||"abort")}},r&&r.promise(c),g(s).on("load error",function(t,e){clearTimeout(o),g(s).off().remove(),"error"!=t.type&&i?At(i[0],c,n,r):L(null,e||"error",c,n,r),h[a]=u,i&&g.isFunction(u)&&u(i[0]),u=i=void 0}),!1===Pt(c,n)?e("abort"):(h[a]=function(){i=arguments},s.src=n.url.replace(/\?(.+)=\?/,"?$1="+a),x.head.appendChild(s),0").html(t.replace(tt,"")).find(r):t),a&&a.apply(i,arguments)},g.ajax(t)),this},st=encodeURIComponent,g.param=function(t,e){var n=[];return n.add=function(t,e){null==(e=g.isFunction(e)?e():e)&&(e=""),this.push(st(t)+"="+st(e))},function n(r,t,i,o){var a,s=g.isArray(t),u=g.isPlainObject(t);g.each(t,function(t,e){a=g.type(e),o&&(t=i?o:o+"["+(u||"object"==a||"array"==a?t:"")+"]"),!o&&s?r.add(e.name,e.value):"array"==a||!i&&"object"==a?n(r,e,i,t):r.add(t,e)})}(n,t,e),n.join("&").replace(/%20/g,"+")},(v=t).fn.serializeArray=function(){function n(t){return t.forEach?t.forEach(n):void e.push({name:r,value:t})}var r,i,e=[];return this[0]&&v.each(this[0].elements,function(t,e){i=e.type,(r=e.name)&&"fieldset"!=e.nodeName.toLowerCase()&&!e.disabled&&"submit"!=i&&"reset"!=i&&"button"!=i&&"file"!=i&&("radio"!=i&&"checkbox"!=i||e.checked)&&n(v(e).val())}),e},v.fn.serialize=function(){var e=[];return this.serializeArray().forEach(function(t){e.push(encodeURIComponent(t.name)+"="+encodeURIComponent(t.value))}),e.join("&")},v.fn.submit=function(t){return 0 in arguments?this.bind("submit",t):this.length&&(t=v.Event("submit"),this.eq(0).trigger(t),t.isDefaultPrevented()||this.get(0).submit()),this};try{getComputedStyle(void 0)}catch(t){var Ot=getComputedStyle;h.getComputedStyle=function(t,e){try{return Ot(t,e)}catch(t){return null}}}return t;function D(t,e,n,r){return t.global?(t=e||x,e=n,n=r,e=g.Event(e),g(t).trigger(e,n),!e.isDefaultPrevented()):void 0}function Pt(t,e){var n=e.context;return!1!==e.beforeSend.call(n,t,e)&&!1!==D(e,n,"ajaxBeforeSend",[t,e])&&void D(e,n,"ajaxSend",[t,e])}function At(t,e,n,r){var i=n.context,o="success";n.success.call(i,t,o,e),r&&r.resolveWith(i,[t,o,e]),D(n,i,"ajaxSuccess",[e,n,t]),Dt(o,e,n)}function L(t,e,n,r,i){var o=r.context;r.error.call(o,n,e,t),i&&i.rejectWith(o,[n,e,t]),D(r,o,"ajaxError",[n,r,t||e]),Dt(e,n,r)}function Dt(t,e,n){var r=n.context;n.complete.call(r,e,t),D(n,r,"ajaxComplete",[e,n]),(t=n).global&&!--g.active&&D(t,null,"ajaxStop")}function $(){}function Lt(t,e){return""==e?t:(t+"&"+e).replace(/[&?]{1,2}/,"?")}function $t(t,e,n,r){return g.isFunction(e)&&(r=n,n=e,e=void 0),g.isFunction(n)||(r=n,n=void 0),{url:t,data:e,success:n,dataType:r}}function F(t){return t._zid||(t._zid=ut++)}function Ft(t,e,n,r){var i;return(e=kt(e)).ns&&(i=new RegExp("(?:^| )"+e.ns.replace(" "," .* ?")+"(?: |$)")),(j[F(t)]||[]).filter(function(t){return t&&(!e.e||t.e==e.e)&&(!e.ns||i.test(t.ns))&&(!n||F(t.fn)===F(n))&&(!r||t.sel==r)})}function kt(t){t=(""+t).split(".");return{e:t[0],ns:t.slice(1).sort().join(" ")}}function Mt(t,e){return t.del&&!ft&&t.e in ht||!!e}function Rt(t){return pt[t]||ft&&ht[t]||t}function Zt(r,t,i,o,a,s,u){var e=F(r),c=j[e]||(j[e]=[]);t.split(/\s/).forEach(function(t){if("ready"==t)return b(document).ready(i);var e=kt(t),n=(e.fn=i,e.sel=a,e.e in pt&&(i=function(t){t=t.relatedTarget;return!t||t!==this&&!b.contains(this,t)?e.fn.apply(this,arguments):void 0}),(e.del=s)||i);e.proxy=function(t){var e;if(!(t=qt(t)).isImmediatePropagationStopped())return t.data=o,!1===(e=n.apply(r,t._args==E?[t]:[t].concat(t._args)))&&(t.preventDefault(),t.stopPropagation()),e},e.i=c.length,c.push(e),"addEventListener"in r&&r.addEventListener(Rt(e.e),e.proxy,Mt(e,u))})}function zt(e,t,n,r,i){var o=F(e);(t||"").split(/\s/).forEach(function(t){Ft(e,t,n,r).forEach(function(t){delete j[o][t.i],"removeEventListener"in e&&e.removeEventListener(Rt(t.e),t.proxy,Mt(t,i))})})}function qt(r,i){return(i||!r.isDefaultPrevented)&&(i=i||r,b.each(gt,function(t,e){var n=i[t];r[t]=function(){return this[e]=dt,n&&n.apply(i,arguments)},r[e]=mt}),r.timeStamp||(r.timeStamp=Date.now()),i.defaultPrevented!==E?i.defaultPrevented:"returnValue"in i?!1===i.returnValue:i.getPreventDefault&&i.getPreventDefault())&&(r.isDefaultPrevented=dt),r}function Ht(t){var e,n={originalEvent:t};for(e in t)vt.test(e)||t[e]===E||(n[e]=t[e]);return qt(n,t)}function k(t){return"string"==typeof t}});
2 | function _createForOfIteratorHelper(e,o){var t,r,n,a,i="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(i)return n=!(r=!0),{s:function(){i=i.call(e)},n:function(){var e=i.next();return r=e.done,e},e:function(e){n=!0,t=e},f:function(){try{r||null==i.return||i.return()}finally{if(n)throw t}}};if(Array.isArray(e)||(i=_unsupportedIterableToArray(e))||o&&e&&"number"==typeof e.length)return i&&(e=i),a=0,{s:o=function(){},n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:o};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,o){var t;if(e)return"string"==typeof e?_arrayLikeToArray(e,o):"Map"===(t="Object"===(t={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,o):void 0}function _arrayLikeToArray(e,o){(null==o||o>e.length)&&(o=e.length);for(var t=0,r=Array(o);t