From a70368997da84b2e5a3cf55ae4c1c14282fc1650 Mon Sep 17 00:00:00 2001 From: lxy <1103069291@qq.com> Date: Tue, 27 Oct 2020 15:33:19 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E9=87=8D=E6=9E=84=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 重构了一下整个页面,有如下好处: 1. 使用者可以选择使用免费CDN,还是使用自己带宽或者自己加装CDN 2. 使用者可以替换、修改第三方包及静态资源,给予最大的权限 受一些限制,在设置内的默认资源,还是使用我CDN上的资源。 --- .bowerrc | 8 + 404.ftl | 2 +- README.md | 2 +- archives.ftl | 2 +- bower.json | 29 + categories.ftl | 2 +- category.ftl | 2 +- footer.ftl | 50 +- header.ftl | 12 +- images/sns/csdn.png | Bin 737 -> 0 bytes inc/decorate.ftl | 69 +- index.ftl | 3 +- journals.ftl | 4 +- layouts/feature.ftl | 6 +- layouts/imgbox.ftl | 37 +- layouts/lazyload-img.ftl | 18 - layouts/sharelike.ftl | 12 +- links.ftl | 2 +- mail_template/mail_reply.ftl | 4 +- package-lock.json | 2 +- package.json | 4 +- photos.ftl | 2 +- post.ftl | 2 +- {js => script}/app.js | 3550 +-- {js => script}/app.min.js | 0 search.ftl | 2 +- settings.yaml | 12 + sheet.ftl | 2 +- sheet_links.ftl | 2 +- .../highlight}/highlight-AndroidStudio.css | 0 .../css/highlight}/highlight-Dark.css | 0 .../css/highlight}/highlight-Docco.css | 0 .../css/highlight}/highlight-Dracula.css | 0 .../css/highlight}/highlight-Far.css | 0 .../css/highlight}/highlight-Github.css | 0 .../highlight}/highlight-Tomorrow Night.css | 0 source/css/lib.css | 18 + source/cursor/Alternative.cur | Bin 0 -> 4286 bytes source/cursor/Escritura a Mano.cur | Bin 0 -> 4286 bytes source/cursor/Move.cur | Bin 0 -> 4286 bytes source/cursor/No_Disponible.cur | Bin 0 -> 4286 bytes source/cursor/Ocupado.cur | Bin 0 -> 4286 bytes source/cursor/ayuda.cur | Bin 0 -> 4286 bytes source/cursor/diagonal resize 1.cur | Bin 0 -> 4286 bytes source/cursor/diagonal resize 2.cur | Bin 0 -> 4286 bytes source/cursor/horizontal.cur | Bin 0 -> 4286 bytes source/cursor/link.ani | Bin 0 -> 17292 bytes source/cursor/normal.cur | Bin 0 -> 4286 bytes source/cursor/precision.cur | Bin 0 -> 4286 bytes source/cursor/texto.cur | Bin 0 -> 4286 bytes source/cursor/vertical.cur | Bin 0 -> 4286 bytes source/cursor/work.cur | Bin 0 -> 4286 bytes source/fonts/FontAwesome.otf | Bin 0 -> 134808 bytes source/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes source/fonts/fontawesome-webfont.svg | 2671 +++ source/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes source/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes source/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes {images => source/images}/404.jpg | Bin source/images/add@32x32.png | Bin 0 -> 799 bytes {images => source/images}/avatar.jpg | Bin {images => source/images}/cd-arrow.svg | 40 +- source/images/disqus-preloader.svg | 6 + source/images/dot.gif | Bin 0 -> 1099 bytes {images => source/images}/f-logo.png | Bin {images => source/images}/favicon.ico | Bin {images => source/images}/gotop.png | Bin {images => source/images}/grid.png | Bin {images => source/images}/hd.jpg | Bin source/images/load/load.gif | Bin 0 -> 1188027 bytes .../nextImg.svg => source/images/next-b.svg | 0 {images => source/images}/none.png | Bin source/images/other/head.jpg | Bin 0 -> 235281 bytes source/images/other/hr.png | Bin 0 -> 13267 bytes source/images/other/iloli.gif | Bin 0 -> 324928 bytes source/images/pause@32x32.png | Bin 0 -> 721 bytes source/images/play@32x32.png | Bin 0 -> 871 bytes {images => source/images}/postload.gif | Bin {images => source/images}/random/d-1.jpg | Bin {images => source/images}/random/d-10.jpg | Bin {images => source/images}/random/d-2.jpg | Bin {images => source/images}/random/d-3.jpg | Bin {images => source/images}/random/d-4.jpg | Bin {images => source/images}/random/d-5.jpg | Bin {images => source/images}/random/d-6.jpg | Bin {images => source/images}/random/d-7.jpg | Bin {images => source/images}/random/d-8.jpg | Bin {images => source/images}/random/d-9.jpg | Bin source/images/rotating-ball-o.svg | 10 + source/images/sakura.svg | 25 + {images => source/images}/sns/bilibili.png | Bin source/images/sns/csdn.png | Bin 0 -> 352 bytes {images => source/images}/sns/douban.png | Bin source/images/sns/email.svg | 1 + {images => source/images}/sns/facebook.png | Bin {images => source/images}/sns/github.png | Bin {images => source/images}/sns/googleplus.png | Bin {images => source/images}/sns/heart.png | Bin {images => source/images}/sns/jianshu.png | Bin {images => source/images}/sns/linkedin.png | Bin {images => source/images}/sns/lofter.png | Bin {images => source/images}/sns/qq.png | Bin {images => source/images}/sns/qzone.png | Bin {images => source/images}/sns/sina.png | Bin source/images/sns/stackoverflow.svg | 1 + source/images/sns/telegram.svg | 1 + {images => source/images}/sns/twitter.png | Bin {images => source/images}/sns/wangyiyun.png | Bin {images => source/images}/sns/wechat.png | Bin {images => source/images}/sns/weibo.png | Bin {images => source/images}/sns/youku.png | Bin {images => source/images}/sns/zhihu.png | Bin .../loader/orange.ajax-spinner-preloader.svg | 65 + .../orange.progress-bar-stripe-loader.svg | 26 + .../loader/orange.square-circle-preloader.svg | 12 + .../loader/trans.ajax-spinner-preloader.svg | 65 + source/images/svg/mine/cat.svg | 1 + source/images/svg/mine/rocket.svg | 1 + source/images/svg/mine/su-android.svg | 1 + source/images/svg/mine/superheroe.svg | 74 + {images => source/images}/temp.jpg | Bin source/images/wave1.png | Bin 0 -> 5102 bytes source/images/wave2.png | Bin 0 -> 4935 bytes source/js/404.js | 9 + source/js/echarts/echarts.min.js | 11 + .../js/highlight}/highlight.pack.js | 10 +- .../highlightjs-line-numbers.min.js | 0 source/js/lib.js | 44 + source/js/qrcode.min.js | 1 + source/lib/APlayer/APlayer.min.css | 1 + source/lib/APlayer/APlayer.min.js | 1 + source/lib/flv.min/.bower.json | 16 + .../{js/flv.min.js => lib/flv.min/index.js} | 3 +- source/lib/imagesloaded/.bower.json | 48 + source/lib/imagesloaded/README.md | 362 + source/lib/imagesloaded/bower.json | 37 + source/lib/imagesloaded/imagesloaded.js | 377 + source/lib/imagesloaded/imagesloaded.pkgd.js | 497 + .../lib/imagesloaded/imagesloaded.pkgd.min.js | 7 + source/lib/isotope.pkgd.min/.bower.json | 15 + source/lib/isotope.pkgd.min/index.js | 12 + source/lib/jqcloud2/jqcloud.min.css | 1 + source/lib/jqcloud2/jqcloud.min.js | 8 + source/lib/jquery-ui/.bower.json | 23 + source/lib/jquery-ui/.gitignore | 4 + source/lib/jquery-ui/README.md | 12 + source/lib/jquery-ui/bower.json | 15 + source/lib/jquery-ui/component.json | 13 + source/lib/jquery-ui/composer.json | 69 + source/lib/jquery-ui/jquery-ui.js | 18706 ++++++++++++++++ source/lib/jquery-ui/jquery-ui.min.js | 13 + source/lib/jquery-ui/package.json | 16 + .../jquery.justifiedGallery.min.js | 8 + .../justifiedGallery/justifiedGallery.min.css | 110 + source/lib/packery-mode.pkgd.min/.bower.json | 13 + source/lib/packery-mode.pkgd.min/index.js | 1069 + source/lib/tocbot/.bower.json | 42 + source/lib/tocbot/CHANGELOG.md | 226 + source/lib/tocbot/LICENSE | 21 + source/lib/tocbot/README.md | 280 + source/lib/tocbot/bower.json | 34 + source/lib/tocbot/codecept.json | 18 + source/lib/tocbot/dist/styles.css | 1 + source/lib/tocbot/dist/tocbot.css | 1 + source/lib/tocbot/dist/tocbot.js | 1 + source/lib/tocbot/dist/tocbot.min.js | 1 + source/lib/tocbot/index.d.ts | 137 + source/lib/tocbot/next.config.js | 13 + source/lib/tocbot/package.json | 117 + source/lib/tocbot/server.js | 31 + source/lib/tocbot/travis-deploy.sh | 48 + styles/style.css | 40 +- tag.ftl | 2 +- tags.ftl | 2 +- theme.yaml | 2 +- tpl/content-links.ftl | 2 +- tpl/content-masonry-photos.ftl | 4 +- tpl/content-thumb.ftl | 4 +- tpl/content.ftl | 2 +- 179 files changed, 27464 insertions(+), 1956 deletions(-) create mode 100644 .bowerrc create mode 100644 bower.json delete mode 100644 images/sns/csdn.png delete mode 100644 layouts/lazyload-img.ftl rename {js => script}/app.js (96%) rename {js => script}/app.min.js (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-AndroidStudio.css (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-Dark.css (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-Docco.css (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-Dracula.css (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-Far.css (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-Github.css (100%) rename {plugins/highlight/css => source/css/highlight}/highlight-Tomorrow Night.css (100%) create mode 100644 source/css/lib.css create mode 100644 source/cursor/Alternative.cur create mode 100644 source/cursor/Escritura a Mano.cur create mode 100644 source/cursor/Move.cur create mode 100644 source/cursor/No_Disponible.cur create mode 100644 source/cursor/Ocupado.cur create mode 100644 source/cursor/ayuda.cur create mode 100644 source/cursor/diagonal resize 1.cur create mode 100644 source/cursor/diagonal resize 2.cur create mode 100644 source/cursor/horizontal.cur create mode 100644 source/cursor/link.ani create mode 100644 source/cursor/normal.cur create mode 100644 source/cursor/precision.cur create mode 100644 source/cursor/texto.cur create mode 100644 source/cursor/vertical.cur create mode 100644 source/cursor/work.cur create mode 100644 source/fonts/FontAwesome.otf create mode 100644 source/fonts/fontawesome-webfont.eot create mode 100644 source/fonts/fontawesome-webfont.svg create mode 100644 source/fonts/fontawesome-webfont.ttf create mode 100644 source/fonts/fontawesome-webfont.woff create mode 100644 source/fonts/fontawesome-webfont.woff2 rename {images => source/images}/404.jpg (100%) create mode 100644 source/images/add@32x32.png rename {images => source/images}/avatar.jpg (100%) rename {images => source/images}/cd-arrow.svg (98%) create mode 100644 source/images/disqus-preloader.svg create mode 100644 source/images/dot.gif rename {images => source/images}/f-logo.png (100%) rename {images => source/images}/favicon.ico (100%) rename {images => source/images}/gotop.png (100%) rename {images => source/images}/grid.png (100%) rename {images => source/images}/hd.jpg (100%) create mode 100644 source/images/load/load.gif rename images/nextImg.svg => source/images/next-b.svg (100%) rename {images => source/images}/none.png (100%) create mode 100644 source/images/other/head.jpg create mode 100644 source/images/other/hr.png create mode 100644 source/images/other/iloli.gif create mode 100644 source/images/pause@32x32.png create mode 100644 source/images/play@32x32.png rename {images => source/images}/postload.gif (100%) rename {images => source/images}/random/d-1.jpg (100%) rename {images => source/images}/random/d-10.jpg (100%) rename {images => source/images}/random/d-2.jpg (100%) rename {images => source/images}/random/d-3.jpg (100%) rename {images => source/images}/random/d-4.jpg (100%) rename {images => source/images}/random/d-5.jpg (100%) rename {images => source/images}/random/d-6.jpg (100%) rename {images => source/images}/random/d-7.jpg (100%) rename {images => source/images}/random/d-8.jpg (100%) rename {images => source/images}/random/d-9.jpg (100%) create mode 100644 source/images/rotating-ball-o.svg create mode 100644 source/images/sakura.svg rename {images => source/images}/sns/bilibili.png (100%) create mode 100644 source/images/sns/csdn.png rename {images => source/images}/sns/douban.png (100%) create mode 100644 source/images/sns/email.svg rename {images => source/images}/sns/facebook.png (100%) rename {images => source/images}/sns/github.png (100%) rename {images => source/images}/sns/googleplus.png (100%) rename {images => source/images}/sns/heart.png (100%) rename {images => source/images}/sns/jianshu.png (100%) rename {images => source/images}/sns/linkedin.png (100%) rename {images => source/images}/sns/lofter.png (100%) rename {images => source/images}/sns/qq.png (100%) rename {images => source/images}/sns/qzone.png (100%) rename {images => source/images}/sns/sina.png (100%) create mode 100644 source/images/sns/stackoverflow.svg create mode 100644 source/images/sns/telegram.svg rename {images => source/images}/sns/twitter.png (100%) rename {images => source/images}/sns/wangyiyun.png (100%) rename {images => source/images}/sns/wechat.png (100%) rename {images => source/images}/sns/weibo.png (100%) rename {images => source/images}/sns/youku.png (100%) rename {images => source/images}/sns/zhihu.png (100%) create mode 100644 source/images/svg/loader/orange.ajax-spinner-preloader.svg create mode 100644 source/images/svg/loader/orange.progress-bar-stripe-loader.svg create mode 100644 source/images/svg/loader/orange.square-circle-preloader.svg create mode 100644 source/images/svg/loader/trans.ajax-spinner-preloader.svg create mode 100644 source/images/svg/mine/cat.svg create mode 100644 source/images/svg/mine/rocket.svg create mode 100644 source/images/svg/mine/su-android.svg create mode 100644 source/images/svg/mine/superheroe.svg rename {images => source/images}/temp.jpg (100%) create mode 100644 source/images/wave1.png create mode 100644 source/images/wave2.png create mode 100644 source/js/404.js create mode 100644 source/js/echarts/echarts.min.js rename {plugins/highlight/js => source/js/highlight}/highlight.pack.js (99%) rename {plugins/highlight/js => source/js/highlight}/highlightjs-line-numbers.min.js (100%) create mode 100644 source/js/lib.js create mode 100644 source/js/qrcode.min.js create mode 100644 source/lib/APlayer/APlayer.min.css create mode 100644 source/lib/APlayer/APlayer.min.js create mode 100644 source/lib/flv.min/.bower.json rename source/{js/flv.min.js => lib/flv.min/index.js} (99%) create mode 100644 source/lib/imagesloaded/.bower.json create mode 100644 source/lib/imagesloaded/README.md create mode 100644 source/lib/imagesloaded/bower.json create mode 100644 source/lib/imagesloaded/imagesloaded.js create mode 100644 source/lib/imagesloaded/imagesloaded.pkgd.js create mode 100644 source/lib/imagesloaded/imagesloaded.pkgd.min.js create mode 100644 source/lib/isotope.pkgd.min/.bower.json create mode 100644 source/lib/isotope.pkgd.min/index.js create mode 100644 source/lib/jqcloud2/jqcloud.min.css create mode 100644 source/lib/jqcloud2/jqcloud.min.js create mode 100644 source/lib/jquery-ui/.bower.json create mode 100644 source/lib/jquery-ui/.gitignore create mode 100644 source/lib/jquery-ui/README.md create mode 100644 source/lib/jquery-ui/bower.json create mode 100644 source/lib/jquery-ui/component.json create mode 100644 source/lib/jquery-ui/composer.json create mode 100644 source/lib/jquery-ui/jquery-ui.js create mode 100644 source/lib/jquery-ui/jquery-ui.min.js create mode 100644 source/lib/jquery-ui/package.json create mode 100644 source/lib/justifiedGallery/jquery.justifiedGallery.min.js create mode 100644 source/lib/justifiedGallery/justifiedGallery.min.css create mode 100644 source/lib/packery-mode.pkgd.min/.bower.json create mode 100644 source/lib/packery-mode.pkgd.min/index.js create mode 100644 source/lib/tocbot/.bower.json create mode 100644 source/lib/tocbot/CHANGELOG.md create mode 100644 source/lib/tocbot/LICENSE create mode 100644 source/lib/tocbot/README.md create mode 100644 source/lib/tocbot/bower.json create mode 100644 source/lib/tocbot/codecept.json create mode 100644 source/lib/tocbot/dist/styles.css create mode 100644 source/lib/tocbot/dist/tocbot.css create mode 100644 source/lib/tocbot/dist/tocbot.js create mode 100644 source/lib/tocbot/dist/tocbot.min.js create mode 100644 source/lib/tocbot/index.d.ts create mode 100644 source/lib/tocbot/next.config.js create mode 100644 source/lib/tocbot/package.json create mode 100644 source/lib/tocbot/server.js create mode 100644 source/lib/tocbot/travis-deploy.sh diff --git a/.bowerrc b/.bowerrc new file mode 100644 index 0000000..482ddd4 --- /dev/null +++ b/.bowerrc @@ -0,0 +1,8 @@ +{ + "directory": "source/lib", + "json": "./bower.json", + "ignoredDependencies": [ + "ev-emitter", + "jquery" + ] +} \ No newline at end of file diff --git a/404.ftl b/404.ftl index 1585fbc..ffd9317 100644 --- a/404.ftl +++ b/404.ftl @@ -44,7 +44,7 @@ the_dom = the_dom.substring(0, the_port_index) } - + diff --git a/README.md b/README.md index c2dee6e..1374776 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ DEMO:[https://lixingyong.com/](https://lixingyong.com/) - [x] 代码高亮,且实现仿Mac - [x] 自定义评论 - [x] 文章目录 -- [x] 主题切换 +- [x] 主题切换(支持页面模式) - [x] 友链页面 - [x] 移动客户端适配 - [x] 404 页面 diff --git a/archives.ftl b/archives.ftl index cd15e98..ede02c4 100644 --- a/archives.ftl +++ b/archives.ftl @@ -7,7 +7,7 @@
- +

文章归档

diff --git a/bower.json b/bower.json new file mode 100644 index 0000000..0dd5a79 --- /dev/null +++ b/bower.json @@ -0,0 +1,29 @@ +{ + "name": "takagi-sakura", + "main": "index.js", + "authors": [ + "takagi " + ], + "license": "ISC", + "homepage": "https://github.com/LIlGG/halo-theme-sakura", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "source/lib", + "test", + "tests", + "src" + ], + "dependencies": { + "flv.min": "https://github.com/bilibili/flv.js/releases/download/v1.5.0/flv.min.js", + "isotope.pkgd.min": "https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.min.js", + "jquery.justifiedGallery.min": "https://github.com/miromannino/Justified-Gallery/blob/master/dist/js/jquery.justifiedGallery.min.js", + "imagesloaded": "^4.1.4", + "packery-mode.pkgd.min": "https://github.com/metafizzy/isotope-packery/blob/master/packery-mode.pkgd.min.js", + "APlayer.min": "https://github.com/MoePlayer/APlayer/blob/master/dist/APlayer.min.js", + "tocbot": "^4.12.0", + "jquery-ui": "^1.12.1", + "v1.10": "https://github.com/MoePlayer/APlayer/releases/tag/v1.10.1" + } +} diff --git a/categories.ftl b/categories.ftl index 27596ae..a7d2ed1 100644 --- a/categories.ftl +++ b/categories.ftl @@ -11,7 +11,7 @@
- +

${options.categories_title?default('文章分类')}

diff --git a/category.ftl b/category.ftl index 8fcbe3b..7dc6430 100644 --- a/category.ftl +++ b/category.ftl @@ -7,7 +7,7 @@
- +

分类:${category.name!}

diff --git a/footer.ftl b/footer.ftl index ca092c2..61c4ed6 100644 --- a/footer.ftl +++ b/footer.ftl @@ -9,6 +9,7 @@ * @package Akina */ --> +<#global res_base_url = settings.cdn?then("//cdn.jsdelivr.net/gh/LIlGG/halo-theme-sakura@1.2.1", theme_base)/> <#macro footer>
<#include "comments.ftl"> @@ -17,13 +18,12 @@ <#elseif is_sheet??> <@comment sheet,"sheet" /> -<#assign cdn_base_url="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8"/>