├── hexo.sh ├── README.md ├── themes ├── next │ ├── source │ │ ├── fonts │ │ │ └── .gitkeep │ │ ├── css │ │ │ ├── _mixins │ │ │ │ ├── Mist.styl │ │ │ │ ├── Muse.styl │ │ │ │ ├── custom.styl │ │ │ │ ├── Gemini.styl │ │ │ │ ├── Pisces.styl │ │ │ │ └── base.styl │ │ │ ├── _variables │ │ │ │ ├── Muse.styl │ │ │ │ ├── custom.styl │ │ │ │ ├── Mist.styl │ │ │ │ └── Gemini.styl │ │ │ ├── _custom │ │ │ │ └── custom.styl │ │ │ ├── _schemes │ │ │ │ ├── Mist │ │ │ │ │ ├── _logo.styl │ │ │ │ │ ├── outline │ │ │ │ │ │ └── outline.styl │ │ │ │ │ ├── sidebar │ │ │ │ │ │ └── sidebar-blogroll.styl │ │ │ │ │ ├── _search.styl │ │ │ │ │ ├── _base.styl │ │ │ │ │ ├── _menu.styl │ │ │ │ │ ├── _header.styl │ │ │ │ │ └── _posts-expanded.styl │ │ │ │ ├── Pisces │ │ │ │ │ ├── _posts.styl │ │ │ │ │ ├── index.styl │ │ │ │ │ ├── _brand.styl │ │ │ │ │ └── _menu.styl │ │ │ │ └── Muse │ │ │ │ │ ├── sidebar │ │ │ │ │ └── sidebar-blogroll.styl │ │ │ │ │ ├── _search.styl │ │ │ │ │ ├── index.styl │ │ │ │ │ ├── _layout.styl │ │ │ │ │ ├── _logo.styl │ │ │ │ │ └── _menu.styl │ │ │ ├── _common │ │ │ │ ├── components │ │ │ │ │ ├── comments.styl │ │ │ │ │ ├── post │ │ │ │ │ │ ├── post-button.styl │ │ │ │ │ │ ├── post-tags.styl │ │ │ │ │ │ ├── post-rtl.styl │ │ │ │ │ │ ├── post-type.styl │ │ │ │ │ │ ├── post-copyright.styl │ │ │ │ │ │ ├── post-eof.styl │ │ │ │ │ │ ├── post-gallery.styl │ │ │ │ │ │ ├── post-title.styl │ │ │ │ │ │ ├── post-widgets.styl │ │ │ │ │ │ ├── post-meta.styl │ │ │ │ │ │ ├── post-nav.styl │ │ │ │ │ │ ├── post-expand.styl │ │ │ │ │ │ └── post-reward.styl │ │ │ │ │ ├── third-party │ │ │ │ │ │ ├── han.styl │ │ │ │ │ │ ├── jiathis.styl │ │ │ │ │ │ ├── baidushare.styl │ │ │ │ │ │ ├── gitment.styl │ │ │ │ │ │ ├── third-party.styl │ │ │ │ │ │ ├── busuanzi-counter.styl │ │ │ │ │ │ └── needsharebutton.styl │ │ │ │ │ ├── header │ │ │ │ │ │ ├── headerband.styl │ │ │ │ │ │ ├── header.styl │ │ │ │ │ │ ├── site-nav.styl │ │ │ │ │ │ ├── menu.styl │ │ │ │ │ │ └── site-meta.styl │ │ │ │ │ ├── tag-cloud.styl │ │ │ │ │ ├── pages │ │ │ │ │ │ ├── pages.styl │ │ │ │ │ │ ├── post-detail.styl │ │ │ │ │ │ ├── archive.styl │ │ │ │ │ │ └── categories.styl │ │ │ │ │ ├── highlight │ │ │ │ │ │ └── diff.styl │ │ │ │ │ ├── components.styl │ │ │ │ │ ├── tags │ │ │ │ │ │ ├── full-image.styl │ │ │ │ │ │ ├── tags.styl │ │ │ │ │ │ ├── label.styl │ │ │ │ │ │ ├── exturl.styl │ │ │ │ │ │ ├── group-pictures.styl │ │ │ │ │ │ └── blockquote-center.styl │ │ │ │ │ ├── sidebar │ │ │ │ │ │ ├── sidebar-feed-link.styl │ │ │ │ │ │ ├── sidebar-dimmer.styl │ │ │ │ │ │ ├── sidebar-blogroll.styl │ │ │ │ │ │ ├── sidebar-author-links.styl │ │ │ │ │ │ ├── sidebar-author.styl │ │ │ │ │ │ ├── site-state.styl │ │ │ │ │ │ ├── sidebar-nav.styl │ │ │ │ │ │ ├── sidebar-toggle.styl │ │ │ │ │ │ ├── sidebar.styl │ │ │ │ │ │ └── sidebar-toc.styl │ │ │ │ │ ├── footer │ │ │ │ │ │ └── footer.styl │ │ │ │ │ ├── back-to-top-sidebar.styl │ │ │ │ │ ├── back-to-top.styl │ │ │ │ │ ├── buttons.styl │ │ │ │ │ └── pagination.styl │ │ │ │ ├── scaffolding │ │ │ │ │ ├── scaffolding.styl │ │ │ │ │ ├── tables.styl │ │ │ │ │ └── helpers.styl │ │ │ │ └── outline │ │ │ │ │ └── outline.styl │ │ │ └── main.styl │ │ ├── images │ │ │ ├── avatar.gif │ │ │ ├── loading.gif │ │ │ ├── placeholder.gif │ │ │ ├── searchicon.png │ │ │ ├── favicon-16x16-next.png │ │ │ ├── favicon-32x32-next.png │ │ │ ├── apple-touch-icon-next.png │ │ │ ├── quote-r.svg │ │ │ ├── quote-l.svg │ │ │ └── logo.svg │ │ ├── lib │ │ │ ├── Han │ │ │ │ └── dist │ │ │ │ │ └── font │ │ │ │ │ ├── han.otf │ │ │ │ │ ├── han.woff │ │ │ │ │ ├── han.woff2 │ │ │ │ │ ├── han-space.otf │ │ │ │ │ └── han-space.woff │ │ │ ├── fancybox │ │ │ │ ├── source │ │ │ │ │ ├── blank.gif │ │ │ │ │ ├── fancybox_loading.gif │ │ │ │ │ ├── fancybox_overlay.png │ │ │ │ │ ├── fancybox_sprite.png │ │ │ │ │ ├── fancybox_sprite@2x.png │ │ │ │ │ ├── fancybox_loading@2x.gif │ │ │ │ │ └── helpers │ │ │ │ │ │ ├── fancybox_buttons.png │ │ │ │ │ │ └── jquery.fancybox-thumbs.css │ │ │ │ ├── .gitattributes │ │ │ │ └── .bower.json │ │ │ ├── font-awesome │ │ │ │ ├── fonts │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ │ ├── HELP-US-OUT.txt │ │ │ │ ├── .gitignore │ │ │ │ ├── bower.json │ │ │ │ ├── .npmignore │ │ │ │ └── .bower.json │ │ │ ├── fastclick │ │ │ │ ├── bower.json │ │ │ │ ├── .bower.json │ │ │ │ └── LICENSE │ │ │ ├── pace │ │ │ │ ├── pace-theme-minimal.min.css │ │ │ │ ├── pace-theme-fill-left.min.css │ │ │ │ ├── pace-theme-big-counter.min.css │ │ │ │ ├── pace-theme-center-simple.min.css │ │ │ │ ├── pace-theme-center-radar.min.css │ │ │ │ ├── pace-theme-corner-indicator.min.css │ │ │ │ ├── pace-theme-flash.min.css │ │ │ │ └── pace-theme-center-circle.min.css │ │ │ ├── jquery │ │ │ │ └── .bower.json │ │ │ ├── jquery_lazyload │ │ │ │ ├── bower.json │ │ │ │ └── .bower.json │ │ │ ├── velocity │ │ │ │ ├── bower.json │ │ │ │ └── .bower.json │ │ │ └── canvas-nest │ │ │ │ └── canvas-nest.min.js │ │ └── js │ │ │ └── src │ │ │ ├── scroll-cookie.js │ │ │ ├── bootstrap.js │ │ │ └── schemes │ │ │ └── pisces.js │ ├── layout │ │ ├── _custom │ │ │ ├── header.swig │ │ │ └── sidebar.swig │ │ ├── _scripts │ │ │ ├── schemes │ │ │ │ ├── mist.swig │ │ │ │ ├── muse.swig │ │ │ │ ├── gemini.swig │ │ │ │ └── pisces.swig │ │ │ ├── pages │ │ │ │ └── post-details.swig │ │ │ ├── boostrap.swig │ │ │ └── commons.swig │ │ ├── _partials │ │ │ ├── head │ │ │ │ └── custom-head.swig │ │ │ ├── search │ │ │ │ ├── tinysou.swig │ │ │ │ ├── swiftype.swig │ │ │ │ └── localsearch.swig │ │ │ ├── share │ │ │ │ ├── add-this.swig │ │ │ │ ├── duoshuo_share.swig │ │ │ │ └── jiathis.swig │ │ │ ├── pagination.swig │ │ │ ├── search.swig │ │ │ ├── page-header.swig │ │ │ └── footer.swig │ │ ├── _third-party │ │ │ ├── search │ │ │ │ ├── index.swig │ │ │ │ ├── algolia-search │ │ │ │ │ ├── dom.swig │ │ │ │ │ └── assets.swig │ │ │ │ └── tinysou.swig │ │ │ ├── exturl.swig │ │ │ ├── analytics │ │ │ │ ├── analytics-with-widget.swig │ │ │ │ ├── index.swig │ │ │ │ ├── cnzz-analytics.swig │ │ │ │ ├── tencent-analytics.swig │ │ │ │ ├── baidu-analytics.swig │ │ │ │ ├── tencent-mta.swig │ │ │ │ ├── google-analytics.swig │ │ │ │ ├── facebook-sdk.swig │ │ │ │ ├── busuanzi-counter.swig │ │ │ │ ├── vkontakte-api.swig │ │ │ │ └── application-insights.swig │ │ │ ├── duoshuo-hot-articles.swig │ │ │ ├── comments │ │ │ │ ├── index.swig │ │ │ │ ├── youyan.swig │ │ │ │ ├── livere.swig │ │ │ │ ├── disqus.swig │ │ │ │ ├── valine.swig │ │ │ │ ├── hypercomments.swig │ │ │ │ ├── changyan.swig │ │ │ │ └── duoshuo.swig │ │ │ ├── scroll-cookie.swig │ │ │ ├── seo │ │ │ │ └── baidu-push.swig │ │ │ ├── rating.swig │ │ │ ├── mathjax.swig │ │ │ └── needsharebutton.swig │ │ ├── _macro │ │ │ ├── wechat-subscriber.swig │ │ │ ├── post-copyright.swig │ │ │ ├── reward.swig │ │ │ └── post-collapse.swig │ │ ├── schedule.swig │ │ ├── index.swig │ │ ├── tag.swig │ │ ├── post.swig │ │ └── category.swig │ ├── .bowerrc │ ├── .gitattributes │ ├── .hound.yml │ ├── .github │ │ ├── browserstack_logo.png │ │ ├── CONTRIBUTING.md │ │ └── ISSUE_TEMPLATE.md │ ├── .javascript_ignore │ ├── .editorconfig │ ├── .gitignore │ ├── test │ │ └── .jshintrc │ ├── scripts │ │ ├── tags │ │ │ ├── center-quote.js │ │ │ ├── note.js │ │ │ ├── label.js │ │ │ ├── button.js │ │ │ ├── full-image.js │ │ │ └── lazy-image.js │ │ └── merge-configs.js │ ├── .jshintrc │ ├── .travis.yml │ ├── bower.json │ ├── package.json │ ├── LICENSE │ ├── .stylintrc │ ├── gulpfile.coffee │ └── languages │ │ ├── ja.yml │ │ ├── ko.yml │ │ ├── zh-Hans.yml │ │ ├── zh-HK.yml │ │ └── zh-TW.yml └── landscape │ ├── .gitignore │ ├── layout │ ├── index.ejs │ ├── page.ejs │ ├── post.ejs │ ├── tag.ejs │ ├── archive.ejs │ ├── category.ejs │ ├── _partial │ │ ├── post │ │ │ ├── tag.ejs │ │ │ ├── date.ejs │ │ │ ├── category.ejs │ │ │ ├── gallery.ejs │ │ │ ├── title.ejs │ │ │ └── nav.ejs │ │ ├── mobile-nav.ejs │ │ ├── sidebar.ejs │ │ ├── archive-post.ejs │ │ ├── footer.ejs │ │ ├── google-analytics.ejs │ │ ├── gauges-analytics.ejs │ │ ├── after-footer.ejs │ │ ├── archive.ejs │ │ ├── header.ejs │ │ ├── head.ejs │ │ └── article.ejs │ ├── _widget │ │ ├── tagcloud.ejs │ │ ├── tag.ejs │ │ ├── category.ejs │ │ ├── archive.ejs │ │ └── recent_posts.ejs │ └── layout.ejs │ ├── source │ ├── fancybox │ │ ├── blank.gif │ │ ├── fancybox_loading.gif │ │ ├── fancybox_overlay.png │ │ ├── fancybox_sprite.png │ │ ├── fancybox_loading@2x.gif │ │ ├── fancybox_sprite@2x.png │ │ └── helpers │ │ │ ├── fancybox_buttons.png │ │ │ └── jquery.fancybox-thumbs.css │ └── css │ │ ├── images │ │ └── banner.jpg │ │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.ttf │ │ └── fontawesome-webfont.woff │ │ ├── _partial │ │ ├── comment.styl │ │ ├── footer.styl │ │ ├── mobile.styl │ │ ├── sidebar-bottom.styl │ │ ├── sidebar-aside.styl │ │ ├── sidebar.styl │ │ └── archive.styl │ │ ├── _util │ │ ├── mixin.styl │ │ └── grid.styl │ │ ├── _extend.styl │ │ └── _variables.styl │ ├── package.json │ ├── languages │ ├── ko.yml │ ├── zh-CN.yml │ ├── zh-TW.yml │ ├── ja.yml │ ├── no.yml │ ├── default.yml │ ├── de.yml │ ├── es.yml │ ├── ru.yml │ ├── nl.yml │ ├── fr.yml │ └── pt.yml │ ├── _config.yml │ ├── scripts │ └── fancybox.js │ ├── LICENSE │ └── Gruntfile.js ├── scaffolds ├── draft.md ├── page.md └── post.md ├── .gitignore ├── source └── categories │ └── index.md ├── app.js └── package.json /hexo.sh: -------------------------------------------------------------------------------- 1 | hexo server 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # hexo-blog 2 | -------------------------------------------------------------------------------- /themes/next/source/fonts/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/layout/_custom/header.swig: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /themes/next/source/css/_mixins/Mist.styl: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/source/css/_mixins/Muse.styl: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/source/css/_mixins/custom.styl: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/source/css/_variables/Muse.styl: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/layout/_custom/sidebar.swig: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/schemes/mist.swig: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/schemes/muse.swig: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/source/css/_variables/custom.styl: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/landscape/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | tmp -------------------------------------------------------------------------------- /scaffolds/draft.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: {{ title }} 3 | tags: 4 | --- 5 | -------------------------------------------------------------------------------- /themes/next/.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "directory": "source/lib" 3 | } 4 | -------------------------------------------------------------------------------- /themes/next/source/css/_custom/custom.styl: -------------------------------------------------------------------------------- 1 | // Custom styles. 2 | -------------------------------------------------------------------------------- /themes/next/source/css/_mixins/Gemini.styl: -------------------------------------------------------------------------------- 1 | @import "Pisces.styl"; 2 | -------------------------------------------------------------------------------- /scaffolds/page.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: {{ title }} 3 | date: {{ date }} 4 | --- 5 | -------------------------------------------------------------------------------- /themes/next/layout/_partials/head/custom-head.swig: -------------------------------------------------------------------------------- 1 | {# 2 | Custom head. 3 | #} 4 | -------------------------------------------------------------------------------- /scaffolds/post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: {{ title }} 3 | date: {{ date }} 4 | tags: 5 | --- 6 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/_logo.styl: -------------------------------------------------------------------------------- 1 | .site-subtitle { display: none; } 2 | -------------------------------------------------------------------------------- /themes/landscape/layout/index.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/archive', {pagination: 2, index: true}) %> -------------------------------------------------------------------------------- /themes/landscape/layout/page.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/article', {post: page, index: false}) %> -------------------------------------------------------------------------------- /themes/landscape/layout/post.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/article', {post: page, index: false}) %> -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/comments.styl: -------------------------------------------------------------------------------- 1 | .comments { margin: 60px 20px 0; } 2 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/outline/outline.styl: -------------------------------------------------------------------------------- 1 | .main-inner { margin-top: 80px; } 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | Thumbs.db 3 | db.json 4 | *.log 5 | node_modules/ 6 | public/ 7 | .deploy*/ -------------------------------------------------------------------------------- /themes/next/.gitattributes: -------------------------------------------------------------------------------- 1 | source/lib/* linguist-vendored 2 | scripts/merge.js linguist-vendored 3 | -------------------------------------------------------------------------------- /themes/landscape/layout/tag.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/archive', {pagination: config.tag, index: true}) %> -------------------------------------------------------------------------------- /themes/landscape/layout/archive.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/archive', {pagination: config.archive, index: true}) %> -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-button.styl: -------------------------------------------------------------------------------- 1 | .post-button { 2 | margin-top: 40px; 3 | } 4 | -------------------------------------------------------------------------------- /themes/landscape/layout/category.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/archive', {pagination: config.category, index: true}) %> -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/han.styl: -------------------------------------------------------------------------------- 1 | .fa { 2 | font-family: FontAwesome!important; 3 | } 4 | -------------------------------------------------------------------------------- /themes/next/.hound.yml: -------------------------------------------------------------------------------- 1 | javascript: 2 | enabled: true 3 | config_file: .jshintrc 4 | ignore_file: .javascript_ignore 5 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Pisces/_posts.styl: -------------------------------------------------------------------------------- 1 | .post-body { 2 | +mobile() { 3 | text-align: justify; 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /source/categories/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 分类 3 | date: 2018-12-25 21:10:14 4 | type: "categories" 5 | comments: false 6 | --- 7 | -------------------------------------------------------------------------------- /themes/next/source/images/avatar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/avatar.gif -------------------------------------------------------------------------------- /themes/next/source/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/loading.gif -------------------------------------------------------------------------------- /themes/next/.github/browserstack_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/.github/browserstack_logo.png -------------------------------------------------------------------------------- /themes/next/source/images/placeholder.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/placeholder.gif -------------------------------------------------------------------------------- /themes/next/source/images/searchicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/searchicon.png -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/blank.gif -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/sidebar/sidebar-blogroll.styl: -------------------------------------------------------------------------------- 1 | .links-of-blogroll-inline .links-of-blogroll-item { display: inline-block; } 2 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Muse/sidebar/sidebar-blogroll.styl: -------------------------------------------------------------------------------- 1 | .links-of-blogroll-inline .links-of-blogroll-item { display: inline-block; } 2 | -------------------------------------------------------------------------------- /themes/next/source/lib/Han/dist/font/han.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/Han/dist/font/han.otf -------------------------------------------------------------------------------- /themes/landscape/source/css/images/banner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/css/images/banner.jpg -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/header/headerband.styl: -------------------------------------------------------------------------------- 1 | .headband { 2 | height: $headband-height; 3 | background: $headband-bg; 4 | } 5 | -------------------------------------------------------------------------------- /themes/next/source/lib/Han/dist/font/han.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/Han/dist/font/han.woff -------------------------------------------------------------------------------- /themes/next/source/lib/Han/dist/font/han.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/Han/dist/font/han.woff2 -------------------------------------------------------------------------------- /themes/landscape/source/css/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/css/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/next/.javascript_ignore: -------------------------------------------------------------------------------- 1 | source/vendors/* 2 | source/lib/* 3 | source/js/src/affix.js 4 | source/js/src/scrollspy.js 5 | source/js/src/js.cookie.js 6 | -------------------------------------------------------------------------------- /themes/next/source/images/favicon-16x16-next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/favicon-16x16-next.png -------------------------------------------------------------------------------- /themes/next/source/images/favicon-32x32-next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/favicon-32x32-next.png -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/blank.gif -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Pisces/index.styl: -------------------------------------------------------------------------------- 1 | @import "_layout"; 2 | @import "_brand"; 3 | @import "_menu"; 4 | @import "_sidebar"; 5 | @import "_posts"; 6 | -------------------------------------------------------------------------------- /themes/next/source/images/apple-touch-icon-next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/images/apple-touch-icon-next.png -------------------------------------------------------------------------------- /themes/next/source/lib/Han/dist/font/han-space.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/Han/dist/font/han-space.otf -------------------------------------------------------------------------------- /themes/next/source/lib/Han/dist/font/han-space.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/Han/dist/font/han-space.woff -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/fancybox_loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/fancybox_loading.gif -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/fancybox_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/fancybox_overlay.png -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/fancybox_sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/fancybox_sprite.png -------------------------------------------------------------------------------- /themes/next/layout/_third-party/search/index.swig: -------------------------------------------------------------------------------- 1 | {% include 'tinysou.swig' %} 2 | {% include 'localsearch.swig' %} 3 | {% include 'algolia-search/assets.swig' %} 4 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/_search.styl: -------------------------------------------------------------------------------- 1 | // Search 2 | // -------------------------------------------------- 3 | .site-search form { 4 | display: none; 5 | } -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Muse/_search.styl: -------------------------------------------------------------------------------- 1 | // Search 2 | // -------------------------------------------------- 3 | .site-search form { 4 | display: none; 5 | } -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/fancybox_loading@2x.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/fancybox_loading@2x.gif -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/fancybox_sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/fancybox_sprite@2x.png -------------------------------------------------------------------------------- /themes/next/layout/_partials/search/tinysou.swig: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | -------------------------------------------------------------------------------- /themes/landscape/source/css/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/css/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /themes/landscape/source/css/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/css/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /themes/landscape/source/css/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/css/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tag-cloud.styl: -------------------------------------------------------------------------------- 1 | .tag-cloud { 2 | text-align: center; 3 | 4 | a { 5 | display: inline-block; 6 | margin: 10px; 7 | } 8 | } -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/fancybox_loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/fancybox_loading.gif -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/fancybox_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/fancybox_overlay.png -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/fancybox_sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/fancybox_sprite.png -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/helpers/fancybox_buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/landscape/source/fancybox/helpers/fancybox_buttons.png -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/fancybox_sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/fancybox_sprite@2x.png -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/fancybox_loading@2x.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/fancybox_loading@2x.gif -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/pages/pages.styl: -------------------------------------------------------------------------------- 1 | // Page specific styles 2 | 3 | @import "archive"; 4 | @import "categories"; 5 | @import "schedule"; 6 | @import "post-detail"; 7 | -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/next/layout/_third-party/exturl.swig: -------------------------------------------------------------------------------- 1 | {% if theme.exturl %} 2 | 3 | {% endif %} 4 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Muse/index.styl: -------------------------------------------------------------------------------- 1 | @import "_layout.styl"; 2 | @import "_logo.styl"; 3 | @import "_menu.styl"; 4 | @import "_search.styl"; 5 | @import "sidebar/sidebar-blogroll"; 6 | -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/helpers/fancybox_buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/fancybox/source/helpers/fancybox_buttons.png -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TianchengLee/hexo-blog/master/themes/next/source/lib/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/post/tag.ejs: -------------------------------------------------------------------------------- 1 | <% if (post.tags && post.tags.length){ %> 2 | <%- list_tags(post.tags, { 3 | show_count: false, 4 | class: 'article-tag' 5 | }) %> 6 | <% } %> -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/pages/post-detail.styl: -------------------------------------------------------------------------------- 1 | .page-post-detail { 2 | 3 | .sidebar-toggle-line { background: $sidebar-highlight; } 4 | 5 | .comments { overflow: hidden; } 6 | } 7 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/mobile-nav.ejs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/analytics-with-widget.swig: -------------------------------------------------------------------------------- 1 | {% include 'busuanzi-counter.swig' %} 2 | {% include 'tencent-mta.swig' %} 3 | {% include 'tencent-analytics.swig' %} 4 | {% include 'cnzz-analytics.swig' %} -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/post/date.ejs: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/jiathis.styl: -------------------------------------------------------------------------------- 1 | .post-spread { 2 | margin-top: 20px; 3 | text-align: center; 4 | } 5 | 6 | .jiathis_style { 7 | display: inline-block; 8 | 9 | a { border: none; } 10 | } -------------------------------------------------------------------------------- /themes/next/layout/_third-party/duoshuo-hot-articles.swig: -------------------------------------------------------------------------------- 1 | {# 多说热评文章 #} 2 | {% if (theme.duoshuo_hotartical and page.title) %} 3 |

