https://jysperm.me/2015/07/hexo-theme-simpleblock前端
今年年初,由於我已經好久不寫 PHP 了,因此我將 個人博客 從 WordPress 換到了基於 Node.js 的 Hexo, 順便本身編寫了一個專用於個人博客的主題。git
一週前我用 Github 開源的 | fee503fdb968dcd1421ecbe0c6dbedf31 | 重寫了這個博客主題,將與我相關的我的信息修改成可配置項,而後將這個主題正式發佈爲了 Simple Block, 它實現了:github
支持使用 Jade 和 Markdown 向邊欄添加小部件,或向正文前添加橫幅。npm
響應式設計,支持移動設備直接瀏覽,首次加載(gzip)僅 15k.gulp
爲 Mac, Windows 以及 Linux 挑選了恰當的字體。hexo
正文使用 Github 開源的 Markdown 樣式。wordpress
這個主題摻入了很是多個人我的偏好,好比我使用了 Jade 和 CoffeeScript, 使用了 Gulp, 以及頁面中一些奇怪部分(連接到源文件什麼的)。工具
在設計上,我參考了我原來使用的 WordPress 2012 默認主題 Twenty Twelve, 我將各個部分放到了單獨的白色區塊上,並使間隙透明,因而就有了 Simple Block.字體
我平時不多設計前端頁面,自知設計水平不好,這款主題基本上表明瞭我近期前端設計的最高水平了。插件
Hexo 支持用 Node.js 編寫插件或者主題的 helper, 這是很是大的一個亮點。
我看了官網上列出的幾個主題,它們都沒有 npm 依賴,在說明中建議直接將 Git 倉庫克隆下來,就算安裝完成了。
而個人主題依賴了 coffee-script, jade 以及 marked, 因此須要一個安裝依賴的過程,Hexo 並不會自動爲主題安裝依賴,因此須要用戶自行運行 npm install
.
另外一方面我發現官網上的主題都直接將前端依賴放到了 Git 倉庫中,我以爲這樣是不恰當的,因而我使用 bower 和 gulp 來構建前端樣式,而後將編譯好的版本上傳到 Github 的 Release 中,讓用戶下載編譯好的版本,而不是直接克隆 Git 倉庫。其實 Hexo 提供了對 CSS 方言的自動編譯,但功能較弱,沒有辦法徹底替代 gulp 等構建工具的功能。
以上是我在開發這個主題的過程當中發現的 Hexo 主題機制的一些問題,我還沒探索出合適的解決方案,各位在安裝的過程當中若是遇到問題,請向我提出。