热评文章

4 |
5 | {% endif %} 6 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/sidebar.ejs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Denote all files that are truly binary and should not be modified. 5 | *.png binary 6 | *.jpg binary 7 | *.gif binary -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/index.swig: -------------------------------------------------------------------------------- 1 | {% include 'facebook-sdk.swig' %} 2 | {% include 'vkontakte-api.swig' %} 3 | {% include 'google-analytics.swig' %} 4 | {% include 'baidu-analytics.swig' %} 5 | {% include 'application-insights.swig' %} 6 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Muse/_layout.styl: -------------------------------------------------------------------------------- 1 | .header-inner, .container .main-inner, .footer-inner { 2 | +mobile() { width: auto; } 3 | } 4 | 5 | // embed tag 6 | embed { 7 | display: block; 8 | margin: 0px auto 25px auto; 9 | } 10 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/header/header.styl: -------------------------------------------------------------------------------- 1 | .header { background: $head-bg; } 2 | 3 | .header-inner { position: relative; } 4 | 5 | 6 | @import "headerband"; 7 | @import "site-meta"; 8 | @import "site-nav"; 9 | @import "menu"; 10 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-tags.styl: -------------------------------------------------------------------------------- 1 | .posts-expand .post-tags { 2 | margin-top: 40px; 3 | text-align: center; 4 | 5 | a { 6 | display: inline-block; 7 | margin-right: 10px; 8 | font-size: 13px; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /themes/landscape/layout/_widget/tagcloud.ejs: -------------------------------------------------------------------------------- 1 | <% if (site.tags.length){ %> 2 |
3 |

<%= __('tagcloud') %>

4 |
5 | <%- tagcloud() %> 6 |
7 |
8 | <% } %> -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/comment.styl: -------------------------------------------------------------------------------- 1 | #comments 2 | background: #fff 3 | box-shadow: 1px 2px 3px #ddd 4 | padding: article-padding 5 | border: 1px solid color-border 6 | border-radius: 3px 7 | margin: block-margin 0 8 | a 9 | color: color-link -------------------------------------------------------------------------------- /themes/next/source/lib/fastclick/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fastclick", 3 | "main": "lib/fastclick.js", 4 | "ignore": [ 5 | "**/.*", 6 | "component.json", 7 | "package.json", 8 | "Makefile", 9 | "tests", 10 | "examples" 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/pages/post-details.swig: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /themes/landscape/layout/_widget/tag.ejs: -------------------------------------------------------------------------------- 1 | <% if (site.tags.length){ %> 2 |
3 |

<%= __('tags') %>

4 |
5 | <%- list_tags({show_count: theme.show_count}) %> 6 |
7 |
8 | <% } %> 9 | -------------------------------------------------------------------------------- /themes/next/.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | charset = utf-8 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | indent_style = space 11 | indent_size = 2 12 | 13 | [*.py] 14 | indent_size = 4 15 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/boostrap.swig: -------------------------------------------------------------------------------- 1 | {% 2 | set boot_scripts = [ 3 | 'src/bootstrap.js' 4 | ] 5 | %} 6 | 7 | {% for bs in boot_scripts %} 8 | 9 | {% endfor %} 10 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-rtl.styl: -------------------------------------------------------------------------------- 1 | .rtl { 2 | &.post-body { 3 | p, a, h1, h2, h3, h4, h5, h6, li, ul, ol { 4 | direction: rtl; 5 | font-family: UKIJ Ekran; 6 | } 7 | } 8 | &.post-title { 9 | font-family: UKIJ Ekran; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/cnzz-analytics.swig: -------------------------------------------------------------------------------- 1 | {% if theme.cnzz_siteid %} 2 | 3 |
4 | 5 |
6 | 7 | {% endif %} 8 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/baidushare.styl: -------------------------------------------------------------------------------- 1 | .post-spread { 2 | margin-top: 20px; 3 | text-align: center; 4 | } 5 | 6 | .bdshare-slide-button-box a { border: none; } 7 | 8 | .bdsharebuttonbox { 9 | display: inline-block; 10 | 11 | a { border: none; } 12 | } 13 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-minimal.min.css: -------------------------------------------------------------------------------- 1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{background:#29d;position:fixed;z-index:2000;top:0;right:100%;width:100%;height:2px} -------------------------------------------------------------------------------- /themes/landscape/layout/_widget/category.ejs: -------------------------------------------------------------------------------- 1 | <% if (site.categories.length){ %> 2 |
3 |

<%= __('categories') %>

4 |
5 | <%- list_categories({show_count: theme.show_count}) %> 6 |
7 |
8 | <% } %> 9 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/scaffolding/scaffolding.styl: -------------------------------------------------------------------------------- 1 | // 2 | // Scaffolding 3 | // ================================================= 4 | 5 | @import "normalize"; 6 | @import "base"; 7 | @import "helpers"; 8 | @import "tables"; 9 | @import "mobile" if hexo-config('mobile_layout_economy'); 10 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/commons.swig: -------------------------------------------------------------------------------- 1 | {% 2 | set js_commons = [ 3 | 'src/utils.js', 4 | 'src/motion.js' 5 | ] 6 | %} 7 | 8 | {% for common in js_commons %} 9 | 10 | {% endfor %} 11 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/index.swig: -------------------------------------------------------------------------------- 1 | {% include 'duoshuo.swig' %} 2 | {% include 'disqus.swig' %} 3 | {% include 'hypercomments.swig' %} 4 | {% include 'youyan.swig' %} 5 | {% include 'livere.swig' %} 6 | {% include 'changyan.swig' %} 7 | {% include 'gitment.swig' %} 8 | {% include 'valine.swig' %} 9 | -------------------------------------------------------------------------------- /themes/next/layout/_partials/share/add-this.swig: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/highlight/diff.styl: -------------------------------------------------------------------------------- 1 | $highlight_theme = hexo-config("highlight_theme") 2 | 3 | if $highlight_theme == "normal" 4 | $highlight-deletion = #fdd 5 | $highlight-addition = #dfd 6 | else 7 | $highlight-deletion = #008000 8 | $highlight-addition = #800000 9 | -------------------------------------------------------------------------------- /themes/landscape/layout/_widget/archive.ejs: -------------------------------------------------------------------------------- 1 | <% if (site.posts.length){ %> 2 |
3 |

<%= __('archive_a') %>

4 |
5 | <%- list_archives({show_count: theme.show_count, type: theme.archive_type}) %> 6 |
7 |
8 | <% } %> 9 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/schemes/gemini.swig: -------------------------------------------------------------------------------- 1 | {% 2 | set scripts = [ 3 | 'src/affix.js', 4 | 'src/schemes/pisces.js' 5 | ] 6 | %} 7 | 8 | {% for script in scripts %} 9 | 10 | {% endfor %} 11 | -------------------------------------------------------------------------------- /themes/next/layout/_scripts/schemes/pisces.swig: -------------------------------------------------------------------------------- 1 | {% 2 | set scripts = [ 3 | 'src/affix.js', 4 | 'src/schemes/pisces.js' 5 | ] 6 | %} 7 | 8 | {% for script in scripts %} 9 | 10 | {% endfor %} 11 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/_base.styl: -------------------------------------------------------------------------------- 1 | // Tags 2 | // -------------------------------------------------- 3 | h1, h2, h3, h4, h5, h6 { margin: 20px 0 10px; } 4 | 5 | p { margin: 0 0 25px 0; } 6 | 7 | a { border-bottom-color: $grey-light; } 8 | 9 | hr { 10 | margin: 20px 0; 11 | height: 2px; 12 | } 13 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/scroll-cookie.swig: -------------------------------------------------------------------------------- 1 | {% if theme.save_scroll %} 2 | 3 | 4 | {% endif %} 5 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-type.styl: -------------------------------------------------------------------------------- 1 | // TODO: Refactor. 2 | 3 | .page-home, .page-post-detail { 4 | .post-type-quote { 5 | .post-header, 6 | .post-tags { 7 | display: none; 8 | } 9 | 10 | blockquote { 11 | @extend .blockquote-center 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-fill-left.min.css: -------------------------------------------------------------------------------- 1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{background-color:rgba(34,153,221,.19999999999999996);position:fixed;z-index:-1;top:0;right:100%;bottom:0;width:100%} -------------------------------------------------------------------------------- /themes/landscape/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hexo-theme-landscape", 3 | "version": "0.0.2", 4 | "private": true, 5 | "devDependencies": { 6 | "grunt": "~0.4.2", 7 | "load-grunt-tasks": "~0.2.0", 8 | "grunt-git": "~0.2.2", 9 | "grunt-contrib-clean": "~0.5.0", 10 | "grunt-contrib-copy": "~0.4.1" 11 | } 12 | } -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-copyright.styl: -------------------------------------------------------------------------------- 1 | .post-copyright { 2 | margin: $post-copyright.margin; 3 | padding: $post-copyright.padding; 4 | border-left: $post-copyright.border.width $post-copyright.border.style $post-copyright.border.color; 5 | background-color: $post-copyright.bg; 6 | list-style: none; 7 | } 8 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/post/category.ejs: -------------------------------------------------------------------------------- 1 | <% if (post.categories && post.categories.length){ %> 2 |
3 | <%- list_categories(post.categories, { 4 | show_count: false, 5 | class: 'article-category', 6 | style: 'none', 7 | separator: '►' 8 | }) %> 9 |
10 | <% } %> -------------------------------------------------------------------------------- /themes/next/layout/_partials/pagination.swig: -------------------------------------------------------------------------------- 1 | {% if page.prev or page.next %} 2 | 11 | {% endif %} 12 | -------------------------------------------------------------------------------- /themes/landscape/languages/ko.yml: -------------------------------------------------------------------------------- 1 | categories: 카테고리 2 | search: 검색 3 | tags: 태그 4 | tagcloud: 태그 클라우드 5 | tweets: 트윗 6 | prev: 이전 7 | next: 다음 8 | comment: 댓글 9 | archive_a: 아카이브 10 | archive_b: "아카이브: %s" 11 | page: 페이지 %d 12 | recent_posts: 최근 포스트 13 | newer: 최신 14 | older: 이전 15 | share: 공유 16 | powered_by: Powered by 17 | rss_feed: RSS Feed 18 | category: 카테고리 19 | tag: 태그 20 | -------------------------------------------------------------------------------- /themes/landscape/languages/zh-CN.yml: -------------------------------------------------------------------------------- 1 | categories: 分类 2 | search: 搜索 3 | tags: 标签 4 | tagcloud: 标签云 5 | tweets: 推文 6 | prev: 上一页 7 | next: 下一页 8 | comment: 留言 9 | archive_a: 归档 10 | archive_b: 归档:%s 11 | page: 第 %d 页 12 | recent_posts: 最新文章 13 | newer: Newer 14 | older: Older 15 | share: Share 16 | powered_by: Powered by 17 | rss_feed: RSS Feed 18 | category: Category 19 | tag: Tag -------------------------------------------------------------------------------- /themes/landscape/languages/zh-TW.yml: -------------------------------------------------------------------------------- 1 | categories: 分類 2 | search: 搜尋 3 | tags: 標籤 4 | tagcloud: 標籤雲 5 | tweets: 推文 6 | prev: 上一頁 7 | next: 下一頁 8 | comment: 留言 9 | archive_a: 彙整 10 | archive_b: 彙整:%s 11 | page: 第 %d 頁 12 | recent_posts: 最新文章 13 | newer: Newer 14 | older: Older 15 | share: Share 16 | powered_by: Powered by 17 | rss_feed: RSS Feed 18 | category: Category 19 | tag: Tag -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/footer.styl: -------------------------------------------------------------------------------- 1 | #footer 2 | background: color-footer-background 3 | padding: 50px 0 4 | border-top: 1px solid color-border 5 | color: color-grey 6 | a 7 | color: color-link 8 | text-decoration: none 9 | &:hover 10 | text-decoration: underline 11 | 12 | #footer-info 13 | line-height: line-height 14 | font-size: 0.85em -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/gitment.styl: -------------------------------------------------------------------------------- 1 | #gitment-display-button{ 2 | display: inline-block; 3 | padding: 0 15px; 4 | color: #0a9caf; 5 | cursor: pointer; 6 | font-size: 14px; 7 | border: 1px solid #0a9caf; 8 | border-radius: 4px; 9 | } 10 | #gitment-display-button:hover{ 11 | color: #fff; 12 | background: #0a9caf; 13 | } -------------------------------------------------------------------------------- /themes/landscape/languages/ja.yml: -------------------------------------------------------------------------------- 1 | categories: カテゴリ 2 | search: 検索 3 | tags: タグ 4 | tagcloud: タグクラウド 5 | tweets: ツイート 6 | prev: 戻る 7 | next: 次へ 8 | comment: コメント 9 | archive_a: アーカイブ 10 | archive_b: "アーカイブ: %s" 11 | page: ページ %d 12 | recent_posts: 最近の投稿 13 | newer: 次の記事 14 | older: 前の記事 15 | share: 共有 16 | powered_by: Powered by 17 | rss_feed: RSSフィード 18 | category: カテゴリ 19 | tag: タグ 20 | -------------------------------------------------------------------------------- /themes/next/layout/_macro/wechat-subscriber.swig: -------------------------------------------------------------------------------- 1 |
2 | {{ theme.author }} wechat 3 |
{{ theme.wechat_subscriber.description }}
4 |
5 | -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /themes/next/.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Before submitting an issue, please search for the issue [here](https://github.com/iissnan/hexo-theme-next/issues?utf8=%E2%9C%93&q=) to find if the issue is already reported. 2 | 3 | Also, you can search for answers on the [NexT Documentation Site](http://theme-next.iissnan.com/): 4 | 5 | - [常见问题 - 中文文档](http://theme-next.iissnan.com/faqs.html) 6 | - FAQs (Work in progress) 7 | -------------------------------------------------------------------------------- /themes/next/layout/_partials/search.swig: -------------------------------------------------------------------------------- 1 | {% if theme.algolia_search.enable %} 2 | {% include '../_third-party/search/algolia-search/dom.swig' %} 3 | {% elseif theme.swiftype_key %} 4 | {% include 'search/swiftype.swig' %} 5 | {% elseif theme.tinysou_Key %} 6 | {% include 'search/tinysou.swig' %} 7 | {% elseif theme.local_search.enable %} 8 | {% include 'search/localsearch.swig' %} 9 | {% endif %} 10 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/archive-post.ejs: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | <%- partial('post/date', {class_name: 'archive-article-date', date_format: 'MMM D'}) %> 5 | <%- partial('post/title', {class_name: 'archive-article-title'}) %> 6 |
7 |
8 |
-------------------------------------------------------------------------------- /themes/next/layout/_partials/page-header.swig: -------------------------------------------------------------------------------- 1 |
2 | 3 | <{% if theme.seo %}h2{% else %}h1{% endif %} class="post-title" itemprop="name headline">{{ page.title }} 4 | 5 | {% if page.description %} 6 |
7 |
{{ page.description }}
8 |
9 | {% endif %} 10 | 11 |
12 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-eof.styl: -------------------------------------------------------------------------------- 1 | .posts-expand { 2 | .post-eof { 3 | display: block; 4 | margin: $post-eof-margin-top auto $post-eof-margin-bottom; 5 | width: 8%; 6 | height: 1px; 7 | background: $grey-light; 8 | text-align: center; 9 | } 10 | } 11 | 12 | 13 | .post:last-child { 14 | .post-eof.post-eof.post-eof { 15 | display: none; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/third-party.styl: -------------------------------------------------------------------------------- 1 | @import "duoshuo"; 2 | @import "gitment" if hexo-config('gitment.enable'); 3 | @import "jiathis"; 4 | @import "han"; 5 | @import "baidushare"; 6 | @import "localsearch"; 7 | @import "busuanzi-counter"; 8 | @import "algolia-search" if hexo-config('algolia_search.enable'); 9 | @import "needsharebutton" if hexo-config('needmoreshare2.enable'); 10 | -------------------------------------------------------------------------------- /themes/landscape/languages/no.yml: -------------------------------------------------------------------------------- 1 | categories: Kategorier 2 | search: Søk 3 | tags: Tags 4 | tagcloud: Tag Cloud 5 | tweets: Tweets 6 | prev: Forrige 7 | next: Neste 8 | comment: Kommentarer 9 | archive_a: Arkiv 10 | archive_b: "Arkiv: %s" 11 | page: Side %d 12 | recent_posts: Siste innlegg 13 | newer: Newer 14 | older: Older 15 | share: Share 16 | powered_by: Powered by 17 | rss_feed: RSS Feed 18 | category: Category 19 | tag: Tag -------------------------------------------------------------------------------- /themes/landscape/languages/default.yml: -------------------------------------------------------------------------------- 1 | categories: Categories 2 | search: Search 3 | tags: Tags 4 | tagcloud: Tag Cloud 5 | tweets: Tweets 6 | prev: Prev 7 | next: Next 8 | comment: Comments 9 | archive_a: Archives 10 | archive_b: "Archives: %s" 11 | page: Page %d 12 | recent_posts: Recent Posts 13 | newer: Newer 14 | older: Older 15 | share: Share 16 | powered_by: Powered by 17 | rss_feed: RSS Feed 18 | category: Category 19 | tag: Tag -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/components.styl: -------------------------------------------------------------------------------- 1 | @import "highlight"; 2 | @import "tags"; 3 | 4 | @import "buttons"; 5 | @import "pagination"; 6 | @import "comments"; 7 | @import "tag-cloud"; 8 | @import hexo-config('sidebar.b2t') ? "back-to-top-sidebar" : "back-to-top"; 9 | 10 | @import "header"; 11 | @import "post"; 12 | @import "sidebar"; 13 | @import "footer"; 14 | @import "third-party"; 15 | 16 | @import "pages"; 17 | -------------------------------------------------------------------------------- /themes/next/source/css/_variables/Mist.styl: -------------------------------------------------------------------------------- 1 | // Variables of Mist scheme 2 | // ================================================= 3 | 4 | $font-size-headings-base = 26px 5 | 6 | $brand-color = $black-deep 7 | $brand-hover-color = $brand-color 8 | 9 | $site-meta-text-align = left 10 | $posts-collapse-left = 0 11 | 12 | $btn-default-color = $link-color 13 | $btn-default-bg = transparent 14 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/tencent-analytics.swig: -------------------------------------------------------------------------------- 1 | {% if theme.tencent_analytics %} 2 | 10 | {% endif %} 11 | -------------------------------------------------------------------------------- /themes/landscape/languages/de.yml: -------------------------------------------------------------------------------- 1 | categories: Kategorien 2 | search: Suche 3 | tags: Tags 4 | tagcloud: Tag Cloud 5 | tweets: Tweets 6 | prev: zurück 7 | next: weiter 8 | comment: Kommentare 9 | archive_a: Archiv 10 | archive_b: "Archive: %s" 11 | page: Seite %d 12 | recent_posts: letzter Beitrag 13 | newer: Neuer 14 | older: Älter 15 | share: Teilen 16 | powered_by: Powered by 17 | rss_feed: RSS Feed 18 | category: Kategorie 19 | tag: Tag 20 | -------------------------------------------------------------------------------- /themes/next/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .idea/ 3 | *.log 4 | *.iml 5 | # yarn.lock 6 | # package-lock.json 7 | node_modules/ 8 | 9 | # Ignore unused verdors' files 10 | # source/lib/fancybox/* 11 | # !source/lib/fancybox/source/ 12 | 13 | # source/lib/font-awesome/less/ 14 | # source/lib/font-awesome/scss/ 15 | 16 | # source/lib/ua-parser-js/* 17 | # !source/lib/ua-parser-js/dist/ 18 | 19 | # source/lib/Han/* 20 | # !source/lib/Han/dist/ 21 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tags/full-image.styl: -------------------------------------------------------------------------------- 1 | // Expand image to 126% with nagative margin-left/right on Desktop. 2 | .full-image.full-image.full-image.full-image { 3 | border: none; 4 | max-width: 100%; 5 | width: auto; 6 | margin: 20px auto 25px; 7 | +desktop() { 8 | max-width: none; 9 | width: $full-image-width; 10 | margin: $full-image-margin-vertical $full-image-margin-horizontal; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tags/tags.styl: -------------------------------------------------------------------------------- 1 | @import "full-image"; 2 | @import "blockquote-center"; 3 | @import "group-pictures"; 4 | @import "exturl" if hexo-config('exturl'); 5 | @import "note" if hexo-config('note.style') == 'simple' || hexo-config('note.style') == 'flat'; 6 | @import "note-modern" if hexo-config('note.style') == 'modern'; 7 | @import "label" if hexo-config('label'); 8 | @import "tabs" if hexo-config('tabs.enable'); 9 | -------------------------------------------------------------------------------- /themes/landscape/languages/es.yml: -------------------------------------------------------------------------------- 1 | categories: Categorías 2 | search: Buscar 3 | tags: Tags 4 | tagcloud: Nube de Tags 5 | tweets: Tweets 6 | prev: Previo 7 | next: Siguiente 8 | comment: Comentarios 9 | archive_a: Archivos 10 | archive_b: "Archivos: %s" 11 | page: Página %d 12 | recent_posts: Posts recientes 13 | newer: Nuevo 14 | older: Viejo 15 | share: Compartir 16 | powered_by: Construido por 17 | rss_feed: RSS 18 | category: Categoría 19 | tag: Tag -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/footer.ejs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Muse/_logo.styl: -------------------------------------------------------------------------------- 1 | .custom-logo { 2 | .site-meta-headline { text-align: center; } 3 | 4 | .brand { background: none; } 5 | 6 | .site-title { 7 | margin: 10px auto 0; 8 | font-size: 24px; 9 | color: $black-deep; 10 | a { border: none; } 11 | } 12 | 13 | 14 | } 15 | 16 | .custom-logo-image { 17 | margin: 0 auto; 18 | padding: 5px; 19 | max-width: 150px; 20 | background: white; 21 | } 22 | -------------------------------------------------------------------------------- /themes/landscape/languages/ru.yml: -------------------------------------------------------------------------------- 1 | categories: Категории 2 | search: Поиск 3 | tags: Метки 4 | tagcloud: Облако меток 5 | tweets: Твиты 6 | prev: Назад 7 | next: Вперед 8 | comment: Комментарии 9 | archive_a: Архив 10 | archive_b: "Архив: %s" 11 | page: Страница %d 12 | recent_posts: Недавние записи 13 | newer: Следующий 14 | older: Предыдущий 15 | share: Поделиться 16 | powered_by: Создано с помощью 17 | rss_feed: RSS-каналы 18 | category: Категория 19 | tag: Метка -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/post/gallery.ejs: -------------------------------------------------------------------------------- 1 | <% if (post.photos && post.photos.length){ %> 2 |
3 |
4 | <% post.photos.forEach(function(photo, i){ %> 5 | 6 | 7 | 8 | <% }) %> 9 |
10 |
11 | <% } %> -------------------------------------------------------------------------------- /themes/landscape/languages/nl.yml: -------------------------------------------------------------------------------- 1 | 2 | categories: Categorieën 3 | search: Zoeken 4 | tags: Labels 5 | tagcloud: Tag Cloud 6 | tweets: Tweets 7 | prev: Vorige 8 | next: Volgende 9 | comment: Commentaren 10 | archive_a: Archieven 11 | archive_b: "Archieven: %s" 12 | page: Pagina %d 13 | recent_posts: Recente berichten 14 | newer: Nieuwer 15 | older: Ouder 16 | share: Delen 17 | powered_by: Powered by 18 | rss_feed: RSS Feed 19 | category: Categorie 20 | tag: Label 21 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/baidu-analytics.swig: -------------------------------------------------------------------------------- 1 | {% if theme.baidu_analytics %} 2 | 11 | {% endif %} 12 | -------------------------------------------------------------------------------- /themes/landscape/languages/fr.yml: -------------------------------------------------------------------------------- 1 | categories: Catégories 2 | search: Rechercher 3 | tags: Mot-clés 4 | tagcloud: Nuage de mot-clés 5 | tweets: Tweets 6 | prev: Précédent 7 | next: Suivant 8 | comment: Commentaires 9 | archive_a: Archives 10 | archive_b: "Archives: %s" 11 | page: Page %d 12 | recent_posts: Articles récents 13 | newer: Récent 14 | older: Ancien 15 | share: Partager 16 | powered_by: Propulsé par 17 | rss_feed: Flux RSS 18 | category: Catégorie 19 | tag: Mot-clé 20 | -------------------------------------------------------------------------------- /themes/landscape/languages/pt.yml: -------------------------------------------------------------------------------- 1 | categories: Categorias 2 | search: Buscar 3 | tags: Tags 4 | tagcloud: Nuvem de Tags 5 | tweets: Tweets 6 | prev: Anterior 7 | next: Próximo 8 | comment: Comentários 9 | archive_a: Arquivos 10 | archive_b: "Arquivos: %s" 11 | page: Página %d 12 | recent_posts: Postagens Recentes 13 | newer: Mais Recente 14 | older: Mais Antigo 15 | share: Compartilhar 16 | powered_by: Desenvolvido por 17 | rss_feed: Feed RSS 18 | category: Categoria 19 | tag: Tag 20 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tags/label.styl: -------------------------------------------------------------------------------- 1 | .post-body .label { 2 | display: inline; 3 | padding: 0 2px; 4 | white-space: nowrap; 5 | 6 | &.default { background-color: $label-default; } 7 | &.primary { background-color: $label-primary; } 8 | &.info { background-color: $label-info; } 9 | &.success { background-color: $label-success; } 10 | &.warning { background-color: $label-warning; } 11 | &.danger { background-color: $label-danger; } 12 | } 13 | -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fancybox", 3 | "homepage": "https://github.com/fancyapps/fancyBox", 4 | "version": "2.1.5", 5 | "_release": "2.1.5", 6 | "_resolution": { 7 | "type": "version", 8 | "tag": "v2.1.5", 9 | "commit": "18d171278d21ca59067aace6d52a1adeb6462219" 10 | }, 11 | "_source": "git://github.com/fancyapps/fancyBox.git", 12 | "_target": "~2.1.5", 13 | "_originalSource": "fancybox", 14 | "_direct": true 15 | } -------------------------------------------------------------------------------- /themes/next/test/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "curly": true, 3 | "eqnull": true, 4 | "eqeqeq": true, 5 | "undef": true, 6 | "newcap": true, 7 | "unused": true, 8 | "laxcomma": false, 9 | "asi": false, 10 | "expr": true, 11 | "loopfunc": false, 12 | "strict": false, 13 | 14 | "globals": { 15 | "define": true, 16 | "require": true, 17 | "it": true, 18 | "module": true, 19 | "describe": true, 20 | "window": true, 21 | "$": true 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /themes/landscape/layout/_widget/recent_posts.ejs: -------------------------------------------------------------------------------- 1 | <% if (site.posts.length){ %> 2 |
3 |

<%= __('recent_posts') %>

4 |
5 | 12 |
13 |
14 | <% } %> -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | .bundle 34 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/mobile.styl: -------------------------------------------------------------------------------- 1 | @media mq-mobile 2 | #mobile-nav 3 | position: absolute 4 | top: 0 5 | left: 0 6 | width: mobile-nav-width 7 | height: 100% 8 | background: color-mobile-nav-background 9 | border-right: 1px solid #fff 10 | 11 | @media mq-mobile 12 | .mobile-nav-link 13 | display: block 14 | color: color-grey 15 | text-decoration: none 16 | padding: 15px 20px 17 | font-weight: bold 18 | &:hover 19 | color: #fff 20 | -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- 1 | var spawn = require('child_process').spawn; 2 | 3 | free = spawn('hexo', ['server', '-p 4000']);/* 其实就是等于执行hexo server -p 80*/ 4 | 5 | free.stdout.on('data', function (data) { 6 | 7 | console.log('standard output:\n' + data); 8 | 9 | }); 10 | 11 | free.stderr.on('data', function (data) { 12 | 13 | console.log('standard error output:\n' + data); 14 | 15 | }); 16 | 17 | free.on('exit', function (code, signal) { 18 | 19 | console.log('child process eixt ,exit:' + code); 20 | 21 | }); 22 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/tencent-mta.swig: -------------------------------------------------------------------------------- 1 | {% if theme.tencent_mta %} 2 | 14 | {% endif %} 15 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tags/exturl.styl: -------------------------------------------------------------------------------- 1 | .exturl { 2 | // Remove the gray background color from active links in IE 10. 3 | background-color: transparent; 4 | 5 | cursor: pointer; 6 | border-bottom: 1px solid #999; 7 | 8 | .fa { 9 | font-size: 14px; 10 | } 11 | } 12 | 13 | // Improve readability when focused and also mouse hovered in all browsers. 14 | .exturl:active, .exturl:hover { 15 | outline: 0; 16 | color: $black-deep; 17 | border-bottom-color: $black-deep; 18 | } 19 | -------------------------------------------------------------------------------- /themes/next/source/css/_mixins/Pisces.styl: -------------------------------------------------------------------------------- 1 | sidebar-inline-links-item() { 2 | margin: 5px 0 0; 3 | if !hexo-config('social_icons.icons_only') { width: 50%; } 4 | 5 | & a { 6 | max-width: 216px; 7 | box-sizing: border-box; 8 | display: inline-block; 9 | margin-right: 0; 10 | margin-bottom: 0; 11 | padding: 0 5px; 12 | overflow: hidden; 13 | white-space: nowrap; 14 | text-overflow: ellipsis; 15 | if hexo-config('social_icons.transition') { the-transition(); } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /themes/next/scripts/tags/center-quote.js: -------------------------------------------------------------------------------- 1 | /* global hexo */ 2 | // Usage: {% centerquote %} Something {% endcenterquote %} 3 | // Alias: {% cq %} Something {% endcq %} 4 | 5 | function centerQuote (args, content) { 6 | return '
' + 7 | hexo.render.renderSync({text: content, engine: 'markdown'}) + 8 | '
'; 9 | } 10 | 11 | hexo.extend.tag.register('centerquote', centerQuote, {ends: true}); 12 | hexo.extend.tag.register('cq', centerQuote, {ends: true}); 13 | -------------------------------------------------------------------------------- /themes/next/source/lib/jquery/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "_cacheHeaders": { 4 | "ETag": "\"5492efef-14960\"", 5 | "Last-Modified": "Thu, 18 Dec 2014 15:17:03 GMT", 6 | "Content-Length": "84320", 7 | "Content-Type": "application/x-javascript" 8 | }, 9 | "_release": "e-tag:5492efef-", 10 | "main": "index.js", 11 | "_source": "http://code.jquery.com/jquery-2.1.3.min.js", 12 | "_target": "*", 13 | "_originalSource": "http://code.jquery.com/jquery-2.1.3.min.js", 14 | "_direct": true 15 | } -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-feed-link.styl: -------------------------------------------------------------------------------- 1 | .feed-link { 2 | margin-top: 20px; 3 | 4 | a { 5 | display: inline-block; 6 | padding: 0 15px; 7 | color: rgb(252, 100, 35); 8 | border: 1px solid rgb(252, 100, 35); 9 | border-radius: 4px; 10 | 11 | i { 12 | color: rgb(252, 100, 35); 13 | font-size: 14px; 14 | } 15 | 16 | &:hover { 17 | color:white; 18 | background: rgb(252, 100, 35); 19 | 20 | i { color: white; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /themes/next/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "asi": false, 3 | "bitwise": true, 4 | "browser": true, 5 | "camelcase": true, 6 | "curly": true, 7 | "forin": true, 8 | "immed": true, 9 | "latedef": "nofunc", 10 | "maxlen": 120, 11 | "newcap": true, 12 | "noarg": true, 13 | "noempty": true, 14 | "nonew": true, 15 | "predef": [ 16 | "$", 17 | "jQuery", 18 | "NexT", 19 | "CONFIG" 20 | ], 21 | "quotmark": true, 22 | "trailing": true, 23 | "undef": true, 24 | "unused": true, 25 | 26 | "expr": true 27 | } 28 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-dimmer.styl: -------------------------------------------------------------------------------- 1 | .sidebar-active #sidebar-dimmer { 2 | opacity: .7; 3 | -webkit-transform: translateX(-150%); 4 | transform: translateX(-150%); 5 | transition: opacity .2s; 6 | } 7 | 8 | #sidebar-dimmer { 9 | display: none; 10 | position: absolute; 11 | top: 0; 12 | left: 100%; 13 | width: 200%; 14 | height: 100%; 15 | background: #000; 16 | opacity: 0; 17 | transition: opacity .2s,transform 0s .2s; 18 | +mobile() { 19 | display: block; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "keywords": [], 5 | "homepage": "http://fontawesome.io", 6 | "dependencies": {}, 7 | "devDependencies": {}, 8 | "license": ["OFL-1.1", "MIT", "CC-BY-3.0"], 9 | "main": [ 10 | "less/font-awesome.less", 11 | "scss/font-awesome.scss" 12 | ], 13 | "ignore": [ 14 | "*/.*", 15 | "*.json", 16 | "src", 17 | "*.yml", 18 | "Gemfile", 19 | "Gemfile.lock", 20 | "*.md" 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/youyan.swig: -------------------------------------------------------------------------------- 1 | {% if not (theme.duoshuo and theme.duoshuo.shortname) 2 | and not theme.duoshuo_shortname 3 | and not theme.disqus_shortname 4 | and not theme.hypercomments_id %} 5 | 6 | {% if theme.youyan_uid %} 7 | {% set uid = theme.youyan_uid %} 8 | 9 | {% if page.comments %} 10 | 11 | 12 | 13 | {% endif %} 14 | {% endif %} 15 | 16 | {% endif %} 17 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/post/title.ejs: -------------------------------------------------------------------------------- 1 | <% if (post.link){ %> 2 |

3 | 4 |

5 | <% } else if (post.title){ %> 6 | <% if (index){ %> 7 |

8 | <%= post.title %> 9 |

10 | <% } else { %> 11 |

12 | <%= post.title %> 13 |

14 | <% } %> 15 | <% } %> -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hexo-site", 3 | "version": "0.0.0", 4 | "private": true, 5 | "hexo": { 6 | "version": "3.8.0" 7 | }, 8 | "dependencies": { 9 | "hexo": "^3.7.0", 10 | "hexo-deployer-git": "^0.3.1", 11 | "hexo-generator-archive": "^0.1.5", 12 | "hexo-generator-category": "^0.1.3", 13 | "hexo-generator-index": "^0.2.1", 14 | "hexo-generator-tag": "^0.2.0", 15 | "hexo-renderer-ejs": "^0.3.1", 16 | "hexo-renderer-marked": "^0.3.2", 17 | "hexo-renderer-stylus": "^0.3.3", 18 | "hexo-server": "^0.3.1" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/google-analytics.swig: -------------------------------------------------------------------------------- 1 | {% if theme.google_analytics %} 2 | 10 | {% endif %} -------------------------------------------------------------------------------- /themes/next/layout/_third-party/seo/baidu-push.swig: -------------------------------------------------------------------------------- 1 | {% if theme.baidu_push %} 2 | 16 | {% endif %} 17 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-gallery.styl: -------------------------------------------------------------------------------- 1 | .post-gallery { 2 | display: table; 3 | table-layout: fixed; 4 | width: 100%; 5 | border-collapse: separate; 6 | } 7 | 8 | .post-gallery-row { display: table-row; } 9 | 10 | .post-gallery .post-gallery-img { 11 | display: table-cell; 12 | text-align: center; 13 | vertical-align: middle; 14 | border: none; 15 | } 16 | 17 | .post-gallery .post-gallery-img img { 18 | max-width: 100%; 19 | max-height: 100%; 20 | border: none; 21 | } 22 | 23 | .fancybox-close, .fancybox-close:hover { border: none; } 24 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/footer/footer.styl: -------------------------------------------------------------------------------- 1 | .footer { 2 | font-size: 14px; 3 | color: $grey-dark; 4 | 5 | img { border: none; } 6 | } 7 | 8 | .footer-inner { text-align: center; } 9 | 10 | .with-love { 11 | display: inline-block; 12 | margin: 0 5px; 13 | } 14 | 15 | .powered-by, 16 | .theme-info { display: inline-block; } 17 | 18 | .cc-license { 19 | margin-top: 10px; 20 | text-align: center; 21 | 22 | .cc-opacity { 23 | opacity: 0.7; 24 | border-bottom: none; 25 | 26 | &:hover { opacity: 0.9; } 27 | } 28 | 29 | img { display: inline-block; } 30 | } 31 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/pages/archive.styl: -------------------------------------------------------------------------------- 1 | .page-archive { 2 | 3 | .archive-page-counter { 4 | position: relative; 5 | top: 3px; 6 | left: 20px; 7 | 8 | +mobile() { 9 | top: 5px; 10 | } 11 | } 12 | 13 | .posts-collapse { 14 | 15 | .archive-move-on { 16 | position: absolute; 17 | top: 11px; 18 | left: 0; 19 | margin-left: -6px; 20 | width: 10px; 21 | height: 10px; 22 | opacity: 0.5; 23 | background: $black-light; 24 | border: 1px solid white; 25 | 26 | circle(); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Pisces/_brand.styl: -------------------------------------------------------------------------------- 1 | .site-brand-wrapper { 2 | position: relative; 3 | } 4 | 5 | .site-meta { 6 | padding: 20px 0; 7 | color: white; 8 | background: $black-deep; 9 | 10 | +tablet() { 11 | box-shadow: 0 0 16px rgba(0,0,0,0.5); 12 | } 13 | +mobile() { 14 | box-shadow: 0 0 16px rgba(0,0,0,0.5); 15 | } 16 | } 17 | 18 | .brand { 19 | padding: 0; 20 | background: none; 21 | 22 | &:hover { color: white; } 23 | } 24 | 25 | .site-subtitle { 26 | margin: 10px 10px 0; 27 | font-weight: initial; 28 | } 29 | 30 | .site-search form { display: none; } 31 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-blogroll.styl: -------------------------------------------------------------------------------- 1 | .links-of-blogroll { font-size: 13px; } 2 | 3 | .links-of-blogroll-title { 4 | margin-top: 20px; 5 | font-size: 14px; 6 | font-weight: $font-weight-bold; 7 | } 8 | .links-of-blogroll-list { 9 | margin: 0; 10 | padding: 0; 11 | list-style: none; 12 | } 13 | 14 | .links-of-blogroll-item { 15 | padding: 2px 10px; 16 | 17 | a { 18 | max-width: 280px; 19 | box-sizing: border-box; 20 | display: inline-block; 21 | overflow: hidden; 22 | white-space: nowrap; 23 | text-overflow: ellipsis; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /themes/next/layout/_partials/search/swiftype.swig: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | 5 | 13 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/pages/categories.styl: -------------------------------------------------------------------------------- 1 | .category-all-page { 2 | .category-all-title { text-align: center; } 3 | 4 | .category-all { margin-top: 20px; } 5 | 6 | .category-list { 7 | margin: 0; 8 | padding: 0; 9 | list-style: none; 10 | } 11 | 12 | .category-list-item { margin: 5px 10px; } 13 | 14 | .category-list-count { 15 | color: $grey; 16 | &:before { 17 | display: inline; 18 | content: " (" 19 | } 20 | &:after { 21 | display: inline; 22 | content: ") " 23 | } 24 | } 25 | 26 | .category-list-child { padding-left: 10px; } 27 | } 28 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/google-analytics.ejs: -------------------------------------------------------------------------------- 1 | <% if (theme.google_analytics){ %> 2 | 3 | 13 | 14 | <% } %> 15 | -------------------------------------------------------------------------------- /themes/next/layout/_partials/search/localsearch.swig: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/busuanzi-counter.styl: -------------------------------------------------------------------------------- 1 | if hexo-config("scheme") == Pisces 2 | .busuanzi-count { 3 | +tablet() { 4 | width: auto; 5 | } 6 | +mobile() { 7 | width: auto; 8 | } 9 | } 10 | 11 | .site-uv, 12 | .site-pv, 13 | .page-pv { 14 | display: inline-block; 15 | 16 | .busuanzi-value { 17 | margin: 0 5px; 18 | } 19 | } 20 | 21 | if hexo-config("busuanzi_count.site_pv") and hexo-config("busuanzi_count.site_uv") 22 | .site-uv 23 | { 24 | margin-right: 10px; 25 | 26 | &::after { 27 | content: "|"; 28 | padding-left: 10px; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/header/site-nav.styl: -------------------------------------------------------------------------------- 1 | .site-nav-toggle { 2 | display: none; 3 | position: absolute; 4 | top: 10px; 5 | left: 10px; 6 | +mobile() { 7 | display: block; 8 | } 9 | 10 | button { 11 | margin-top: 2px; 12 | padding: 9px 10px; 13 | background: transparent; 14 | border: none; 15 | } 16 | } 17 | 18 | .site-nav { 19 | +mobile() { 20 | display: none; 21 | margin: 0 -10px; 22 | padding: 0 10px; 23 | clear: both; 24 | border-top: 1px solid $gray-lighter; 25 | } 26 | +tablet() { display: block !important; } 27 | +desktop() { display: block !important; } 28 | } 29 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-author-links.styl: -------------------------------------------------------------------------------- 1 | .links-of-author { 2 | margin-top: 20px; 3 | } 4 | 5 | .links-of-author a { 6 | display: inline-block; 7 | vertical-align: middle; 8 | margin-right: 10px; 9 | margin-bottom: 10px; 10 | border-bottom-color: $black-light; 11 | font-size: 13px; 12 | 13 | &:before { 14 | display: inline-block; 15 | vertical-align: middle; 16 | margin-right: 3px; 17 | content: " "; 18 | width: 4px; 19 | height: 4px; 20 | border-radius: 50%; 21 | background: rgb(random-color(0, 255) - 50%, random-color(0, 255) - 50%, random-color(0, 255) - 50%); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /themes/next/source/lib/fastclick/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fastclick", 3 | "main": "lib/fastclick.js", 4 | "ignore": [ 5 | "**/.*", 6 | "component.json", 7 | "package.json", 8 | "Makefile", 9 | "tests", 10 | "examples" 11 | ], 12 | "homepage": "https://github.com/ftlabs/fastclick", 13 | "version": "1.0.6", 14 | "_release": "1.0.6", 15 | "_resolution": { 16 | "type": "version", 17 | "tag": "v1.0.6", 18 | "commit": "2ac7258407619398005ca720596f0d36ce66a6c8" 19 | }, 20 | "_source": "git://github.com/ftlabs/fastclick.git", 21 | "_target": "~1.0.6", 22 | "_originalSource": "fastclick", 23 | "_direct": true 24 | } -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/.npmignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | 34 | # don't need these in the npm package. 35 | src/ 36 | _config.yml 37 | bower.json 38 | component.json 39 | composer.json 40 | CONTRIBUTING.md 41 | Gemfile 42 | Gemfile.lock 43 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/third-party/needsharebutton.styl: -------------------------------------------------------------------------------- 1 | #needsharebutton-postbottom { 2 | position: relative; 3 | cursor: pointer; 4 | height: 26px; 5 | 6 | .btn { 7 | display: initial; 8 | padding: 1px 4px; 9 | border: 1px solid $btn-default-border-color; 10 | border-radius: 3px; 11 | } 12 | } 13 | 14 | #needsharebutton-float { 15 | position: fixed; 16 | bottom: 38px; 17 | left: -8px; 18 | z-index: 9999; 19 | cursor: pointer; 20 | 21 | .btn { 22 | //display: initial; 23 | padding: 0 10px 0 14px 24 | border: 1px solid $btn-default-border-color; 25 | border-radius: 4px; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-big-counter.min.css: -------------------------------------------------------------------------------- 1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace.pace-inactive .pace-progress{display:none}.pace .pace-progress{position:fixed;z-index:2000;top:0;right:0;height:5rem;width:5rem;-webkit-transform:translate3d(0,0,0)!important;-ms-transform:translate3d(0,0,0)!important;transform:translate3d(0,0,0)!important}.pace .pace-progress:after{display:block;position:absolute;top:0;right:.5rem;content:attr(data-progress-text);font-family:"Helvetica Neue",sans-serif;font-weight:100;font-size:5rem;line-height:1;text-align:right;color:rgba(34,153,221,.19999999999999996)} -------------------------------------------------------------------------------- /themes/next/scripts/tags/note.js: -------------------------------------------------------------------------------- 1 | /** 2 | * note.js | global hexo script. 3 | * 4 | * ATTENTION! No need to write this tag in 1 line if u don't want see probally bugs. 5 | * 6 | * Usage: 7 | * 8 | * {% note [class] %} 9 | * Any content (support inline tags too). 10 | * {% endnote %} 11 | * 12 | * [class] : default | primary | success | info | warning | danger. 13 | * May be not defined. 14 | */ 15 | 16 | function bscallOut (args, content) { 17 | return '
' + hexo.render.renderSync({text: content, engine: 'markdown'}).trim() + '
'; 18 | } 19 | 20 | hexo.extend.tag.register('note', bscallOut, {ends: true}); 21 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Muse/_menu.styl: -------------------------------------------------------------------------------- 1 | .site-nav { 2 | +mobile() { 3 | position: absolute; 4 | left: 0; 5 | top: 52px; 6 | margin: 0; 7 | width: 100%; 8 | padding: 0; 9 | background: white; 10 | border-bottom: 1px solid $gray-lighter; 11 | z-index: $zindex-3; 12 | } 13 | } 14 | 15 | .menu { 16 | +mobile() { text-align: left; } 17 | } 18 | .menu .menu-item { 19 | +mobile() { 20 | display: block; 21 | margin: 0 10px; 22 | vertical-align: top; 23 | } 24 | 25 | br { 26 | +mobile() { display: none; } 27 | } 28 | 29 | a { 30 | +mobile() { padding: 5px 10px; } 31 | } 32 | .fa { margin-right: 0; } 33 | } 34 | -------------------------------------------------------------------------------- /themes/landscape/_config.yml: -------------------------------------------------------------------------------- 1 | # Header 2 | menu: 3 | Home: / 4 | Archives: /archives 5 | rss: /atom.xml 6 | 7 | # Content 8 | excerpt_link: Read More 9 | fancybox: true 10 | 11 | # Sidebar 12 | sidebar: right 13 | widgets: 14 | - category 15 | - tag 16 | - tagcloud 17 | - archive 18 | - recent_posts 19 | 20 | # display widgets at the bottom of index pages (pagination == 2) 21 | index_widgets: 22 | # - category 23 | # - tagcloud 24 | # - archive 25 | 26 | # widget behavior 27 | archive_type: 'monthly' 28 | show_count: false 29 | 30 | # Miscellaneous 31 | google_analytics: 32 | gauges_analytics: 33 | favicon: /favicon.png 34 | twitter: 35 | google_plus: 36 | fb_admins: 37 | fb_app_id: 38 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/sidebar-bottom.styl: -------------------------------------------------------------------------------- 1 | .widget-wrap 2 | margin-bottom: block-margin !important 3 | @media mq-normal 4 | column(main-column) 5 | 6 | .widget-title 7 | color: #ccc 8 | text-transform: uppercase 9 | letter-spacing: 2px 10 | margin-bottom: .5em 11 | line-height: 1em 12 | font-weight: bold 13 | 14 | .widget 15 | color: color-grey 16 | ul, ol 17 | li 18 | display: inline-block 19 | zoom:1 20 | *display:inline 21 | padding-right: .75em 22 | /* Having problems getting balanced white space between items 23 | li:before 24 | content: " | " 25 | li:first-child:before 26 | content: none 27 | */ 28 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/sidebar-aside.styl: -------------------------------------------------------------------------------- 1 | #sidebar 2 | @media mq-normal 3 | column(sidebar-column) 4 | 5 | .widget-wrap 6 | margin: block-margin 0 7 | 8 | .widget-title 9 | @extend $block-caption 10 | 11 | .widget 12 | color: color-sidebar-text 13 | text-shadow: 0 1px #fff 14 | background: color-widget-background 15 | box-shadow: 0 -1px 4px color-widget-border inset 16 | border: 1px solid color-widget-border 17 | padding: 15px 18 | border-radius: 3px 19 | a 20 | color: color-link 21 | text-decoration: none 22 | &:hover 23 | text-decoration: underline 24 | ul, ol, dl 25 | ul, ol, dl 26 | margin-left: 15px 27 | list-style: disc -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/facebook-sdk.swig: -------------------------------------------------------------------------------- 1 | {% if theme.facebook_sdk.enable %} 2 | 19 | {% endif %} 20 | -------------------------------------------------------------------------------- /themes/next/scripts/tags/label.js: -------------------------------------------------------------------------------- 1 | /** 2 | * label.js | global hexo script. 3 | * 4 | * Usage: 5 | * 6 | * {% label [class]@Text %} 7 | * 8 | * [class] : default | primary | success | info | warning | danger. 9 | * If not defined, default class will be selected. 10 | */ 11 | 12 | function postLabel (args) { 13 | args = args.join(' ').split('@'); 14 | var classes = args[0] || 'default'; 15 | var text = args[1] || ''; 16 | 17 | classes = classes.trim(); 18 | !text && hexo.log.warn('Label text must be defined!'); 19 | 20 | return '' + text + ''; 21 | } 22 | 23 | hexo.extend.tag.register('label', postLabel, { ends: false }); 24 | -------------------------------------------------------------------------------- /themes/next/source/lib/jquery_lazyload/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery_lazyload", 3 | "version": "1.9.4", 4 | "homepage": "http://www.appelsiini.net/projects/lazyload", 5 | "authors": [ 6 | "Mika Tuupola " 7 | ], 8 | "description": "jQuery plugin for lazy loading images", 9 | "main": [ 10 | "jquery.lazyload.js", 11 | "jquery.scrollstop.js" 12 | ], 13 | "license": "MIT", 14 | "ignore": [ 15 | "**/.*", 16 | "**/*.min.js", 17 | "**/*.html", 18 | "**/*.textile", 19 | "Gruntfile.js", 20 | "lazyload.jquery.json", 21 | "package.json", 22 | "node_modules", 23 | "bower_components", 24 | "test", 25 | "img" 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/livere.swig: -------------------------------------------------------------------------------- 1 | {% if not (theme.duoshuo and theme.duoshuo.shortname) and not theme.duoshuo_shortname and not (theme.disqus.enable and theme.disqus.shortname) and not theme.hypercomments_id %} 2 | 3 | {% if page.comments and theme.livere_uid %} 4 | 14 | {% endif %} 15 | 16 | {% endif %} 17 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/back-to-top-sidebar.styl: -------------------------------------------------------------------------------- 1 | .back-to-top { 2 | display: none; 3 | margin: 20px -10px -20px; 4 | background: $body-bg-color; 5 | font-size: $b2t-font-size; 6 | opacity: $b2t-opacity; 7 | cursor: pointer; 8 | text-align: center; 9 | -webkit-transform: translateZ(0); 10 | the-transition(); 11 | &:hover { opacity: 0.8; } 12 | 13 | +tablet() { 14 | fixbutton() if hexo-config('sidebar.onmobile'); 15 | hide() if not hexo-config('sidebar.onmobile'); 16 | } 17 | +mobile() { 18 | fixbutton() if hexo-config('sidebar.onmobile'); 19 | hide() if not hexo-config('sidebar.onmobile'); 20 | } 21 | 22 | &.back-to-top-on { 23 | display: block; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/search/algolia-search/dom.swig: -------------------------------------------------------------------------------- 1 | {% if theme.algolia_search.enable %} 2 | 20 | {% endif %} 21 | -------------------------------------------------------------------------------- /themes/landscape/layout/layout.ejs: -------------------------------------------------------------------------------- 1 | <%- partial('_partial/head') %> 2 | 3 |
4 |
5 | <%- partial('_partial/header', null, {cache: !config.relative_link}) %> 6 |
7 |
<%- body %>
8 | <% if (theme.sidebar && theme.sidebar !== 'bottom'){ %> 9 | <%- partial('_partial/sidebar', null, {cache: !config.relative_link}) %> 10 | <% } %> 11 |
12 | <%- partial('_partial/footer', null, {cache: !config.relative_link}) %> 13 |
14 | <%- partial('_partial/mobile-nav', null, {cache: !config.relative_link}) %> 15 | <%- partial('_partial/after-footer') %> 16 |
17 | 18 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/gauges-analytics.ejs: -------------------------------------------------------------------------------- 1 | <% if (theme.gauges_analytics){ %> 2 | 3 | 17 | 18 | <% } %> 19 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/rating.swig: -------------------------------------------------------------------------------- 1 | {% if theme.rating.enable and (not is_home() and is_post()) %} 2 | 18 | {% endif %} 19 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/sidebar.styl: -------------------------------------------------------------------------------- 1 | if sidebar is bottom 2 | @import "sidebar-bottom" 3 | else 4 | @import "sidebar-aside" 5 | 6 | .widget 7 | @extend $base-style 8 | line-height: line-height 9 | word-wrap: break-word 10 | font-size: 0.9em 11 | ul, ol 12 | list-style: none 13 | margin: 0 14 | ul, ol 15 | margin: 0 20px 16 | ul 17 | list-style: disc 18 | ol 19 | list-style: decimal 20 | 21 | .category-list-count 22 | .tag-list-count 23 | .archive-list-count 24 | padding-left: 5px 25 | color: color-grey 26 | font-size: 0.85em 27 | &:before 28 | content: "(" 29 | &:after 30 | content: ")" 31 | 32 | .tagcloud 33 | a 34 | margin-right: 5px 35 | display: inline-block 36 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-author.styl: -------------------------------------------------------------------------------- 1 | .site-author-image { 2 | display: block; 3 | margin: 0 auto; 4 | padding: $site-author-image-padding; 5 | max-width: $site-author-image-width; 6 | height: $site-author-image-height; 7 | border: $site-author-image-border-width solid $site-author-image-border-color; 8 | } 9 | 10 | .site-author-name { 11 | margin: $site-author-name-margin; 12 | text-align: $site-author-name-align; 13 | color: $site-author-name-color; 14 | font-weight: $site-author-name-weight; 15 | } 16 | 17 | .site-description { 18 | margin-top: $site-description-margin-top; 19 | text-align: $site-description-align; 20 | font-size: $site-description-font-size; 21 | color: $site-description-color; 22 | } 23 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-center-simple.min.css: -------------------------------------------------------------------------------- 1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:2000;position:fixed;margin:auto;top:0;left:0;right:0;bottom:0;height:5px;width:200px;background:#fff;border:1px solid #29d;overflow:hidden}.pace .pace-progress{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0);max-width:200px;z-index:2000;display:block;position:absolute;top:0;right:100%;height:100%;width:100%;background:#29d}.pace.pace-inactive{display:none} -------------------------------------------------------------------------------- /themes/next/layout/schedule.swig: -------------------------------------------------------------------------------- 1 | {% extends '_layout.swig' %} 2 | {% import '_macro/sidebar.swig' as sidebar_template %} 3 | 4 | {% block title %}{{ __('title.schedule') }} | {{ config.title }}{% endblock %} 5 | 6 | {% block page_class %}page-post-detail page-calendar{% endblock %} 7 | 8 | {% block content %} 9 | {######################} 10 | {### SCHEDULE BLOCK ###} 11 | {######################} 12 |
13 |
14 |
    15 |
16 |
17 |
18 | {##########################} 19 | {### END SCHEDULE BLOCK ###} 20 | {##########################} 21 | {% endblock %} 22 | 23 | {% block sidebar %} 24 | {{ sidebar_template.render(false) }} 25 | {% endblock %} 26 | -------------------------------------------------------------------------------- /themes/next/layout/_macro/post-copyright.swig: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /themes/next/layout/index.swig: -------------------------------------------------------------------------------- 1 | {% extends '_layout.swig' %} 2 | {% import '_macro/post.swig' as post_template %} 3 | {% import '_macro/sidebar.swig' as sidebar_template %} 4 | 5 | {% block title %}{{ config.title }}{% if theme.index_with_subtitle and config.subtitle %} - {{config.subtitle }}{% endif %}{% endblock %} 6 | 7 | {% block page_class %} 8 | {% if is_home() %}page-home{% endif -%} 9 | {% endblock %} 10 | 11 | {% block content %} 12 |
13 | {% for post in page.posts %} 14 | {{ post_template.render(post, true) }} 15 | {% endfor %} 16 |
17 | 18 | {% include '_partials/pagination.swig' %} 19 | {% endblock %} 20 | 21 | {% block sidebar %} 22 | {{ sidebar_template.render(false) }} 23 | {% endblock %} 24 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/site-state.styl: -------------------------------------------------------------------------------- 1 | .site-state { 2 | overflow: hidden; 3 | line-height: 1.4; 4 | white-space: nowrap; 5 | text-align: $site-state-align; 6 | } 7 | 8 | .site-state-item { 9 | display: inline-block; 10 | padding: 0 15px; 11 | border-left: 1px solid $site-state-item-border-color; 12 | 13 | &:first-child { border-left: none; } 14 | 15 | a { border-bottom: none; } 16 | } 17 | .site-state-item-count { 18 | display: block; 19 | text-align: center; 20 | color: $site-state-item-count-color; 21 | font-weight: $font-weight-bold; 22 | font-size: $site-state-item-count-font-size; 23 | } 24 | 25 | .site-state-item-name { 26 | font-size: $site-state-item-name-font-size; 27 | color: $site-state-item-name-color; 28 | } 29 | -------------------------------------------------------------------------------- /themes/next/source/js/src/scroll-cookie.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function() { 2 | 3 | // Set relative link path (without domain) 4 | var rpath = window.location.href.replace(window.location.origin, ""); 5 | 6 | // Write position in cookie 7 | var timeout; 8 | $(window).on("scroll", function() { 9 | clearTimeout(timeout); 10 | timeout = setTimeout(function () { 11 | Cookies.set("scroll-cookie", ($(window).scrollTop() + "|" + rpath), { expires: 365, path: '' }); 12 | }, 250); 13 | }); 14 | 15 | // Read position from cookie 16 | if (Cookies.get("scroll-cookie") !== undefined) { 17 | var cvalues = Cookies.get("scroll-cookie").split('|'); 18 | if (cvalues[1] == rpath) { 19 | $(window).scrollTop(cvalues[0]); 20 | } 21 | } 22 | 23 | }); 24 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/header/menu.styl: -------------------------------------------------------------------------------- 1 | // Menu 2 | // -------------------------------------------------- 3 | .menu { 4 | margin-top: 20px; 5 | padding-left: 0; 6 | text-align: center; 7 | } 8 | 9 | .menu .menu-item { 10 | display: inline-block; 11 | margin: 0 10px; 12 | list-style: none; 13 | 14 | @media screen and (max-width: 767px) { 15 | margin-top: 10px; 16 | } 17 | 18 | a { 19 | display: block; 20 | font-size: 13px; 21 | line-height: inherit; 22 | border-bottom: 1px solid $menu-link-border; 23 | transition-property: border-color; 24 | the-transition(); 25 | 26 | &:hover { border-bottom-color: $menu-link-hover-border; } 27 | } 28 | 29 | .fa { margin-right: 5px; } 30 | } 31 | 32 | .use-motion .menu-item { opacity: 0; } 33 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/search/tinysou.swig: -------------------------------------------------------------------------------- 1 | {% if config.tinysou_Key %} 2 | 23 | {% endif %} -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-nav.styl: -------------------------------------------------------------------------------- 1 | // Sidebar Navigation 2 | 3 | .sidebar-nav { 4 | margin: 0 0 20px; 5 | padding-left: 0; 6 | } 7 | .sidebar-nav li { 8 | display: inline-block; 9 | cursor: pointer; 10 | border-bottom: 1px solid transparent; 11 | font-size: 14px; 12 | color: $sidebar-nav-color; 13 | 14 | &:hover { color: $sidebar-nav-hover-color; } 15 | } 16 | 17 | .page-post-detail .sidebar-nav-toc { padding: 0 5px; } 18 | 19 | .page-post-detail .sidebar-nav-overview { margin-left: 10px; } 20 | 21 | .sidebar-nav .sidebar-nav-active { 22 | color: $sidebar-highlight; 23 | border-bottom-color: $sidebar-highlight; 24 | 25 | &:hover { color: $sidebar-highlight; } 26 | } 27 | 28 | .sidebar-panel { display: none; } 29 | .sidebar-panel-active { display: block; } 30 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-title.styl: -------------------------------------------------------------------------------- 1 | .posts-expand .post-title { 2 | text-align: center; 3 | word-break: break-word; 4 | font-weight: $posts-expand-title-font-weight 5 | } 6 | .posts-expand .post-title-link { 7 | display: inline-block; 8 | position: relative; 9 | color: $black-light; 10 | border-bottom: none; 11 | line-height: 1.2; 12 | vertical-align: top; 13 | 14 | &::before { 15 | content: ""; 16 | position: absolute; 17 | width: 100%; 18 | height: 2px; 19 | bottom: 0; 20 | left: 0; 21 | background-color: #000; 22 | visibility: hidden; 23 | transform: scaleX(0); 24 | the-transition(); 25 | } 26 | 27 | &:hover::before { 28 | visibility: visible; 29 | transform: scaleX(1); 30 | } 31 | 32 | .fa { font-size: 16px; } 33 | } 34 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/busuanzi-counter.swig: -------------------------------------------------------------------------------- 1 | {% if theme.busuanzi_count.enable %} 2 |
3 | 4 | 5 | {% if theme.busuanzi_count.site_uv %} 6 | 7 | {{ theme.busuanzi_count.site_uv_header }} 8 | 9 | {{ theme.busuanzi_count.site_uv_footer }} 10 | 11 | {% endif %} 12 | 13 | {% if theme.busuanzi_count.site_pv %} 14 | 15 | {{ theme.busuanzi_count.site_pv_header }} 16 | 17 | {{ theme.busuanzi_count.site_pv_footer }} 18 | 19 | {% endif %} 20 |
21 | {% endif %} 22 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-widgets.styl: -------------------------------------------------------------------------------- 1 | .post-widgets { 2 | border-top: 1px solid #eee; 3 | padding-top: 9px; 4 | margin-top: 45px; 5 | display: flex; 6 | justify-content: center; 7 | flex-wrap: wrap; 8 | align-items: center; 9 | 10 | .post-meta-divider { 11 | height: 28px; 12 | color: $grey-dark; 13 | } 14 | } 15 | 16 | .wp_rating { 17 | height: 20px; 18 | margin-right: 10px; 19 | text-align: center; 20 | line-height: 20px; 21 | padding-top: 6px; 22 | } 23 | 24 | .social-like { 25 | font-size: 14px; 26 | text-align: center; 27 | display: flex; 28 | justify-content: center; 29 | } 30 | 31 | .vk_like { 32 | width: 85px; 33 | height: 21px; 34 | padding-top: 7px; 35 | align-self: center; 36 | } 37 | 38 | .fb_like { 39 | height: 30px; 40 | align-self: center; 41 | } 42 | -------------------------------------------------------------------------------- /themes/landscape/scripts/fancybox.js: -------------------------------------------------------------------------------- 1 | var rUrl = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[.\!\/\\w]*))?)/; 2 | 3 | /** 4 | * Fancybox tag 5 | * 6 | * Syntax: 7 | * {% fancybox /path/to/image [/path/to/thumbnail] [title] %} 8 | */ 9 | 10 | hexo.extend.tag.register('fancybox', function(args){ 11 | var original = args.shift(), 12 | thumbnail = ''; 13 | 14 | if (args.length && rUrl.test(args[0])){ 15 | thumbnail = args.shift(); 16 | } 17 | 18 | var title = args.join(' '); 19 | 20 | return '' + 21 | '' + title + '' 22 | '' + 23 | (title ? '' + title + '' : ''); 24 | }); -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tags/group-pictures.styl: -------------------------------------------------------------------------------- 1 | .post .post-body .group-picture { 2 | img { 3 | box-sizing: border-box; 4 | padding: 0 3px; 5 | border: none; 6 | } 7 | } 8 | 9 | .post .group-picture-row { 10 | overflow: hidden; 11 | margin-top: 6px; 12 | &:first-child { margin-top: 0; } 13 | } 14 | 15 | .post .group-picture-column { float: left; } 16 | 17 | .page-post-detail .post-body .group-picture-column { 18 | float: none; 19 | margin-top: 10px; 20 | width: auto !important; 21 | img { margin: 0 auto; } 22 | } 23 | 24 | .page-archive { 25 | .group-picture-container { overflow: hidden; } 26 | .group-picture-row { 27 | float: left; 28 | &:first-child { margin-top: 6px; } 29 | } 30 | 31 | .group-picture-column { 32 | max-width: 150px; 33 | max-height: 150px; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/post/nav.ejs: -------------------------------------------------------------------------------- 1 | <% if (post.prev || post.next){ %> 2 | 22 | <% } %> -------------------------------------------------------------------------------- /themes/next/layout/_partials/share/duoshuo_share.swig: -------------------------------------------------------------------------------- 1 |
5 |
6 | 15 |
16 |
17 |
18 |
-------------------------------------------------------------------------------- /themes/landscape/source/css/_util/mixin.styl: -------------------------------------------------------------------------------- 1 | // http://www.zeldman.com/2012/03/01/replacing-the-9999px-hack-new-image-replacement/ 2 | hide-text() 3 | text-indent: 100% 4 | white-space: nowrap 5 | overflow: hidden 6 | 7 | // http://codepen.io/shshaw/full/gEiDt 8 | absolute-center(width, height = width) 9 | // margin: auto 10 | // position: absolute 11 | // top: 50% 12 | // top: 0 13 | // left: 0 14 | // bottom: 0 15 | // right: 0 16 | // width: width 17 | // height: height 18 | // overflow: auto 19 | width: width 20 | height: height 21 | position: absolute 22 | top: 50% 23 | left: 50% 24 | margin-top: width * -0.5 25 | margin-left: height * -0.5 26 | 27 | avoid-column-break() 28 | vendor("column-break-inside", avoid, only: webkit) 29 | page-break-inside: avoid // for firefox 30 | overflow: hidden // fix for firefox 31 | break-inside: avoid-column 32 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/mathjax.swig: -------------------------------------------------------------------------------- 1 | {% if theme.mathjax.enable %} 2 | {% if not theme.mathjax.per_page or (page.total or page.mathjax) %} 3 | 12 | 13 | 21 | 22 | {% endif %} 23 | {% endif %} 24 | -------------------------------------------------------------------------------- /themes/next/source/lib/velocity/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "velocity", 3 | "version": "1.2.2", 4 | "homepage": "http://velocityjs.org", 5 | "authors": [ 6 | { "name" : "Julian Shapiro", 7 | "homepage" : "http://julian.com/" 8 | } 9 | ], 10 | "description": "Accelerated JavaScript animation.", 11 | "main": [ "./velocity.js", "./velocity.ui.js"], 12 | "keywords": [ 13 | "animation", 14 | "jquery", 15 | "animate", 16 | "lightweight", 17 | "smooth", 18 | "ui", 19 | "velocity.js", 20 | "velocityjs", 21 | "javascript" 22 | ], 23 | "license": "MIT", 24 | "ignore": [ 25 | "*.json", 26 | "!/bower.json", 27 | "LICENSE", 28 | "*.md" 29 | ], 30 | "dependencies": { 31 | "jquery": "*" 32 | }, 33 | "repository" : 34 | { 35 | "type" : "git", 36 | "url" : "http://github.com/julianshapiro/velocity.git" 37 | } 38 | } -------------------------------------------------------------------------------- /themes/next/source/lib/font-awesome/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "keywords": [], 5 | "homepage": "http://fontawesome.io", 6 | "dependencies": {}, 7 | "devDependencies": {}, 8 | "license": [ 9 | "OFL-1.1", 10 | "MIT", 11 | "CC-BY-3.0" 12 | ], 13 | "main": [ 14 | "less/font-awesome.less", 15 | "scss/font-awesome.scss" 16 | ], 17 | "ignore": [ 18 | "*/.*", 19 | "*.json", 20 | "src", 21 | "*.yml", 22 | "Gemfile", 23 | "Gemfile.lock", 24 | "*.md" 25 | ], 26 | "version": "4.7.0", 27 | "_release": "4.7.0", 28 | "_resolution": { 29 | "type": "version", 30 | "tag": "v4.7.0", 31 | "commit": "a3fe90fa5f6fac55d197f9cbd18e3f57dafb716c" 32 | }, 33 | "_source": "https://github.com/FortAwesome/Font-Awesome.git", 34 | "_target": "*", 35 | "_originalSource": "fontawesome" 36 | } -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/_menu.styl: -------------------------------------------------------------------------------- 1 | // Menu 2 | // -------------------------------------------------- 3 | .site-nav-toggle { 4 | position: static; 5 | float: right; 6 | } 7 | 8 | 9 | .menu { 10 | float: right; 11 | margin: 8px 0 0 0; 12 | 13 | +mobile() { 14 | margin: 20px 0 0 0; 15 | padding: 0; 16 | } 17 | 18 | br { display: none; } 19 | 20 | .menu-item { 21 | margin: 0; 22 | +mobile() { display: block; } 23 | } 24 | 25 | .menu-item a { 26 | padding: 0 10px; 27 | background: none; 28 | border: none; 29 | border-radius: 2px; 30 | transition-property: background; 31 | 32 | +mobile() { 33 | text-align: left; 34 | } 35 | 36 | &:hover { background: #e1e1e1; } 37 | } 38 | 39 | a::before { 40 | display: none; 41 | 42 | +mobile() { display: block; } 43 | } 44 | 45 | +mobile() { float: none; } 46 | } 47 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-toggle.styl: -------------------------------------------------------------------------------- 1 | .sidebar-toggle { 2 | position: fixed; 3 | right: $b2t-position-right; 4 | bottom: 45px; 5 | width: 14px; 6 | height: 14px; 7 | padding: 5px; 8 | background: $black-deep; 9 | line-height: 0; 10 | z-index: $zindex-5; 11 | cursor: pointer; 12 | -webkit-transform: translateZ(0); 13 | 14 | +tablet() { 15 | fixbutton() if hexo-config('sidebar.onmobile'); 16 | hide() if not hexo-config('sidebar.onmobile'); 17 | } 18 | +mobile() { 19 | fixbutton() if hexo-config('sidebar.onmobile'); 20 | hide() if not hexo-config('sidebar.onmobile'); 21 | } 22 | } 23 | 24 | 25 | 26 | .sidebar-toggle-line { 27 | position: relative; 28 | display: inline-block; 29 | vertical-align: top; 30 | height: 2px; 31 | width: 100%; 32 | background: white; 33 | margin-top: 3px; 34 | 35 | &:first-child { margin-top: 0; } 36 | } 37 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/tags/blockquote-center.styl: -------------------------------------------------------------------------------- 1 | // Blockquote with all children centered. 2 | .blockquote-center { 3 | position: relative; 4 | margin: 40px 0; 5 | padding: 0; 6 | border-left: none; 7 | text-align: center; 8 | 9 | &::before, &::after { 10 | position: absolute; 11 | content: ' '; 12 | display: block; 13 | width: 100%; 14 | height: 24px; 15 | opacity: 0.2; 16 | background-repeat: no-repeat; 17 | background-position: 0 -6px; 18 | background-size: 22px 22px; 19 | } 20 | &::before { 21 | top: -20px; 22 | background-image: url($center-quote-left); 23 | border-top: 1px solid $grey-light; 24 | } 25 | &::after { 26 | bottom: -20px; 27 | background-image: url($center-quote-right); 28 | border-bottom: 1px solid $grey-light; 29 | background-position: 100% 8px; 30 | } 31 | 32 | p, div { text-align: center; } 33 | } 34 | -------------------------------------------------------------------------------- /themes/next/source/images/quote-r.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/back-to-top.styl: -------------------------------------------------------------------------------- 1 | .back-to-top { 2 | box-sizing: border-box; 3 | position: fixed; 4 | bottom: $b2t-position-bottom; 5 | right: $b2t-position-right; 6 | z-index: $zindex-5; 7 | padding: 0 6px; 8 | width: hexo-config('sidebar.scrollpercent') ? initial : 24px; 9 | background: $b2t-bg-color; 10 | font-size: $b2t-font-size; 11 | opacity: $b2t-opacity; 12 | color: $b2t-color; 13 | cursor: pointer; 14 | text-align: center; 15 | -webkit-transform: translateZ(0); 16 | transition-property: bottom; 17 | the-transition(); 18 | 19 | +tablet() { 20 | fixbutton() if hexo-config('sidebar.onmobile'); 21 | hide() if not hexo-config('sidebar.onmobile'); 22 | } 23 | +mobile() { 24 | fixbutton() if hexo-config('sidebar.onmobile'); 25 | hide() if not hexo-config('sidebar.onmobile'); 26 | } 27 | 28 | &.back-to-top-on { 29 | bottom: $b2t-position-bottom-on; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/scaffolding/tables.styl: -------------------------------------------------------------------------------- 1 | table { 2 | margin: 20px 0; 3 | width: $table-width; 4 | border-collapse: collapse; 5 | border-spacing: 0; 6 | border: 1px solid $table-border-color; 7 | font-size: $table-font-size; 8 | table-layout: fixed; 9 | word-wrap: break-all; 10 | } 11 | table>tbody>tr { 12 | &:nth-of-type(odd) { background-color: $table-row-odd-bg-color; } 13 | &:hover { background-color: $table-row-hover-bg-color; } 14 | } 15 | 16 | caption, th, td { 17 | padding: $table-cell-padding; 18 | text-align: $table-content-alignment; 19 | vertical-align: $table-content-vertical; 20 | font-weight: normal; 21 | } 22 | 23 | th, td { 24 | border-bottom: 3px solid $table-cell-border-bottom-color; 25 | border-right: 1px solid $table-cell-border-right-color; 26 | } 27 | 28 | th { 29 | padding-bottom: 10px; 30 | font-weight: $table-th-font-weight; 31 | } 32 | 33 | td { border-bottom-width: 1px; } 34 | -------------------------------------------------------------------------------- /themes/next/source/images/quote-l.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 13 | 14 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/vkontakte-api.swig: -------------------------------------------------------------------------------- 1 | {% if theme.vkontakte_api.enable %} 2 | 3 |
4 | 26 | 27 | {% endif %} 28 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/buttons.styl: -------------------------------------------------------------------------------- 1 | .btn { 2 | display: inline-block; 3 | padding: 0 20px; 4 | font-size: $btn-default-font-size; 5 | color: $btn-default-color; 6 | background: $btn-default-bg; 7 | border: $btn-default-border-width solid $btn-default-border-color; 8 | text-decoration: none; 9 | border-radius: $btn-default-radius; 10 | transition-property: background-color; 11 | the-transition(); 12 | line-height: 2; 13 | 14 | &:hover { 15 | border-color: $btn-default-hover-border-color; 16 | color: $btn-default-hover-color; 17 | background: $btn-default-hover-bg; 18 | } 19 | 20 | +.btn { 21 | margin: 0 0 8px 8px; 22 | } 23 | 24 | .fa-fw { 25 | width: (18em / 14); 26 | text-align: left; 27 | } 28 | } 29 | 30 | .btn-bar { 31 | display: block; 32 | width: 22px; 33 | height: 2px; 34 | background: $text-color; 35 | border-radius: 1px; 36 | 37 | &+.btn-bar { margin-top: 4px; } 38 | } 39 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/after-footer.ejs: -------------------------------------------------------------------------------- 1 | <% if (config.disqus_shortname){ %> 2 | 15 | <% } %> 16 | 17 | 18 | 19 | <% if (theme.fancybox){ %> 20 | <%- css('fancybox/jquery.fancybox') %> 21 | <%- js('fancybox/jquery.fancybox.pack') %> 22 | <% } %> 23 | 24 | <%- js('js/script') %> 25 | <%- partial('gauges-analytics') %> 26 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/search/algolia-search/assets.swig: -------------------------------------------------------------------------------- 1 | {% if theme.algolia_search.enable %} 2 | 3 | {# S: Include Algolia instantsearch.js library #} 4 | {% set algolia_instant_css = url_for(theme.vendors._internal + '/algolia-instant-search/instantsearch.min.css') %} 5 | {% if theme.vendors.algolia_instant_css %} 6 | {% set algolia_instant_css = theme.vendors.algolia_instant_css %} 7 | {% endif %} 8 | 9 | 10 | {% set algolia_instant_js = url_for(theme.vendors._internal + '/algolia-instant-search/instantsearch.min.js') %} 11 | {% if theme.vendors.algolia_instant_js %} 12 | {% set algolia_instant_js = theme.vendors.algolia_instant_js %} 13 | {% endif %} 14 | 15 | {# E: Include Algolia instantsearch.js library #} 16 | 17 | 18 | {% endif %} 19 | -------------------------------------------------------------------------------- /themes/next/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: node 3 | 4 | cache: 5 | directories: 6 | - node_modules 7 | 8 | install: npm install 9 | 10 | before_script: 11 | - npm install -g gulp 12 | 13 | addons: 14 | browserstack: 15 | username: "ivannginx1" 16 | access_key: 17 | secure: "NutOhdgtUdBUXMPZhy8X1F1Jq+tan1LeNOV0FArBt15SNlxtNArqhiyTi4XnG9MPruX4306aGF2RBrKso+OiGNRdGtRGngH613Q0GWNtlC/boMqnI7fHqLIyCs6S12y2uA8PK4Ifxg9bZ0VtCTYYbMy+p1KvBM//L12vmtfdnby8z5Qvex3tB3dLoPOR50CKkINHJVDLm+iVRFrdz4/83oDsulZSRRGIaxu5taDWPIcp3fYZtre2Nc+RXcsyFDyjN7U0Hvr5tKBbloJxXEQEBv2xLkMOtp85nmCPD06s1Il8Wus1ux3raVsfUyaW5FpNX37Jeb5e00RQUM1wgU5m75H6qiGwDvQswbugJG0i/a2nNfsgVmbrSZdMnkHcx2Uxmrw4ejyEP5NSrJSBi05Ck1fQ4UsZ4Qkdf1fd04SI0LpLWt43eoNO/7rHKsQoP4LCX9gxKUuC075NEBLODyJ529RYfA6dKKwwH6o0ZbOgASmCoAWaM65g4+FHRnJcKL/Kj9ZWklQtRa7/ynlHaA65jefFS2lB8Ut6d3rXDDBih9mIrwV1uUaEH96xgAN42bgU/vY6FGzNkDOYZqj4YfsepDM0wbOsslFie7JZq7iFjsYvrXqLvYUMk37AZwQ2Sb6uH4tIT4Qw/4oZfDzA1En3/8HdZJ28nKW/lzjwMSqheIY=" 18 | -------------------------------------------------------------------------------- /themes/next/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "isn-next", 3 | "version": "5.1.4", 4 | "homepage": "https://github.com/iissnan/hexo-theme-next", 5 | "authors": [ 6 | "iissnan " 7 | ], 8 | "description": "Elegant theme for Hexo", 9 | "repository": "https://github.com/iissnan/hexo-theme-next", 10 | "keywords": [ 11 | "hexo", 12 | "notes", 13 | "theme", 14 | "iissnan", 15 | "NexT" 16 | ], 17 | "license": "MIT", 18 | "ignore": [ 19 | "**/.*", 20 | "node_modules", 21 | "bower_components", 22 | "source/lib", 23 | "test", 24 | "tests", 25 | "screenshots" 26 | ], 27 | "dependencies": { 28 | "fancybox": "~2.1.5", 29 | "velocity": "~1.2.1", 30 | "jquery": "http://code.jquery.com/jquery-2.1.3.min.js", 31 | "fastclick": "~1.0.6", 32 | "font-awesome": "fontawesome#*", 33 | "jquery_lazyload": "jquery.lazyload#~1.9.7", 34 | "ua-parser-js": "~0.7.9", 35 | "Han": "^3.3.0" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/disqus.swig: -------------------------------------------------------------------------------- 1 | {% if not (theme.duoshuo and theme.duoshuo.shortname) and not theme.duoshuo_shortname %} 2 | {% if theme.disqus.enable %} 3 | 4 | {% if theme.disqus.count %} 5 | 6 | {% endif %} 7 | 8 | {% if page.comments %} 9 | 20 | {% endif %} 21 | 22 | {% endif %} 23 | {% endif %} 24 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/valine.swig: -------------------------------------------------------------------------------- 1 | {% if theme.valine.enable and theme.valine.appid and theme.valine.appkey %} 2 | 3 | 4 | 5 | 23 | {% endif %} 24 | -------------------------------------------------------------------------------- /themes/next/scripts/tags/button.js: -------------------------------------------------------------------------------- 1 | /* global hexo */ 2 | // Usage: {% button /path/to/url/, text, icon [class], title %} 3 | // Alias: {% btn /path/to/url/, text, icon [class], title %} 4 | 5 | function postButton(args) { 6 | args = args.join(' ').split(','); 7 | var url = args[0]; 8 | var text = args[1] || ''; 9 | var icon = args[2] || ''; 10 | var title = args[3] || ''; 11 | 12 | if (!url) { 13 | hexo.log.warn('URL can NOT be empty'); 14 | } 15 | 16 | text = text.trim(); 17 | icon = icon.trim(); 18 | title = title.trim(); 19 | 20 | var result = [' 0 && result.push(' title="' + title + '"'); 22 | result.push('>'); 23 | icon.length > 0 && result.push(''); 24 | text.length > 0 && result.push(text); 25 | result.push(''); 26 | 27 | return result.join(''); 28 | } 29 | 30 | hexo.extend.tag.register('button', postButton); 31 | hexo.extend.tag.register('btn', postButton); 32 | -------------------------------------------------------------------------------- /themes/next/scripts/tags/full-image.js: -------------------------------------------------------------------------------- 1 | /* global hexo */ 2 | // Usage: {% fullimage /path/to/image, alt, title %} 3 | // Alias: {% fi /path/to/image, alt, title %} 4 | 5 | function fullImage(args) { 6 | args = args.join(' ').split(','); 7 | var src = args[0]; 8 | var alt = args[1] || ''; 9 | var title = args[2] || ''; 10 | 11 | if (!src) { 12 | hexo.log.warn('Image src can NOT be empty'); 13 | } 14 | alt = alt.trim(); 15 | title = title.trim(); 16 | 17 | var image = [' 0 && image.push('alt="' + alt + '"'); 19 | title.length > 0 && image.push('title="' + title + '"'); 20 | image.push('/>'); 21 | 22 | return image.join(' '); 23 | } 24 | 25 | hexo.extend.tag.register('fullimage', fullImage); 26 | hexo.extend.tag.register('fi', fullImage); 27 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-center-radar.min.css: -------------------------------------------------------------------------------- 1 | .pace,.pace .pace-activity{z-index:2000;height:90px;width:90px}.pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:fixed;margin:auto;top:0;left:0;right:0;bottom:0}.pace.pace-inactive .pace-activity{display:none}.pace .pace-activity,.pace .pace-activity:before{position:absolute;display:block;border-color:#29d transparent transparent;border-radius:50%}.pace .pace-activity{left:-30px;top:-30px;border-width:30px;border-style:double;-webkit-animation:spin 1s linear infinite;-moz-animation:spin 1s linear infinite;-o-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.pace .pace-activity:before{content:' ';top:10px;left:10px;height:50px;width:50px;border-width:10px;border-style:solid}@-webkit-keyframes spin{100%{-webkit-transform:rotate(359deg)}}@-moz-keyframes spin{100%{-moz-transform:rotate(359deg)}}@-o-keyframes spin{100%{-moz-transform:rotate(359deg)}}@keyframes spin{100%{transform:rotate(359deg)}} -------------------------------------------------------------------------------- /themes/next/layout/_partials/share/jiathis.swig: -------------------------------------------------------------------------------- 1 | 2 |
3 | 分享到: 4 | 收藏夹 5 | 复制网址 6 | 邮件 7 | 微信 8 | QQ空间 9 | 腾讯微博 10 | 豆瓣 11 | 一键分享 12 | 13 | 更多 14 | 15 |
16 | 24 | 25 | -------------------------------------------------------------------------------- /themes/next/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hexo-theme-next", 3 | "version": "5.1.4", 4 | "description": "Elegant theme for Hexo", 5 | "main": "index.js", 6 | "directories": { 7 | "test": "test" 8 | }, 9 | "scripts": { 10 | "test": "gulp" 11 | }, 12 | "repository": { 13 | "type": "git", 14 | "url": "git+https://github.com/iissnan/hexo-theme-next.git" 15 | }, 16 | "keywords": [ 17 | "NexT", 18 | "Hexo" 19 | ], 20 | "author": "iissnan ", 21 | "maintainers": [ 22 | "Ivan Nginx (https://almostover.ru)" 23 | ], 24 | "license": "MIT", 25 | "bugs": { 26 | "url": "https://github.com/iissnan/hexo-theme-next/issues" 27 | }, 28 | "homepage": "https://theme-next.iissnan.com", 29 | "devDependencies": { 30 | "coffee-script": "^1.10.0", 31 | "gulp": "^3.9.0", 32 | "gulp-jshint": "^1.12.0", 33 | "gulp-shell": "^0.6.1", 34 | "js-yaml": "^3.8.1", 35 | "jshint-stylish": "^2.1.0", 36 | "stylint": "^1.5.9" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /themes/next/source/css/_variables/Gemini.styl: -------------------------------------------------------------------------------- 1 | // Variables of Gemini scheme 2 | // ================================================= 3 | 4 | @import "Pisces.styl"; 5 | 6 | // Settings for some of the most global styles. 7 | // -------------------------------------------------- 8 | $body-bg-color = #eee 9 | $main-desktop = 75% 10 | $sidebar-desktop = 240px 11 | $content-desktop = calc(100% - 252px) 12 | 13 | // Borders. 14 | // -------------------------------------------------- 15 | $box-shadow-inner = 0 2px 2px 0 rgba(0,0,0,.12), 0 3px 1px -2px rgba(0,0,0,.06), 0 1px 5px 0 rgba(0,0,0,.12) 16 | $box-shadow = 0 2px 2px 0 rgba(0,0,0,.12), 0 3px 1px -2px rgba(0,0,0,.06), 0 1px 5px 0 rgba(0,0,0,.12), 0 -1px .5px 0 rgba(0,0,0,.09) 17 | 18 | $border-radius-inner = initial 19 | $border-radius = initial 20 | //$border-radius-inner = 0 0 3px 3px; 21 | //$border-radius = 3px; 22 | -------------------------------------------------------------------------------- /themes/landscape/source/fancybox/helpers/jquery.fancybox-thumbs.css: -------------------------------------------------------------------------------- 1 | #fancybox-thumbs { 2 | position: fixed; 3 | left: 0; 4 | width: 100%; 5 | overflow: hidden; 6 | z-index: 8050; 7 | } 8 | 9 | #fancybox-thumbs.bottom { 10 | bottom: 2px; 11 | } 12 | 13 | #fancybox-thumbs.top { 14 | top: 2px; 15 | } 16 | 17 | #fancybox-thumbs ul { 18 | position: relative; 19 | list-style: none; 20 | margin: 0; 21 | padding: 0; 22 | } 23 | 24 | #fancybox-thumbs ul li { 25 | float: left; 26 | padding: 1px; 27 | opacity: 0.5; 28 | } 29 | 30 | #fancybox-thumbs ul li.active { 31 | opacity: 0.75; 32 | padding: 0; 33 | border: 1px solid #fff; 34 | } 35 | 36 | #fancybox-thumbs ul li:hover { 37 | opacity: 1; 38 | } 39 | 40 | #fancybox-thumbs ul li a { 41 | display: block; 42 | position: relative; 43 | overflow: hidden; 44 | border: 1px solid #222; 45 | background: #111; 46 | outline: none; 47 | } 48 | 49 | #fancybox-thumbs ul li img { 50 | display: block; 51 | position: relative; 52 | border: 0; 53 | padding: 0; 54 | max-width: none; 55 | } -------------------------------------------------------------------------------- /themes/next/scripts/tags/lazy-image.js: -------------------------------------------------------------------------------- 1 | /* global hexo */ 2 | // Usage: {% lazyimage /path/to/image, alt, title %} 3 | // Alias: {% li /path/to/image, alt, title %} 4 | 5 | function lazyImage(args) { 6 | args = args.join(' ').split(','); 7 | var src = args[0]; 8 | var alt = args[1] || ''; 9 | var title = args[2] || ''; 10 | 11 | if (!src) { 12 | hexo.log.warn('Image src can NOT be empty'); 13 | } 14 | alt = alt.trim(); 15 | title = title.trim(); 16 | 17 | var image = [' 0 && image.push('alt="' + alt + '"'); 19 | title.length > 0 && image.push('title="' + title + '"'); 20 | image.push('/>'); 21 | 22 | return image.join(' '); 23 | } 24 | 25 | hexo.extend.tag.register('lazyimage', lazyImage); 26 | hexo.extend.tag.register('li', lazyImage); 27 | -------------------------------------------------------------------------------- /themes/next/source/lib/jquery_lazyload/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery_lazyload", 3 | "version": "1.9.7", 4 | "homepage": "http://www.appelsiini.net/projects/lazyload", 5 | "authors": [ 6 | "Mika Tuupola " 7 | ], 8 | "description": "jQuery plugin for lazy loading images", 9 | "main": [ 10 | "jquery.lazyload.js", 11 | "jquery.scrollstop.js" 12 | ], 13 | "license": "MIT", 14 | "ignore": [ 15 | "**/.*", 16 | "**/*.min.js", 17 | "**/*.html", 18 | "**/*.textile", 19 | "Gruntfile.js", 20 | "lazyload.jquery.json", 21 | "package.json", 22 | "node_modules", 23 | "bower_components", 24 | "test", 25 | "img" 26 | ], 27 | "_release": "1.9.7", 28 | "_resolution": { 29 | "type": "version", 30 | "tag": "1.9.7", 31 | "commit": "218e50eb4999fe59ac94b939a65c8c988d1d420b" 32 | }, 33 | "_source": "git://github.com/tuupola/jquery_lazyload.git", 34 | "_target": "~1.9.7", 35 | "_originalSource": "jquery.lazyload", 36 | "_direct": true 37 | } -------------------------------------------------------------------------------- /themes/next/source/lib/fancybox/source/helpers/jquery.fancybox-thumbs.css: -------------------------------------------------------------------------------- 1 | #fancybox-thumbs { 2 | position: fixed; 3 | left: 0; 4 | width: 100%; 5 | overflow: hidden; 6 | z-index: 8050; 7 | } 8 | 9 | #fancybox-thumbs.bottom { 10 | bottom: 2px; 11 | } 12 | 13 | #fancybox-thumbs.top { 14 | top: 2px; 15 | } 16 | 17 | #fancybox-thumbs ul { 18 | position: relative; 19 | list-style: none; 20 | margin: 0; 21 | padding: 0; 22 | } 23 | 24 | #fancybox-thumbs ul li { 25 | float: left; 26 | padding: 1px; 27 | opacity: 0.5; 28 | } 29 | 30 | #fancybox-thumbs ul li.active { 31 | opacity: 0.75; 32 | padding: 0; 33 | border: 1px solid #fff; 34 | } 35 | 36 | #fancybox-thumbs ul li:hover { 37 | opacity: 1; 38 | } 39 | 40 | #fancybox-thumbs ul li a { 41 | display: block; 42 | position: relative; 43 | overflow: hidden; 44 | border: 1px solid #222; 45 | background: #111; 46 | outline: none; 47 | } 48 | 49 | #fancybox-thumbs ul li img { 50 | display: block; 51 | position: relative; 52 | border: 0; 53 | padding: 0; 54 | max-width: none; 55 | } -------------------------------------------------------------------------------- /themes/landscape/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013 Tommy Chen 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/header/site-meta.styl: -------------------------------------------------------------------------------- 1 | .site-meta { 2 | margin: 0; 3 | text-align: $site-meta-text-align; 4 | 5 | +mobile() { text-align: center; } 6 | } 7 | 8 | .brand { 9 | position: relative; 10 | display: inline-block; 11 | padding: 0 40px; 12 | color: $brand-color; 13 | background: $brand-bg; 14 | border-bottom: none; 15 | &:hover { color: $brand-hover-color; } 16 | } 17 | 18 | .logo { 19 | display: inline-block; 20 | margin-right: 5px; 21 | line-height: 36px; 22 | vertical-align: top; 23 | } 24 | 25 | .site-title { 26 | display: inline-block; 27 | vertical-align: top; 28 | line-height: 36px; 29 | font-size: $logo-font-size; 30 | font-weight: normal; 31 | font-family: $font-family-logo; 32 | } 33 | 34 | .site-subtitle { 35 | margin-top: 10px; 36 | font-size: $subtitle-font-size; 37 | color: $subtitle-color; 38 | } 39 | 40 | .use-motion { 41 | .brand { opacity: 0; } 42 | 43 | .logo, .site-title, .site-subtitle { 44 | opacity: 0; 45 | position: relative; 46 | top: -10px; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-meta.styl: -------------------------------------------------------------------------------- 1 | .posts-expand .post-meta { 2 | margin: 3px 0 60px 0; 3 | color: $grey-dark; 4 | font-family: $font-family-posts; 5 | font-size: 12px; 6 | text-align: center; 7 | 8 | .post-category-list { 9 | display: inline-block; 10 | margin: 0; 11 | padding: 3px; 12 | } 13 | .post-category-list-link { color: $grey-dark; } 14 | 15 | .post-description { 16 | font-size: 14px; 17 | margin-top: 2px; 18 | } 19 | } 20 | 21 | .post-wordcount { 22 | if !hexo-config('post_wordcount.separated_meta') { display: inline-block; } 23 | } 24 | 25 | .post-meta-divider { 26 | margin: 0 .5em; 27 | } 28 | 29 | .post-meta-item-icon { 30 | margin-right: 3px; 31 | +tablet() { 32 | display: inline-block; 33 | } 34 | +mobile() { 35 | display: inline-block; 36 | } 37 | } 38 | .post-meta-item-text { 39 | +tablet() { 40 | display: none; 41 | } 42 | +mobile() { 43 | display: none; 44 | } 45 | } 46 | 47 | .posts-expand .post-comments-count { 48 | +mobile() { display: none; } 49 | } 50 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-nav.styl: -------------------------------------------------------------------------------- 1 | .post-nav { 2 | display: table; 3 | margin-top: 15px; 4 | width: 100%; 5 | border-top: 1px solid $gainsboro; 6 | } 7 | 8 | .post-nav-divider { 9 | display: table-cell; 10 | width: 10%; 11 | } 12 | 13 | .post-nav-item { 14 | display: table-cell; 15 | padding: 10px 0 0 0; 16 | width: 45%; 17 | vertical-align: top; 18 | 19 | a { 20 | position: relative; 21 | display: block; 22 | line-height: 25px; 23 | font-size: 14px; 24 | color: $link-color; 25 | border-bottom: none; 26 | 27 | &:hover { 28 | color: $link-hover-color; 29 | border-bottom: none; 30 | } 31 | 32 | &:active { top: 2px; } 33 | } 34 | 35 | .fa { 36 | position: absolute; 37 | top: 8px; 38 | left: 0; 39 | font-size: 12px; 40 | } 41 | 42 | } 43 | 44 | .post-nav-next { 45 | a { padding-left: 15px; } 46 | } 47 | 48 | .post-nav-prev { 49 | text-align: right; 50 | 51 | a { padding-right: 15px; } 52 | 53 | .fa { 54 | right: 0; 55 | left: auto; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /themes/next/source/css/main.styl: -------------------------------------------------------------------------------- 1 | // CSS Style Guide: http://codeguide.co/#css 2 | 3 | 4 | 5 | $scheme = hexo-config('scheme') ? hexo-config('scheme') : 'Muse'; 6 | $variables = base $scheme custom; 7 | $mixins = base $scheme custom; 8 | 9 | 10 | 11 | // Variables Layer 12 | // -------------------------------------------------- 13 | for $variable in $variables 14 | @import "_variables/" + $variable 15 | 16 | 17 | // Mixins Layer 18 | // -------------------------------------------------- 19 | for $mixin in $mixins 20 | @import "_mixins/" + $mixin; 21 | 22 | 23 | 24 | // Common Layer 25 | // -------------------------------------------------- 26 | 27 | // Scaffolding 28 | @import "_common/scaffolding"; 29 | 30 | // Layout 31 | @import "_common/outline"; 32 | 33 | // Components 34 | @import "_common/components"; 35 | 36 | 37 | // Schemes Layer 38 | // -------------------------------------------------- 39 | @import "_schemes/" + $scheme; 40 | 41 | 42 | 43 | // Custom Layer 44 | // -------------------------------------------------- 45 | @import "_custom/custom"; 46 | -------------------------------------------------------------------------------- /themes/next/layout/tag.swig: -------------------------------------------------------------------------------- 1 | {% extends '_layout.swig' %} 2 | {% import '_macro/post-collapse.swig' as post_template %} 3 | {% import '_macro/sidebar.swig' as sidebar_template %} 4 | 5 | {% block title %}{{ __('title.tag') }}: {{ page.tag }} | {{ config.title }}{% endblock %} 6 | 7 | {% block content %} 8 | 9 | {#################} 10 | {### TAG BLOCK ###} 11 | {#################} 12 |
13 | 14 |
15 |
16 | <{% if theme.seo %}h2{% else %}h1{% endif %}>{# 17 | #}{{ page.tag }}{# 18 | #}{{ __('title.tag') }} 19 | 20 |
21 | 22 | {% for post in page.posts %} 23 | {{ post_template.render(post) }} 24 | {% endfor %} 25 |
26 | 27 |
28 | {#####################} 29 | {### END TAG BLOCK ###} 30 | {#####################} 31 | 32 | {% include '_partials/pagination.swig' %} 33 | {% endblock %} 34 | 35 | {% block sidebar %} 36 | {{ sidebar_template.render(false) }} 37 | {% endblock %} 38 | -------------------------------------------------------------------------------- /themes/next/source/images/logo.svg: -------------------------------------------------------------------------------- 1 | 2 | image/svg+xml 24 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/analytics/application-insights.swig: -------------------------------------------------------------------------------- 1 | {% if theme.application_insights %} 2 | 11 | {% endif %} -------------------------------------------------------------------------------- /themes/next/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2014-2017 iissnan 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 | -------------------------------------------------------------------------------- /themes/next/layout/post.swig: -------------------------------------------------------------------------------- 1 | {% extends '_layout.swig' %} 2 | {% import '_macro/post.swig' as post_template %} 3 | {% import '_macro/sidebar.swig' as sidebar_template %} 4 | 5 | 6 | {% block title %}{{ page.title }} | {{ config.title }}{% endblock %} 7 | 8 | {% block page_class %}page-post-detail{% endblock %} 9 | 10 | 11 | {% block content %} 12 | 13 |
14 | {{ post_template.render(page) }} 15 | 16 |
17 | {% if theme.jiathis %} 18 | {% include '_partials/share/jiathis.swig' %} 19 | {% elseif theme.baidushare %} 20 | {% include '_partials/share/baidushare.swig' %} 21 | {% elseif theme.add_this_id %} 22 | {% include '_partials/share/add-this.swig' %} 23 | {% elseif theme.duoshuo_shortname and theme.duoshuo_share %} 24 | {% include '_partials/share/duoshuo_share.swig' %} 25 | {% endif %} 26 |
27 |
28 | 29 | {% endblock %} 30 | 31 | {% block sidebar %} 32 | {{ sidebar_template.render(true) }} 33 | {% endblock %} 34 | 35 | {% block script_extra %} 36 | {% include '_scripts/pages/post-details.swig' %} 37 | {% endblock %} 38 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/archive.ejs: -------------------------------------------------------------------------------- 1 | <% if (pagination == 2){ %> 2 | <% page.posts.each(function(post){ %> 3 | <%- partial('article', {post: post, index: true}) %> 4 | <% }) %> 5 | <% } else { %> 6 | <% var last; %> 7 | <% page.posts.each(function(post, i){ %> 8 | <% var year = post.date.year(); %> 9 | <% if (last != year){ %> 10 | <% if (last != null){ %> 11 | 12 | <% } %> 13 | <% last = year; %> 14 |
15 |
16 | <%= year %> 17 |
18 |
19 | <% } %> 20 | <%- partial('archive-post', {post: post, even: i % 2 == 0}) %> 21 | <% }) %> 22 | <% if (page.posts.length){ %> 23 |
24 | <% } %> 25 | <% } %> 26 | <% if (page.total > 1){ %> 27 | 34 | <% } %> 35 | -------------------------------------------------------------------------------- /themes/next/source/lib/fastclick/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 The Financial Times Ltd. 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /themes/next/layout/category.swig: -------------------------------------------------------------------------------- 1 | {% extends '_layout.swig' %} 2 | {% import '_macro/post-collapse.swig' as post_template %} 3 | {% import '_macro/sidebar.swig' as sidebar_template %} 4 | 5 | {% block title %}{{ __('title.category') }}: {{ page.category }} | {{ config.title }}{% endblock %} 6 | 7 | {% block content %} 8 | 9 | {######################} 10 | {### CATEGORY BLOCK ###} 11 | {######################} 12 |
13 | 14 |
15 |
16 | <{% if theme.seo %}h2{% else %}h1{% endif %}>{# 17 | #}{{ page.category }}{# 18 | #}{{ __('title.category') }} 19 | 20 |
21 | 22 | {% for post in page.posts %} 23 | {{ post_template.render(post) }} 24 | {% endfor %} 25 |
26 | 27 |
28 | {##########################} 29 | {### END CATEGORY BLOCK ###} 30 | {##########################} 31 | 32 | {% include '_partials/pagination.swig' %} 33 | 34 | {% endblock %} 35 | 36 | {% block sidebar %} 37 | {{ sidebar_template.render(false) }} 38 | {% endblock %} 39 | -------------------------------------------------------------------------------- /themes/next/source/lib/velocity/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "velocity", 3 | "version": "1.2.2", 4 | "homepage": "http://velocityjs.org", 5 | "authors": [ 6 | { 7 | "name": "Julian Shapiro", 8 | "homepage": "http://julian.com/" 9 | } 10 | ], 11 | "description": "Accelerated JavaScript animation.", 12 | "main": [ 13 | "./velocity.js", 14 | "./velocity.ui.js" 15 | ], 16 | "keywords": [ 17 | "animation", 18 | "jquery", 19 | "animate", 20 | "lightweight", 21 | "smooth", 22 | "ui", 23 | "velocity.js", 24 | "velocityjs", 25 | "javascript" 26 | ], 27 | "license": "MIT", 28 | "ignore": [ 29 | "*.json", 30 | "!/bower.json", 31 | "LICENSE", 32 | "*.md" 33 | ], 34 | "dependencies": { 35 | "jquery": "*" 36 | }, 37 | "repository": { 38 | "type": "git", 39 | "url": "http://github.com/julianshapiro/velocity.git" 40 | }, 41 | "_release": "1.2.2", 42 | "_resolution": { 43 | "type": "version", 44 | "tag": "1.2.2", 45 | "commit": "6b227928631aab5694255df3c219736c4c02449d" 46 | }, 47 | "_source": "git://github.com/julianshapiro/velocity.git", 48 | "_target": "~1.2.1", 49 | "_originalSource": "velocity" 50 | } -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/hypercomments.swig: -------------------------------------------------------------------------------- 1 | {% if not (theme.duoshuo and theme.duoshuo.shortname) and not theme.duoshuo_shortname and not theme.disqus_shortname %} 2 | 3 | {% if theme.hypercomments_id %} 4 | 5 | 24 | 25 | {% endif %} 26 | 27 | {% endif %} 28 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/header.ejs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /themes/next/scripts/merge-configs.js: -------------------------------------------------------------------------------- 1 | /* global hexo */ 2 | 3 | var merge = require('./merge'); 4 | 5 | /** 6 | * Merge configs in _data/next.yml into hexo.theme.config. 7 | * Note: configs in _data/next.yml will override configs in hexo.theme.config. 8 | */ 9 | hexo.on('generateBefore', function () { 10 | if (hexo.locals.get) { 11 | var data = hexo.locals.get('data'); 12 | if ( data && data.next ) { 13 | if ( data.next.override ) { 14 | hexo.theme.config = data.next; 15 | } else { 16 | merge(hexo.theme.config, data.next); 17 | } 18 | } 19 | } 20 | }); 21 | 22 | hexo.on('generateAfter', function () { 23 | hexo.log.warn("==============================================================="); 24 | hexo.log.warn("========================= ATTENTION! =========================="); 25 | hexo.log.warn("==============================================================="); 26 | hexo.log.warn(" NexT repository is moving here: https://github.com/theme-next "); 27 | hexo.log.warn("==============================================================="); 28 | hexo.log.warn(" It's rebase to v6.0.0 and future maintenance will resume there"); 29 | hexo.log.warn("==============================================================="); 30 | }); 31 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/_header.styl: -------------------------------------------------------------------------------- 1 | // Header 2 | // -------------------------------------------------- 3 | .header { background: $whitesmoke; } 4 | .header-inner { 5 | padding: 25px 0 20px; 6 | clearfix(); 7 | 8 | +mobile() { 9 | width: auto; 10 | margin-bottom: 50px; 11 | padding: 10px; 12 | } 13 | } 14 | 15 | .site-meta { 16 | float: left; 17 | margin-left: -20px; 18 | line-height: normal; 19 | 20 | +mobile() { 21 | margin-left: 10px; 22 | } 23 | 24 | .brand { 25 | padding: 2px 1px; 26 | background: none; 27 | 28 | +mobile() { display: block; } 29 | } 30 | 31 | .logo { display: none; } 32 | 33 | .site-title { 34 | font-size: 22px; 35 | font-weight: bolder; 36 | 37 | +mobile() { line-height: 34px; } 38 | } 39 | } 40 | 41 | 42 | .logo-line-before, 43 | .logo-line-after { 44 | display: block; 45 | overflow: hidden; 46 | margin: 0 auto; 47 | width: 75%; 48 | 49 | +mobile() { display: none; } 50 | 51 | i { 52 | position: relative; 53 | display: block; 54 | height: 2px; 55 | background: $black-deep; 56 | +mobile() { height: 3px; } 57 | } 58 | } 59 | 60 | .use-motion { 61 | .logo-line-before i { left: -100%; } 62 | .logo-line-after i { right: -100%; } 63 | } 64 | -------------------------------------------------------------------------------- /themes/next/.stylintrc: -------------------------------------------------------------------------------- 1 | { 2 | "blocks": false, 3 | "brackets": "always", 4 | "colons": "always", 5 | "colors": "always", 6 | "commaSpace": "always", 7 | "commentSpace": "always", 8 | "cssLiteral": "never", 9 | "customProperties": [], 10 | "depthLimit": false, 11 | "duplicates": true, 12 | "efficient": "always", 13 | "exclude": [], 14 | "extendPref": false, 15 | "globalDupe": false, 16 | "groupOutputByFile": true, 17 | "indentPref": false, 18 | "leadingZero": "never", 19 | "maxErrors": false, 20 | "maxWarnings": false, 21 | "mixed": false, 22 | "mixins": [], 23 | "namingConvention": "lowercase-dash", 24 | "namingConventionStrict": false, 25 | "none": "never", 26 | "noImportant": true, 27 | "parenSpace": false, 28 | "placeholders": "always", 29 | "prefixVarsWithDollar": "always", 30 | "quotePref": false, 31 | "reporterOptions": { 32 | "columns": ["lineData", "severity", "description", "rule"], 33 | "columnSplitter": " ", 34 | "showHeaders": false, 35 | "truncate": true 36 | }, 37 | "semicolons": "always", 38 | "sortOrder": "grouped", 39 | "stackedProperties": false, 40 | "trailingWhitespace": "never", 41 | "universal": false, 42 | "valid": true, 43 | "zeroUnits": "never", 44 | "zIndexNormalize": false 45 | } 46 | -------------------------------------------------------------------------------- /themes/next/.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | THIS REPO IS NOT SUPPORTED ANYMORE! 2 | DON'T NEED CREATE ISSUE HERE! 3 | NEXT MOVED HERE: https://github.com/theme-next/hexo-theme-next 4 | 5 | NexT is rebased into organization repo https://github.com/theme-next 6 | If you want new feature, fix, or support, create new issue in NexT v6.x repo (desirable in English). 7 | 8 | There is instructions 9 | on English: https://github.com/theme-next/hexo-theme-next/blob/master/docs/UPDATE-FROM-5.1.X.md 10 | or Chinese: https://github.com/theme-next/hexo-theme-next/blob/master/docs/zh-CN/UPDATE-FROM-5.1.X.md 11 | how to update from v5.1.x to v 6.x 12 | 13 | You also may read this for details: https://github.com/iissnan/hexo-theme-next/issues/2061 14 | 15 | *** 16 | 17 | 该工程已不再提供任何支持与维护! 18 | 请大家不要再在这里创建issue了! 19 | NexT主题仓库已移动到此处: https://github.com/theme-next/hexo-theme-next 20 | 21 | NexT已经rebase到theme-next组织(https://github.com/theme-next) 的repo中. 22 | 如果你想要求新的特性,bug修复或其他支持,请在新的v6.x的仓库下创建新issue(最好用英文,谢谢) 23 | 24 | 25 | 英文文档: (https://github.com/theme-next/hexo-theme-next/blob/master/docs/UPDATE-FROM-5.1.X.md) 26 | 或中文文档: (https://github.com/theme-next/hexo-theme-next/blob/master/docs/zh-CN/UPDATE-FROM-5.1.X.md) 27 | 如何从 v5.1.x 更新到 v 6.x 28 | 29 | 相关细节参考这里: https://github.com/iissnan/hexo-theme-next/issues/2061 30 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-expand.styl: -------------------------------------------------------------------------------- 1 | // TODO: Refactor. 2 | 3 | .posts-expand { 4 | padding-top: 40px; 5 | } 6 | 7 | @media (max-width: 767px) { 8 | .posts-expand { 9 | margin: 0 20px; 10 | } 11 | 12 | .post-body { 13 | pre { 14 | .gutter pre { 15 | padding-right: 10px; 16 | } 17 | } 18 | 19 | .highlight { 20 | margin-left: 0px; 21 | margin-right: 0px; 22 | padding: 0; 23 | .gutter pre { 24 | padding-right: 10px; 25 | } 26 | } 27 | } 28 | } 29 | 30 | .posts-expand .post-body { 31 | +desktop() { text-align: justify; } 32 | 33 | 34 | h2, h3, h4, h5, h6 { 35 | padding-top: 10px; 36 | 37 | .header-anchor{ 38 | float: right; 39 | margin-left: 10px; 40 | color: $grey-light; 41 | border-bottom-style: none; 42 | visibility: hidden; 43 | 44 | &:hover{ 45 | color: inherit; 46 | } 47 | } 48 | 49 | &:hover .header-anchor{ 50 | visibility: visible; 51 | } 52 | } 53 | 54 | ul li { list-style: circle; } 55 | 56 | img { 57 | box-sizing: border-box; 58 | margin: auto; 59 | padding: 3px; 60 | border: 1px solid $gray-lighter; 61 | } 62 | } 63 | 64 | .posts-expand .post-body .fancybox img { margin: 0 auto 25px; } 65 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar.styl: -------------------------------------------------------------------------------- 1 | .sidebar { 2 | position: fixed; 3 | right: 0; 4 | top: 0; 5 | bottom: 0; 6 | 7 | width: 0; 8 | z-index: $zindex-4; 9 | box-shadow: inset 0 2px 6px black; 10 | background: $black-deep; 11 | -webkit-transform: translateZ(0); // http://stackoverflow.com/questions/17079857/position-fixed-broken-in-chrome-with-flash-behind 12 | 13 | a { 14 | color: $grey-dark; 15 | border-bottom-color: $black-light; 16 | &:hover { color: $gainsboro; } 17 | } 18 | 19 | +tablet() { 20 | hide() if not hexo-config('sidebar.onmobile'); 21 | } 22 | +mobile() { 23 | hide() if not hexo-config('sidebar.onmobile'); 24 | } 25 | 26 | } 27 | 28 | .sidebar-inner { 29 | position: relative; 30 | padding: 20px 10px; 31 | color: $grey-dark; 32 | text-align: center; 33 | } 34 | 35 | .site-overview-wrap { 36 | overflow: hidden; 37 | } 38 | 39 | .site-overview { 40 | overflow-y: auto; 41 | overflow-x: hidden; 42 | } 43 | 44 | @import "sidebar-toggle"; 45 | @import "sidebar-author"; 46 | @import "site-state"; 47 | @import "sidebar-feed-link"; 48 | @import "sidebar-author-links"; 49 | @import "sidebar-blogroll"; 50 | @import "sidebar-nav"; 51 | @import "sidebar-toc"; 52 | @import "sidebar-dimmer" if hexo-config('sidebar.onmobile'); 53 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Pisces/_menu.styl: -------------------------------------------------------------------------------- 1 | .site-nav { 2 | border-top: none; 3 | 4 | +tablet() { 5 | display: none !important; 6 | } 7 | } 8 | 9 | .site-nav-on { 10 | +tablet() { 11 | display: block !important; 12 | } 13 | } 14 | 15 | .menu .menu-item { 16 | display: block; 17 | margin: 0; 18 | 19 | a { 20 | position: relative; 21 | box-sizing: border-box; 22 | padding: 5px 20px; 23 | text-align: left; 24 | line-height: inherit; 25 | transition-property: background-color; 26 | the-transition(); 27 | 28 | &:hover { 29 | background: #f9f9f9; 30 | border-bottom-color: white; 31 | } 32 | } 33 | 34 | br { display: none; } 35 | } 36 | 37 | .menu-item-active a { 38 | @extend .menu .menu-item a:hover; 39 | 40 | &:after { 41 | content: " "; 42 | position: absolute; 43 | top: 50%; 44 | margin-top: -3px; 45 | right: 15px; 46 | width: 6px; 47 | height: 6px; 48 | border-radius: 50%; 49 | background-color: $grey; 50 | } 51 | } 52 | 53 | .btn-bar { 54 | background-color: white; 55 | } 56 | 57 | .site-nav-toggle { 58 | left: 20px; 59 | top: 50%; 60 | 61 | -webkit-transform: translateY(-50%); 62 | transform: translateY(-50%); 63 | 64 | +tablet() { 65 | display: block; 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/needsharebutton.swig: -------------------------------------------------------------------------------- 1 | {% if theme.needmoreshare2.enable %} 2 | {% set needmoreshare2_css = url_for(theme.vendors._internal + '/needsharebutton/needsharebutton.css') %} 3 | {% if theme.vendors.needmoreshare2 %} 4 | {% set needmoreshare2_css = theme.vendors.needmoreshare2_css %} 5 | {% endif %} 6 | 7 | 8 | {% set needmoreshare2_js = url_for(theme.vendors._internal + '/needsharebutton/needsharebutton.js') %} 9 | {% if theme.vendors.needmoreshare2_js %} 10 | {% set needmoreshare2_js = theme.vendors.needmoreshare2_js %} 11 | {% endif %} 12 | 13 | 14 | 30 | {% endif %} -------------------------------------------------------------------------------- /themes/next/layout/_macro/reward.swig: -------------------------------------------------------------------------------- 1 |
2 |
{{ theme.reward_comment }}
3 | 6 | 30 |
31 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_extend.styl: -------------------------------------------------------------------------------- 1 | $block-caption 2 | text-decoration: none 3 | text-transform: uppercase 4 | letter-spacing: 2px 5 | color: color-grey 6 | margin-bottom: 1em 7 | margin-left: 5px 8 | line-height: 1em 9 | text-shadow: 0 1px #fff 10 | font-weight: bold 11 | 12 | $block 13 | background: #fff 14 | box-shadow: 1px 2px 3px #ddd 15 | border: 1px solid color-border 16 | border-radius: 3px 17 | 18 | $base-style 19 | h1 20 | font-size: 2em 21 | h2 22 | font-size: 1.5em 23 | h3 24 | font-size: 1.3em 25 | h4 26 | font-size: 1.2em 27 | h5 28 | font-size: 1em 29 | h6 30 | font-size: 1em 31 | color: color-grey 32 | hr 33 | border: 1px dashed color-border 34 | strong 35 | font-weight: bold 36 | em, cite 37 | font-style: italic 38 | sup, sub 39 | font-size: 0.75em 40 | line-height: 0 41 | position: relative 42 | vertical-align: baseline 43 | sup 44 | top: -0.5em 45 | sub 46 | bottom: -0.2em 47 | small 48 | font-size: 0.85em 49 | acronym, abbr 50 | border-bottom: 1px dotted 51 | ul, ol, dl 52 | margin: 0 20px 53 | line-height: line-height 54 | ul, ol 55 | ul, ol 56 | margin-top: 0 57 | margin-bottom: 0 58 | ul 59 | list-style: disc 60 | ol 61 | list-style: decimal 62 | dt 63 | font-weight: bold -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/head.ejs: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | <%- partial('google-analytics') %> 6 | <% 7 | var title = page.title; 8 | 9 | if (is_archive()){ 10 | title = __('archive_a'); 11 | 12 | if (is_month()){ 13 | title += ': ' + page.year + '/' + page.month; 14 | } else if (is_year()){ 15 | title += ': ' + page.year; 16 | } 17 | } else if (is_category()){ 18 | title = __('category') + ': ' + page.category; 19 | } else if (is_tag()){ 20 | title = __('tag') + ': ' + page.tag; 21 | } 22 | %> 23 | <% if (title){ %><%= title %> | <% } %><%= config.title %> 24 | 25 | <%- open_graph({twitter_id: theme.twitter, google_plus: theme.google_plus, fb_admins: theme.fb_admins, fb_app_id: theme.fb_app_id}) %> 26 | <% if (theme.rss){ %> 27 | 28 | <% } %> 29 | <% if (theme.favicon){ %> 30 | 31 | <% } %> 32 | <% if (config.highlight.enable){ %> 33 | 34 | <% } %> 35 | <%- css('css/style') %> 36 | 37 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_util/grid.styl: -------------------------------------------------------------------------------- 1 | ///////////////// 2 | // Semantic.gs // for Stylus: http://learnboost.github.com/stylus/ 3 | ///////////////// 4 | 5 | // Utility function — you should never need to modify this 6 | // _gridsystem-width = (column-width + gutter-width) * columns 7 | gridsystem-width(_columns = columns) 8 | (column-width + gutter-width) * _columns 9 | 10 | // Set @total-width to 100% for a fluid layout 11 | // total-width = gridsystem-width(columns) 12 | total-width = 100% 13 | 14 | ////////// 15 | // GRID // 16 | ////////// 17 | 18 | body 19 | clearfix() 20 | width: 100% 21 | 22 | row(_columns = columns) 23 | clearfix() 24 | display: block 25 | width: total-width * ((gutter-width + gridsystem-width(_columns)) / gridsystem-width(_columns)) 26 | margin: 0 total-width * (((gutter-width * .5) / gridsystem-width(_columns)) * -1) 27 | 28 | column(x, _columns = columns) 29 | display: inline 30 | float: left 31 | width: total-width * ((((gutter-width + column-width) * x) - gutter-width) / gridsystem-width(_columns)) 32 | margin: 0 total-width * ((gutter-width * .5) / gridsystem-width(_columns)) 33 | 34 | push(offset = 1) 35 | margin-left: total-width * (((gutter-width + column-width) * offset) / gridsystem-width(columns)) 36 | 37 | pull(offset = 1) 38 | margin-right: total-width * (((gutter-width + column-width) * offset) / gridsystem-width(columns)) -------------------------------------------------------------------------------- /themes/landscape/Gruntfile.js: -------------------------------------------------------------------------------- 1 | module.exports = function(grunt){ 2 | grunt.initConfig({ 3 | gitclone: { 4 | fontawesome: { 5 | options: { 6 | repository: 'https://github.com/FortAwesome/Font-Awesome.git', 7 | directory: 'tmp/fontawesome' 8 | }, 9 | }, 10 | fancybox: { 11 | options: { 12 | repository: 'https://github.com/fancyapps/fancyBox.git', 13 | directory: 'tmp/fancybox' 14 | } 15 | } 16 | }, 17 | copy: { 18 | fontawesome: { 19 | expand: true, 20 | cwd: 'tmp/fontawesome/fonts/', 21 | src: ['**'], 22 | dest: 'source/css/fonts/' 23 | }, 24 | fancybox: { 25 | expand: true, 26 | cwd: 'tmp/fancybox/source/', 27 | src: ['**'], 28 | dest: 'source/fancybox/' 29 | } 30 | }, 31 | _clean: { 32 | tmp: ['tmp'], 33 | fontawesome: ['source/css/fonts'], 34 | fancybox: ['source/fancybox'] 35 | } 36 | }); 37 | 38 | require('load-grunt-tasks')(grunt); 39 | 40 | grunt.renameTask('clean', '_clean'); 41 | 42 | grunt.registerTask('fontawesome', ['gitclone:fontawesome', 'copy:fontawesome', '_clean:tmp']); 43 | grunt.registerTask('fancybox', ['gitclone:fancybox', 'copy:fancybox', '_clean:tmp']); 44 | grunt.registerTask('default', ['gitclone', 'copy', '_clean:tmp']); 45 | grunt.registerTask('clean', ['_clean']); 46 | }; -------------------------------------------------------------------------------- /themes/next/source/css/_common/outline/outline.styl: -------------------------------------------------------------------------------- 1 | // 2 | // Layout 3 | // Note: Must name this file "outline" instead of "layout" 4 | // Or Hexo will use it as template layout. 5 | // ================================================= 6 | 7 | 8 | html, body { height: 100%; } 9 | 10 | .container { 11 | position: relative; 12 | min-height: 100%; 13 | } 14 | 15 | 16 | // Header Section 17 | // -------------------------------------------------- 18 | .header-inner { 19 | margin: 0 auto; 20 | padding: 100px 0 70px; 21 | width: $content-desktop; 22 | 23 | +desktop-large() { 24 | .container & { width: $content-desktop-large; } 25 | } 26 | } 27 | 28 | // Main Section 29 | // -------------------------------------------------- 30 | .main { padding-bottom: $footer-height + $gap-between-main-and-footer; } 31 | .main-inner { 32 | margin: 0 auto; 33 | width: $content-desktop; 34 | 35 | +desktop-large() { 36 | .container & { width: $content-desktop-large; } 37 | } 38 | } 39 | 40 | 41 | // Footer Section 42 | // -------------------------------------------------- 43 | .footer { 44 | position: absolute; 45 | left: 0; 46 | bottom: 0; 47 | width: 100%; 48 | min-height: $footer-height; 49 | } 50 | .footer-inner { 51 | box-sizing: border-box; 52 | margin: 20px auto; 53 | width: $content-desktop; 54 | 55 | +desktop-large() { 56 | .container & { width: $content-desktop-large; } 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /themes/next/layout/_macro/post-collapse.swig: -------------------------------------------------------------------------------- 1 | {% macro render(post) %} 2 | 3 | 33 | 34 | {% endmacro %} 35 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/pagination.styl: -------------------------------------------------------------------------------- 1 | .pagination { 2 | margin: 120px 0 40px; 3 | text-align: center; 4 | border-top: 1px solid $pagination-border; 5 | } 6 | 7 | .page-number-basic { 8 | display: inline-block; 9 | position: relative; 10 | top: -1px; 11 | margin: 0 10px; 12 | padding: 0 11px; 13 | 14 | +mobile() { margin: 0 5px; } 15 | } 16 | 17 | .pagination { 18 | .prev, .next, .page-number { 19 | @extend .page-number-basic; 20 | border-bottom: 0; 21 | border-top: 1px solid $pagination-link-border; 22 | transition-property: border-color; 23 | the-transition(); 24 | 25 | &:hover { border-top-color: $pagination-link-hover-border; } 26 | } 27 | 28 | .space { 29 | @extend .page-number-basic; 30 | padding: 0; 31 | margin: 0; 32 | } 33 | 34 | .prev { margin-left: 0; } 35 | .next { margin-right: 0; } 36 | 37 | .page-number.current { 38 | color: $pagination-active-color; 39 | background: $pagination-active-bg; 40 | border-top-color: $pagination-active-border; 41 | } 42 | } 43 | 44 | @media (max-width: 767px) 45 | .pagination { border-top: none; } 46 | 47 | .pagination { 48 | .prev, .next, .page-number { 49 | margin-bottom: 10px; 50 | border-top: 0; 51 | border-bottom: 1px solid $pagination-link-border; 52 | padding: 0 10px; 53 | 54 | &:hover { border-bottom-color: $pagination-link-hover-border; } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/sidebar/sidebar-toc.styl: -------------------------------------------------------------------------------- 1 | 2 | .post-toc-empty { 3 | font-size: 14px; 4 | color: $grey-dim; 5 | } 6 | 7 | .post-toc-wrap { overflow: hidden; } 8 | 9 | .post-toc { overflow: auto; } 10 | 11 | .post-toc ol { 12 | margin: 0; 13 | padding: 0 2px 5px 10px; 14 | text-align: left; 15 | list-style: none; 16 | font-size: 14px; 17 | 18 | & > ol { padding-left: 0; } 19 | 20 | a { 21 | the-transition(); 22 | transition-property: all; 23 | color: $toc-link-color; 24 | border-bottom-color: $toc-link-border-color; 25 | 26 | &:hover { 27 | color: $toc-link-hover-color; 28 | border-bottom-color: $toc-link-hover-border-color; 29 | } 30 | } 31 | } 32 | 33 | .post-toc .nav-item { 34 | overflow: hidden; 35 | text-overflow: ellipsis; 36 | text-align: justify; 37 | white-space: nowrap if !hexo-config('toc.wrap'); 38 | line-height: 1.8; 39 | } 40 | 41 | .post-toc .nav .nav-child { display: none; } 42 | 43 | .post-toc .nav .active > .nav-child { display: block; } 44 | 45 | .post-toc .nav .active-current > .nav-child { 46 | display: block; 47 | & > .nav-item { display: block; } 48 | } 49 | 50 | .post-toc .nav .active > a { 51 | color: $toc-link-active-color; 52 | border-bottom-color: $toc-link-active-border-color; 53 | } 54 | 55 | .post-toc .nav .active-current > a { 56 | color: $toc-link-active-current-color; 57 | &:hover { 58 | color: $toc-link-active-current-border-color; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/scaffolding/helpers.styl: -------------------------------------------------------------------------------- 1 | // 2 | // Helpers 3 | // ================================================= 4 | 5 | 6 | 7 | // Alignment 8 | .text-left { text-align: left; } 9 | .text-center { text-align: center; } 10 | .text-right { text-align: right; } 11 | .text-justify { text-align: justify; } 12 | .text-nowrap { white-space: nowrap; } 13 | 14 | 15 | // Transformation 16 | .text-lowercase { text-transform: lowercase; } 17 | .text-uppercase { text-transform: uppercase; } 18 | .text-capitalize { text-transform: capitalize; } 19 | 20 | 21 | // Center-align a block level element. 22 | .center-block { 23 | display: block; 24 | margin-left: auto; 25 | margin-right: auto; 26 | } 27 | 28 | 29 | // Clearfix. http://nicolasgallagher.com/micro-clearfix-hack/ 30 | .clearfix { 31 | clearfix(); 32 | } 33 | 34 | .pullquote { 35 | width: 45%; 36 | 37 | &.left { 38 | float: left; 39 | margin-left: 5px; 40 | margin-right: 10px; 41 | } 42 | 43 | &.right { 44 | float: right; 45 | margin-left: 10px; 46 | margin-right: 5px; 47 | } 48 | } 49 | 50 | .affix.affix.affix { position: fixed; } 51 | 52 | .translation { 53 | margin-top: -20px; 54 | font-size: 14px; 55 | color: $grey-dark; 56 | } 57 | 58 | // https://davidwalsh.name/detect-scrollbar-width 59 | .scrollbar-measure { 60 | width: 100px; 61 | height: 100px; 62 | overflow: scroll; 63 | position: absolute; 64 | top: -9999px; 65 | } 66 | 67 | .use-motion .motion-element { opacity: 0; } 68 | -------------------------------------------------------------------------------- /themes/next/gulpfile.coffee: -------------------------------------------------------------------------------- 1 | fs = require('fs') 2 | path = require('path') 3 | gulp = require('gulp') 4 | jshint = require('gulp-jshint') 5 | stylish = require('jshint-stylish') 6 | shell = require('gulp-shell') 7 | yaml = require('js-yaml') 8 | 9 | gulp.task 'lint', -> 10 | return gulp.src([ 11 | './source/js/src/utils.js', 12 | './source/js/src/motion.js', 13 | './source/js/src/hook-duoshuo.js', 14 | './source/js/src/algolia-search.js', 15 | './source/js/src/bootstrap.js', 16 | './source/js/src/post-details.js', 17 | './source/js/src/schemes/pisces.js' 18 | ]).pipe jshint() 19 | .pipe jshint.reporter(stylish) 20 | 21 | gulp.task 'lint:stylus', shell.task [ 22 | '"./node_modules/.bin/stylint" ./source/css/' 23 | ] 24 | 25 | gulp.task 'validate:config', (cb) -> 26 | themeConfig = fs.readFileSync path.join(__dirname, '_config.yml') 27 | 28 | try 29 | yaml.safeLoad(themeConfig) 30 | cb() 31 | catch error 32 | cb new Error(error) 33 | 34 | gulp.task 'validate:languages', (cb) -> 35 | languagesPath = path.join __dirname, 'languages' 36 | languages = fs.readdirSync languagesPath 37 | errors = [] 38 | 39 | for lang in languages 40 | languagePath = path.join languagesPath, lang 41 | try 42 | yaml.safeLoad fs.readFileSync(languagePath), { 43 | filename: path.relative(__dirname, languagePath) 44 | } 45 | catch error 46 | errors.push error 47 | 48 | if errors.length == 0 49 | cb() 50 | else 51 | cb(errors) 52 | 53 | 54 | gulp.task 'default', ['lint', 'validate:config', 'validate:languages'] 55 | -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/changyan.swig: -------------------------------------------------------------------------------- 1 | {% if theme.changyan.enable and theme.changyan.appid and theme.changyan.appkey %} 2 | {% if is_home() %} 3 | 4 | {% else %} 5 | 16 | 17 | {% endif %} 18 | {% endif %} 19 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-corner-indicator.min.css: -------------------------------------------------------------------------------- 1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace .pace-activity{display:block;position:fixed;z-index:2000;top:0;right:0;width:300px;height:300px;background:#29d;-webkit-transition:-webkit-transform .3s;transition:transform .3s;-webkit-transform:translateX(100%) translateY(-100%) rotate(45deg);transform:translateX(100%) translateY(-100%) rotate(45deg);pointer-events:none}.pace.pace-active .pace-activity{-webkit-transform:translateX(50%) translateY(-50%) rotate(45deg);transform:translateX(50%) translateY(-50%) rotate(45deg)}.pace .pace-activity::after,.pace .pace-activity::before{-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;bottom:30px;left:50%;display:block;border:5px solid #fff;border-radius:50%;content:''}.pace .pace-activity::before{margin-left:-40px;width:80px;height:80px;border-right-color:rgba(0,0,0,.2);border-left-color:rgba(0,0,0,.2);-webkit-animation:pace-theme-corner-indicator-spin 3s linear infinite;animation:pace-theme-corner-indicator-spin 3s linear infinite}.pace .pace-activity::after{bottom:50px;margin-left:-20px;width:40px;height:40px;border-top-color:rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.2);-webkit-animation:pace-theme-corner-indicator-spin 1s linear infinite;animation:pace-theme-corner-indicator-spin 1s linear infinite}@-webkit-keyframes pace-theme-corner-indicator-spin{0%{-webkit-transform:rotate(0)}100%{-webkit-transform:rotate(359deg)}}@keyframes pace-theme-corner-indicator-spin{0%{transform:rotate(0)}100%{transform:rotate(359deg)}} -------------------------------------------------------------------------------- /themes/next/layout/_third-party/comments/duoshuo.swig: -------------------------------------------------------------------------------- 1 | {% if (theme.duoshuo and theme.duoshuo.shortname) or theme.duoshuo_shortname %} 2 | 3 | {% if theme.duoshuo %} 4 | {% set duoshuo_shortname = theme.duoshuo.shortname %} 5 | {% else %} 6 | {% set duoshuo_shortname = theme.duoshuo_shortname %} 7 | {% endif %} 8 | 9 | 21 | 22 | {% if theme.duoshuo_info.ua_enable %} 23 | {% if theme.duoshuo_info.admin_enable %} 24 | {% set ua_parser_internal = url_for(theme.vendors._internal) + '/ua-parser-js/dist/ua-parser.min.js?v=0.7.9' %} 25 | 26 | 27 | {% endif %} 28 | {% set ua_parser_internal = url_for(theme.vendors._internal) + '/ua-parser-js/dist/ua-parser.min.js?v=0.7.9' %} 29 | 30 | 31 | {% endif %} 32 | 33 | {% endif %} 34 | -------------------------------------------------------------------------------- /themes/next/source/css/_common/components/post/post-reward.styl: -------------------------------------------------------------------------------- 1 | #rewardButton { 2 | cursor: pointer; 3 | border: 0; 4 | outline: 0; 5 | border-radius: 5px; 6 | padding: 0; 7 | margin: 0; 8 | letter-spacing: normal; 9 | text-transform: none; 10 | text-indent: 0px; 11 | text-shadow: none; 12 | } 13 | #rewardButton span { 14 | display: inline-block; 15 | width: 80px; 16 | height: 35px; 17 | border-radius: 5px; 18 | color: #fff; 19 | font-weight: 400; 20 | font-style: normal; 21 | font-variant: normal; 22 | font-stretch: normal; 23 | font-size: 18px; 24 | font-family: "Microsoft Yahei"; 25 | background: #F44336; 26 | } 27 | #rewardButton span:hover{ 28 | background: #F7877F; 29 | } 30 | #QR{ 31 | padding-top:20px; 32 | } 33 | #QR a{ 34 | border:0; 35 | } 36 | #QR img{ 37 | width: 180px; 38 | max-width: 100%; 39 | display: inline-block; 40 | margin: 0.8em 2em 0 2em; 41 | } 42 | #wechat:hover p{ 43 | animation: roll 0.1s infinite linear; 44 | -webkit-animation: roll 0.1s infinite linear; 45 | -moz-animation: roll 0.1s infinite linear; 46 | } 47 | #alipay:hover p{ 48 | animation: roll 0.1s infinite linear; 49 | -webkit-animation: roll 0.1s infinite linear; 50 | -moz-animation: roll 0.1s infinite linear; 51 | } 52 | #bitcoin:hover p { 53 | animation: roll 0.1s infinite linear; 54 | -webkit-animation: roll 0.1s infinite linear; 55 | -moz-animation: roll 0.1s infinite linear; 56 | } 57 | @keyframes roll { 58 | from { 59 | transform(rotateZ(30deg)); 60 | } 61 | to { 62 | transform(rotateZ(-30deg)); 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-flash.min.css: -------------------------------------------------------------------------------- 1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{background:#29d;position:fixed;z-index:2000;top:0;right:100%;width:100%;height:2px}.pace .pace-progress-inner{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;-webkit-transform:rotate(3deg) translate(0,-4px);-moz-transform:rotate(3deg) translate(0,-4px);-ms-transform:rotate(3deg) translate(0,-4px);-o-transform:rotate(3deg) translate(0,-4px);transform:rotate(3deg) translate(0,-4px)}.pace .pace-activity{display:block;position:fixed;z-index:2000;top:15px;right:15px;width:14px;height:14px;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:10px;-webkit-animation:pace-spinner .4s linear infinite;-moz-animation:pace-spinner .4s linear infinite;-ms-animation:pace-spinner .4s linear infinite;-o-animation:pace-spinner .4s linear infinite;animation:pace-spinner .4s linear infinite}@-webkit-keyframes pace-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes pace-spinner{0%{-moz-transform:rotate(0);transform:rotate(0)}100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes pace-spinner{0%{-o-transform:rotate(0);transform:rotate(0)}100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes pace-spinner{0%{-ms-transform:rotate(0);transform:rotate(0)}100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes pace-spinner{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /themes/next/source/lib/canvas-nest/canvas-nest.min.js: -------------------------------------------------------------------------------- 1 | !function(){function o(w,v,i){return w.getAttribute(v)||i}function j(i){return document.getElementsByTagName(i)}function l(){var i=j("script"),w=i.length,v=i[w-1];return{l:w,z:o(v,"zIndex",-1),o:o(v,"opacity",0.5),c:o(v,"color","0,0,0"),n:o(v,"count",99)}}function k(){r=u.width=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,n=u.height=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight}function b(){e.clearRect(0,0,r,n);var w=[f].concat(t);var x,v,A,B,z,y;t.forEach(function(i){i.x+=i.xa,i.y+=i.ya,i.xa*=i.x>r||i.x<0?-1:1,i.ya*=i.y>n||i.y<0?-1:1,e.fillRect(i.x-0.5,i.y-0.5,1,1);for(v=0;v=x.max/2&&(i.x-=0.03*B,i.y-=0.03*z),A=(x.max-y)/x.max,e.beginPath(),e.lineWidth=A/2,e.strokeStyle="rgba("+s.c+","+(A+0.2)+")",e.moveTo(i.x,i.y),e.lineTo(x.x,x.y),e.stroke())}}w.splice(w.indexOf(i),1)}),m(b)}var u=document.createElement("canvas"),s=l(),c="c_n"+s.l,e=u.getContext("2d"),r,n,m=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(i){window.setTimeout(i,1000/45)},a=Math.random,f={x:null,y:null,max:20000};u.id=c;u.style.cssText="position:fixed;top:0;left:0;z-index:"+s.z+";opacity:"+s.o;j("body")[0].appendChild(u);k(),window.onresize=k;window.onmousemove=function(i){i=i||window.event,f.x=i.clientX,f.y=i.clientY},window.onmouseout=function(){f.x=null,f.y=null};for(var t=[],p=0;s.n>p;p++){var h=a()*r,g=a()*n,q=2*a()-1,d=2*a()-1;t.push({x:h,y:g,xa:q,ya:d,max:6000})}setTimeout(function(){b()},100)}(); -------------------------------------------------------------------------------- /themes/next/source/js/src/bootstrap.js: -------------------------------------------------------------------------------- 1 | /* global NexT: true */ 2 | 3 | $(document).ready(function () { 4 | 5 | $(document).trigger('bootstrap:before'); 6 | 7 | NexT.utils.isMobile() && window.FastClick.attach(document.body); 8 | 9 | NexT.utils.lazyLoadPostsImages(); 10 | 11 | NexT.utils.registerESCKeyEvent(); 12 | 13 | NexT.utils.registerBackToTop(); 14 | 15 | // Mobile top menu bar. 16 | $('.site-nav-toggle button').on('click', function () { 17 | var $siteNav = $('.site-nav'); 18 | var ON_CLASS_NAME = 'site-nav-on'; 19 | var isSiteNavOn = $siteNav.hasClass(ON_CLASS_NAME); 20 | var animateAction = isSiteNavOn ? 'slideUp' : 'slideDown'; 21 | var animateCallback = isSiteNavOn ? 'removeClass' : 'addClass'; 22 | 23 | $siteNav.stop()[animateAction]('fast', function () { 24 | $siteNav[animateCallback](ON_CLASS_NAME); 25 | }); 26 | }); 27 | 28 | /** 29 | * Register JS handlers by condition option. 30 | * Need to add config option in Front-End at 'layout/_partials/head.swig' file. 31 | */ 32 | CONFIG.fancybox && NexT.utils.wrapImageWithFancyBox(); 33 | CONFIG.tabs && NexT.utils.registerTabsTag(); 34 | 35 | NexT.utils.embeddedVideoTransformer(); 36 | NexT.utils.addActiveClassToMenuItem(); 37 | 38 | 39 | // Define Motion Sequence. 40 | NexT.motion.integrator 41 | .add(NexT.motion.middleWares.logo) 42 | .add(NexT.motion.middleWares.menu) 43 | .add(NexT.motion.middleWares.postList) 44 | .add(NexT.motion.middleWares.sidebar); 45 | 46 | $(document).trigger('motion:before'); 47 | 48 | // Bootstrap Motion. 49 | CONFIG.motion.enable && NexT.motion.integrator.bootstrap(); 50 | 51 | $(document).trigger('bootstrap:after'); 52 | }); 53 | -------------------------------------------------------------------------------- /themes/next/languages/ja.yml: -------------------------------------------------------------------------------- 1 | title: 2 | archive: アーカイブ 3 | category: カテゴリ 4 | tag: タグ 5 | 6 | author: Author 7 | 8 | menu: 9 | home: ホーム 10 | archives: アーカイブ 11 | categories: カテゴリ 12 | tags: タグ 13 | about: About 14 | search: 検索 15 | 16 | sidebar: 17 | overview: 概要 18 | toc: 見出し 19 | 20 | post: 21 | sticky: 固定 22 | posted: 投稿日 23 | modified: Updated at 24 | in: In 25 | read_more: 続きを読む 26 | untitled: 無題 27 | toc_empty: 見出しがありません 28 | visitors: Visitors 29 | wordcount: Words count in article 30 | min2read: Reading time 31 | totalcount: Site words total count 32 | copyright: 33 | author: Post author 34 | link: Post link 35 | license_title: Copyright Notice 36 | license_content: 'All articles in this blog are licensed under 37 | %s unless stating additionally.' 38 | 39 | page: 40 | totally: 全ページ 41 | tags: タグ 42 | 43 | footer: 44 | powered: "Powered by %s" 45 | theme: Theme 46 | 47 | counter: 48 | tag_cloud: 49 | zero: タグなし 50 | one: "全 1 タグ" 51 | other: "全 %d タグ" 52 | 53 | categories: 54 | zero: カテゴリなし 55 | one: "全 1 カテゴリ" 56 | other: "全 %d カテゴリ" 57 | 58 | archive_posts: 59 | zero: ポストなし 60 | one: "全 1 ポスト" 61 | other: "全 %d ポスト" 62 | 63 | state: 64 | posts: ポスト 65 | pages: ページ 66 | tags: タグ 67 | categories: カテゴリ 68 | 69 | cheers: 70 | um: うーん 71 | ok: OK 72 | nice: まあまあ 73 | good: いいね 74 | great: すごい 75 | excellent: 最高 76 | 77 | keep_on: もっと書こう! 78 | 79 | symbol: 80 | comma: ', ' 81 | period: '. ' 82 | colon: ':' 83 | 84 | reward: 85 | donate: Donate 86 | wechatpay: WeChat Pay 87 | alipay: Alipay 88 | bitcoin: Bitcoin 89 | -------------------------------------------------------------------------------- /themes/next/languages/ko.yml: -------------------------------------------------------------------------------- 1 | title: 2 | archive: 아카이브 3 | category: 카테고리 4 | tag: 태그 5 | 6 | author: 작성자 7 | 8 | menu: 9 | home: 홈 10 | archives: 아카이브 11 | categories: 카테고리 12 | tags: 태그 13 | about: About 14 | search: 검색 15 | 16 | sidebar: 17 | overview: 흝어보기 18 | toc: 목차 19 | 20 | post: 21 | sticky: 고정 22 | posted: 작성일 23 | modified: Updated at 24 | in: In 25 | read_more: 더 읽어보기 26 | untitled: 제목 없음 27 | toc_empty: 목차 없음 28 | visitors: 방문객 29 | wordcount: Words count in article 30 | min2read: Reading time 31 | totalcount: Site words total count 32 | copyright: 33 | author: Post author 34 | link: Post link 35 | license_title: Copyright Notice 36 | license_content: 'All articles in this blog are licensed under 37 | %s unless stating additionally.' 38 | 39 | page: 40 | totally: 모두 41 | tags: 태그 42 | 43 | footer: 44 | powered: "Powered by %s" 45 | theme: Theme 46 | 47 | counter: 48 | tag_cloud: 49 | zero: 태그 없음 50 | one: 1개의 태그 51 | other: "총 %d개의 태그" 52 | 53 | categories: 54 | zero: 카테고리 없음 55 | one: 1개의 카테고리 56 | other: "총 %d개의 카테고리" 57 | 58 | archive_posts: 59 | zero: 포스트 없음 60 | one: 1개의 포스트 61 | other: "총 %d개의 포스트" 62 | 63 | state: 64 | posts: 포스트 65 | pages: 페이지 66 | tags: 태그 67 | categories: 카테고리 68 | 69 | cheers: 70 | um: 음.. 71 | ok: OK 72 | nice: 잘했어요 73 | good: 좋아요 74 | great: 훌륭해요 75 | excellent: 완벽해요 76 | 77 | keep_on: 포스트를 마저 작성하세요 78 | 79 | symbol: 80 | comma: ', ' 81 | period: '. ' 82 | colon: ':' 83 | 84 | reward: 85 | donate: Donate 86 | wechatpay: WeChat Pay 87 | alipay: Alipay 88 | bitcoin: Bitcoin 89 | -------------------------------------------------------------------------------- /themes/next/source/css/_schemes/Mist/_posts-expanded.styl: -------------------------------------------------------------------------------- 1 | // Post Expanded 2 | // -------------------------------------------------- 3 | .posts-expand { 4 | padding-top: 0; 5 | 6 | .post-title, 7 | .post-meta { 8 | text-align: $site-meta-text-align; 9 | +mobile() { text-align: center; } 10 | } 11 | .post-eof { display: none; } 12 | 13 | .post { margin-top: 120px; } 14 | .post:first-child { margin-top: 0; } 15 | 16 | .post-meta { 17 | margin-top: 5px; 18 | margin-bottom: 20px; 19 | } 20 | 21 | .post-title { 22 | position: relative; 23 | font-size: $font-size-headings-base; 24 | font-weight: 400; 25 | +mobile() { font-size: $font-size-headings-small; } 26 | +desktop-large() { font-size: $font-size-headings-large; } 27 | } 28 | .post-title:hover:before { background: $black-deep; } 29 | 30 | .post-body { 31 | +mobile() { font-size: $font-size-small; } 32 | } 33 | 34 | .post-body img { margin: 0; } 35 | 36 | .post-tags { 37 | text-align: left; 38 | a { 39 | padding: 1px 5px; 40 | background: $whitesmoke; 41 | border-bottom: none; 42 | } 43 | a:hover { background: $grey-light; } 44 | } 45 | .post-nav { margin-top: 40px; } 46 | } 47 | 48 | .post-button { 49 | margin-top: 20px; 50 | text-align: left; 51 | 52 | a { 53 | padding: 0; 54 | font-size: $font-size-base; 55 | //color: $grey-dim; 56 | background: none; 57 | border: none; 58 | border-bottom: 2px solid $grey-dim; 59 | transition-property: border; 60 | 61 | +mobile() { font-size: $font-size-small; } 62 | +desktop-large() { font-size: $font-size-large; } 63 | 64 | 65 | &:hover { border-bottom-color: $black-deep; } 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /themes/next/source/lib/pace/pace-theme-center-circle.min.css: -------------------------------------------------------------------------------- 1 | .pace,.pace .pace-progress{z-index:2000;left:0;top:0;height:6rem}.pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-perspective:12rem;-moz-perspective:12rem;-ms-perspective:12rem;-o-perspective:12rem;perspective:12rem;position:fixed;width:6rem;margin:auto;right:0;bottom:0}.pace.pace-inactive .pace-progress{display:none}.pace .pace-progress{display:block;position:absolute;width:6rem!important;line-height:6rem;font-size:2rem;border-radius:50%;background:rgba(34,153,221,.8);color:#fff;font-family:"Helvetica Neue",sans-serif;font-weight:100;text-align:center;-webkit-animation:pace-theme-center-circle-spin linear infinite 2s;-moz-animation:pace-theme-center-circle-spin linear infinite 2s;-ms-animation:pace-theme-center-circle-spin linear infinite 2s;-o-animation:pace-theme-center-circle-spin linear infinite 2s;animation:pace-theme-center-circle-spin linear infinite 2s;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d}.pace .pace-progress:after{content:attr(data-progress-text);display:block}@-webkit-keyframes pace-theme-center-circle-spin{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(360deg)}}@-moz-keyframes pace-theme-center-circle-spin{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(360deg)}}@-ms-keyframes pace-theme-center-circle-spin{from{-ms-transform:rotateY(0)}to{-ms-transform:rotateY(360deg)}}@-o-keyframes pace-theme-center-circle-spin{from{-o-transform:rotateY(0)}to{-o-transform:rotateY(360deg)}}@keyframes pace-theme-center-circle-spin{from{transform:rotateY(0)}to{transform:rotateY(360deg)}} -------------------------------------------------------------------------------- /themes/landscape/source/css/_partial/archive.styl: -------------------------------------------------------------------------------- 1 | .archives-wrap 2 | margin: block-margin 0 3 | 4 | .archives 5 | clearfix() 6 | 7 | .archive-year-wrap 8 | margin-bottom: 1em 9 | 10 | .archive-year 11 | @extend $block-caption 12 | 13 | .archives 14 | column-gap: 10px 15 | @media mq-tablet 16 | column-count: 2 17 | @media mq-normal 18 | column-count: 3 19 | 20 | .archive-article 21 | avoid-column-break() 22 | 23 | .archive-article-inner 24 | @extend $block 25 | padding: 10px 26 | margin-bottom: 15px 27 | 28 | .archive-article-title 29 | text-decoration: none 30 | font-weight: bold 31 | color: color-default 32 | transition: color 0.2s 33 | line-height: line-height 34 | &:hover 35 | color: color-link 36 | 37 | .archive-article-footer 38 | margin-top: 1em 39 | 40 | .archive-article-date 41 | color: color-grey 42 | text-decoration: none 43 | font-size: 0.85em 44 | line-height: 1em 45 | margin-bottom: 0.5em 46 | display: block 47 | 48 | #page-nav 49 | clearfix() 50 | margin: block-margin auto 51 | background: #fff 52 | box-shadow: 1px 2px 3px #ddd 53 | border: 1px solid color-border 54 | border-radius: 3px 55 | text-align: center 56 | color: color-grey 57 | overflow: hidden 58 | a, span 59 | padding: 10px 20px 60 | line-height: 1 61 | height: 2ex 62 | a 63 | color: color-grey 64 | text-decoration: none 65 | &:hover 66 | background: color-grey 67 | color: #fff 68 | .prev 69 | float: left 70 | .next 71 | float: right 72 | .page-number 73 | display: inline-block 74 | @media mq-mobile 75 | display: none 76 | .current 77 | color: color-default 78 | font-weight: bold 79 | .space 80 | color: color-border -------------------------------------------------------------------------------- /themes/next/languages/zh-Hans.yml: -------------------------------------------------------------------------------- 1 | title: 2 | archive: 归档 3 | category: 分类 4 | tag: 标签 5 | schedule: 日程表 6 | 7 | author: 博主 8 | 9 | menu: 10 | home: 首页 11 | archives: 归档 12 | categories: 分类 13 | tags: 标签 14 | about: 关于 15 | search: 搜索 16 | schedule: 日程表 17 | sitemap: 站点地图 18 | commonweal: 公益404 19 | 20 | sidebar: 21 | overview: 站点概览 22 | toc: 文章目录 23 | 24 | post: 25 | created: 创建于 26 | modified: 更新于 27 | sticky: 置顶 28 | posted: 发表于 29 | in: 分类于 30 | read_more: 阅读全文 31 | untitled: 未命名 32 | toc_empty: 此文章未包含目录 33 | visitors: 阅读次数 34 | wordcount: 字数统计 35 | min2read: 阅读时长 36 | totalcount: Site words total count 37 | copyright: 38 | author: 本文作者 39 | link: 本文链接 40 | license_title: 版权声明 41 | license_content: '本博客所有文章除特别声明外,均采用 42 | %s 许可协议。转载请注明出处!' 43 | 44 | page: 45 | totally: 共有 46 | tags: 标签 47 | 48 | footer: 49 | powered: "由 %s 强力驱动" 50 | theme: 主题 51 | 52 | counter: 53 | tag_cloud: 54 | zero: 暂无标签 55 | one: 目前共计 1 个标签 56 | other: "目前共计 %d 个标签" 57 | 58 | categories: 59 | zero: 暂无分类 60 | one: 目前共计 1 个分类 61 | other: "目前共计 %d 个分类" 62 | 63 | archive_posts: 64 | zero: 暂无日志。 65 | one: 目前共计 1 篇日志。 66 | other: "目前共计 %d 篇日志。" 67 | 68 | state: 69 | posts: 日志 70 | pages: 页面 71 | tags: 标签 72 | categories: 分类 73 | 74 | search: 75 | placeholder: 搜索... 76 | 77 | cheers: 78 | um: 嗯.. 79 | ok: OK 80 | nice: 好 81 | good: 很好 82 | great: 非常好 83 | excellent: 太棒了 84 | 85 | keep_on: 继续努力。 86 | 87 | symbol: 88 | comma: ', ' 89 | period: '。 ' 90 | colon: ':' 91 | 92 | reward: 93 | donate: 打赏 94 | wechatpay: 微信支付 95 | alipay: 支付宝 96 | bitcoin: 比特币 97 | 98 | gitmentbutton: 显示 Gitment 评论 99 | -------------------------------------------------------------------------------- /themes/next/source/css/_mixins/base.styl: -------------------------------------------------------------------------------- 1 | the-transition() { 2 | transition-duration: 0.2s; 3 | transition-timing-function: ease-in-out; 4 | transition-delay: 0s; 5 | } 6 | 7 | the-transition-ease-in() { 8 | transition-duration: 0.2s; 9 | transition-timing-function: ease-in; 10 | transition-delay: 0s; 11 | } 12 | 13 | the-transition-ease-out() { 14 | transition-duration: 0.2s; 15 | transition-timing-function: ease-out; 16 | transition-delay: 0s; 17 | } 18 | 19 | mobile-smallest() { 20 | @media (max-width: 413px) { 21 | {block} 22 | } 23 | } 24 | 25 | mobile-small() { 26 | @media (max-width: 567px) { 27 | {block} 28 | } 29 | } 30 | 31 | mobile() { 32 | @media (max-width: 767px) { 33 | {block} 34 | } 35 | } 36 | 37 | tablet() { 38 | @media (min-width: 768px) and (max-width: 991px) { 39 | {block} 40 | } 41 | } 42 | 43 | desktop() { 44 | @media (min-width: 992px) { 45 | {block} 46 | } 47 | } 48 | 49 | desktop-large() { 50 | @media (min-width: 1600px) { 51 | {block} 52 | } 53 | } 54 | 55 | circle() { 56 | border-radius: 50%; 57 | } 58 | 59 | transform() { 60 | -webkit-transform: arguments 61 | -moz-transform: arguments 62 | -ms-transform: arguments 63 | -o-transform: arguments 64 | transform: arguments 65 | } 66 | 67 | hide() { 68 | display: none !important; 69 | } 70 | 71 | show() { 72 | display: block !important; 73 | } 74 | 75 | fixbutton() { 76 | right: 20px; 77 | opacity: 0.8; 78 | } 79 | 80 | random-color($min, $max) { 81 | return floor(math(0, 'random') * ($max - $min + 1) + $min); 82 | } 83 | 84 | // Clearfix. http://nicolasgallagher.com/micro-clearfix-hack/ 85 | clearfix() { 86 | &:before, 87 | &:after { 88 | content: " "; 89 | display: table; 90 | } 91 | &:after { clear: both; } 92 | } 93 | -------------------------------------------------------------------------------- /themes/landscape/source/css/_variables.styl: -------------------------------------------------------------------------------- 1 | // Config 2 | support-for-ie = false 3 | vendor-prefixes = webkit moz ms official 4 | 5 | // Colors 6 | color-default = #555 7 | color-grey = #999 8 | color-border = #ddd 9 | color-link = #258fb8 10 | color-background = #eee 11 | color-sidebar-text = #777 12 | color-widget-background = #ddd 13 | color-widget-border = #ccc 14 | color-footer-background = #262a30 15 | color-mobile-nav-background = #191919 16 | color-twitter = #00aced 17 | color-facebook = #3b5998 18 | color-pinterest = #cb2027 19 | color-google = #dd4b39 20 | 21 | // Fonts 22 | font-sans = -apple-system, BlinkMacSystemFont, 23 | "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", 24 | "Fira Sans", "Droid Sans", "Helvetica Neue", 25 | sans-serif 26 | font-serif = Georgia, "Times New Roman", serif 27 | font-mono = "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace 28 | font-icon = FontAwesome 29 | font-icon-path = "fonts/fontawesome-webfont" 30 | font-icon-version = "4.0.3" 31 | font-size = 14px 32 | line-height = 1.6em 33 | line-height-title = 1.1em 34 | 35 | // Header 36 | logo-size = 40px 37 | subtitle-size = 16px 38 | banner-height = 300px 39 | banner-url = "images/banner.jpg" 40 | 41 | sidebar = hexo-config("sidebar") 42 | 43 | // Layout 44 | block-margin = 50px 45 | article-padding = 20px 46 | mobile-nav-width = 280px 47 | main-column = 9 48 | sidebar-column = 3 49 | 50 | if sidebar and sidebar isnt bottom 51 | _sidebar-column = sidebar-column 52 | else 53 | _sidebar-column = 0 54 | 55 | // Grids 56 | column-width = 80px 57 | gutter-width = 20px 58 | columns = main-column + _sidebar-column 59 | 60 | // Media queries 61 | mq-mobile = "screen and (max-width: 479px)" 62 | mq-tablet = "screen and (min-width: 480px) and (max-width: 767px)" 63 | mq-normal = "screen and (min-width: 768px)" -------------------------------------------------------------------------------- /themes/next/languages/zh-HK.yml: -------------------------------------------------------------------------------- 1 | title: 2 | archive: 歸檔 3 | category: 分類 4 | tag: 標籤 5 | schedule: 日程表 6 | 7 | author: 博主 8 | 9 | menu: 10 | home: 首頁 11 | archives: 歸檔 12 | categories: 分類 13 | tags: 標籤 14 | about: 關於 15 | search: 檢索 16 | schedule: 日程表 17 | sitemap: 站點地圖 18 | commonweal: 公益404 19 | 20 | sidebar: 21 | overview: 本站概覽 22 | toc: 文章目錄 23 | 24 | post: 25 | created: 創建於 26 | modified: 更新於 27 | sticky: 置頂 28 | posted: 發表於 29 | in: 分類於 30 | read_more: 閱讀全文 31 | untitled: 未命名 32 | toc_empty: 此文章未包含目錄 33 | visitors: 閱讀次數 34 | wordcount: 字數統計 35 | min2read: 閱讀時長 36 | totalcount: Site words total count 37 | copyright: 38 | author: Post author 39 | link: Post link 40 | license_title: Copyright Notice 41 | license_content: 'All articles in this blog are licensed under 42 | %s unless stating additionally.' 43 | 44 | page: 45 | totally: 共有 46 | tags: 標籤 47 | 48 | footer: 49 | powered: "由 %s 強力驅動" 50 | theme: 主題 51 | 52 | counter: 53 | tag_cloud: 54 | zero: 暫無標籤 55 | one: 目前共有 1 個標籤 56 | other: "目前共有 %d 個標籤" 57 | 58 | categories: 59 | zero: 暫無分類 60 | one: 目前共有 1 個分類 61 | other: "目前共有 %d 個分類" 62 | 63 | archive_posts: 64 | zero: 暫無文章。 65 | one: 目前共有 1 篇文章。 66 | other: "目前共有 %d 篇文章。" 67 | 68 | state: 69 | posts: 文章 70 | pages: 頁面 71 | tags: 標籤 72 | categories: 分類 73 | 74 | search: 75 | placeholder: 搜索... 76 | 77 | cheers: 78 | um: 嗯.. 79 | ok: OK 80 | nice: 好 81 | good: 很好 82 | great: 非常好 83 | excellent: 激爆好 84 | 85 | keep_on: 繼續努力。 86 | 87 | symbol: 88 | comma: ', ' 89 | period: '。 ' 90 | colon: ':' 91 | 92 | reward: 93 | donate: 打賞 94 | wechatpay: 微信支付 95 | alipay: 支付寶 96 | bitcoin: 比特幣 97 | 98 | gitmentbutton: 顯示 Gitment 評論 99 | -------------------------------------------------------------------------------- /themes/next/languages/zh-TW.yml: -------------------------------------------------------------------------------- 1 | title: 2 | archive: 歸檔 3 | category: 分類 4 | tag: 標籤 5 | schedule: 日程表 6 | 7 | author: 博主 8 | 9 | menu: 10 | home: 首頁 11 | archives: 歸檔 12 | categories: 分類 13 | tags: 標籤 14 | about: 關於 15 | search: 檢索 16 | schedule: 日程表 17 | sitemap: 站點地圖 18 | commonweal: 公益404 19 | 20 | sidebar: 21 | overview: 本站概覽 22 | toc: 文章目錄 23 | 24 | post: 25 | created: 創建於 26 | modified: 更新於 27 | sticky: 置頂 28 | posted: 發表於 29 | in: 分類於 30 | read_more: 閱讀全文 31 | untitled: 未命名 32 | toc_empty: 此文章未包含目錄 33 | visitors: 閱讀次數 34 | wordcount: 字數統計 35 | min2read: 閱讀時長 36 | totalcount: Site words total count 37 | copyright: 38 | author: Post author 39 | link: Post link 40 | license_title: Copyright Notice 41 | license_content: 'All articles in this blog are licensed under 42 | %s unless stating additionally.' 43 | 44 | page: 45 | totally: 共有 46 | tags: 標籤 47 | 48 | footer: 49 | powered: "由 %s 強力驅動" 50 | theme: 主題 51 | 52 | counter: 53 | tag_cloud: 54 | zero: 暫無標籤 55 | one: 目前共計 1 個標籤 56 | other: "目前共計 %d 個標籤" 57 | 58 | categories: 59 | zero: 暫無分類 60 | one: 目前共計 1 個分類 61 | other: "目前共計 %d 個分類" 62 | 63 | archive_posts: 64 | zero: 暫無文章。 65 | one: 目前共計 1 篇文章。 66 | other: "目前共計 %d 篇文章。" 67 | 68 | state: 69 | posts: 文章 70 | pages: 頁面 71 | tags: 標籤 72 | categories: 分類 73 | 74 | search: 75 | placeholder: 搜索... 76 | 77 | cheers: 78 | um: 嗯.. 79 | ok: OK 80 | nice: 好 81 | good: 很好 82 | great: 非常好 83 | excellent: 非常屌 84 | 85 | keep_on: 繼續努力。 86 | 87 | symbol: 88 | comma: ', ' 89 | period: '。 ' 90 | colon: ':' 91 | 92 | reward: 93 | donate: 打賞 94 | wechatpay: 微信支付 95 | alipay: 支付寶 96 | bitcoin: 比特幣 97 | 98 | gitmentbutton: 顯示 Gitment 評論 99 | -------------------------------------------------------------------------------- /themes/next/source/js/src/schemes/pisces.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function () { 2 | 3 | var sidebarInner = $('.sidebar-inner'); 4 | 5 | initAffix(); 6 | resizeListener(); 7 | 8 | function initAffix () { 9 | var headerOffset = getHeaderOffset(), 10 | footerOffset = getFooterOffset(), 11 | sidebarHeight = $('#sidebar').height() + NexT.utils.getSidebarb2tHeight(), 12 | contentHeight = $('#content').height(); 13 | 14 | // Not affix if sidebar taller then content (to prevent bottom jumping). 15 | if (headerOffset + sidebarHeight < contentHeight) { 16 | sidebarInner.affix({ 17 | offset: { 18 | top: headerOffset - CONFIG.sidebar.offset, 19 | bottom: footerOffset 20 | } 21 | }); 22 | } 23 | 24 | setSidebarMarginTop(headerOffset).css({ 'margin-left': 'initial' }); 25 | } 26 | 27 | function resizeListener () { 28 | var mql = window.matchMedia('(min-width: 991px)'); 29 | mql.addListener(function(e){ 30 | if(e.matches){ 31 | recalculateAffixPosition(); 32 | } 33 | }); 34 | } 35 | 36 | function getHeaderOffset () { 37 | return $('.header-inner').height() + CONFIG.sidebar.offset; 38 | } 39 | 40 | function getFooterOffset () { 41 | var footerInner = $('.footer-inner'), 42 | footerMargin = footerInner.outerHeight(true) - footerInner.outerHeight(), 43 | footerOffset = footerInner.outerHeight(true) + footerMargin; 44 | return footerOffset; 45 | } 46 | 47 | function setSidebarMarginTop (headerOffset) { 48 | return $('#sidebar').css({ 'margin-top': headerOffset }); 49 | } 50 | 51 | function recalculateAffixPosition () { 52 | $(window).off('.affix'); 53 | sidebarInner.removeData('bs.affix').removeClass('affix affix-top affix-bottom'); 54 | initAffix(); 55 | } 56 | 57 | }); 58 | -------------------------------------------------------------------------------- /themes/landscape/layout/_partial/article.ejs: -------------------------------------------------------------------------------- 1 |
2 | 6 |
7 | <%- partial('post/gallery') %> 8 | <% if (post.link || post.title){ %> 9 |
10 | <%- partial('post/title', {class_name: 'article-title'}) %> 11 |
12 | <% } %> 13 |
14 | <% if (post.excerpt && index){ %> 15 | <%- post.excerpt %> 16 | <% if (theme.excerpt_link){ %> 17 |

18 | <%= theme.excerpt_link %> 19 |

20 | <% } %> 21 | <% } else { %> 22 | <%- post.content %> 23 | <% } %> 24 |
25 | 32 |
33 | <% if (!index){ %> 34 | <%- partial('post/nav') %> 35 | <% } %> 36 |
37 | 38 | <% if (!index && post.comments && config.disqus_shortname){ %> 39 |
40 |
41 | 42 |
43 |
44 | <% } %> -------------------------------------------------------------------------------- /themes/next/layout/_partials/footer.swig: -------------------------------------------------------------------------------- 1 | 23 | 24 | {% if theme.footer.powered %} 25 |
{# 26 | #}{{ __('footer.powered', 'Hexo') }}{# 27 | #}
28 | {% endif %} 29 | 30 | {% if theme.footer.powered and theme.footer.theme.enable %} 31 | 32 | {% endif %} 33 | 34 | {% if theme.footer.theme.enable %} 35 |
{# 36 | #}{{ __('footer.theme') }} — {# 37 | #}{# 38 | #}NexT.{{ theme.scheme }}{# 39 | #}{% if theme.footer.theme.version %} v{{ theme.version }}{% endif %}{# 40 | #}
41 | {% endif %} 42 | 43 | {% if theme.footer.custom_text %} 44 | 47 | {% endif %} 48 | --------------------------------------------------------------------------------