本地化基于jekyll博客系统的一点小小经验

由 漆黑菌 于 2017年12月17日 发布

试着写点东西

先谢github,再谢jekyll,最后谢BYQiu。本来前半年就想利用这套系统搭建一个属于自己的博客了,但是因为技术力和时间的问题没有成功。最近算是把这个有些年头的计划落实了下来。

系统优点

这套系统对于我来说优点是显而易见的。

首先,满足了“属于自己匿名空间”需求。

我属于2004年甚至更早就开始上网的一批网民。那个时候国内互联网的核心构建还是一个线上匿名空间,随着技术的发展和时代的变化,当今互联网开始变得更像是一个线下实名空间的延续。随着网络实名制的进一步发展,线上匿名空间基本上是不存在了,这让我感到十分不适应。

其次,这套系统的搭建“低成本,高回报”。

这套系统并无直接的费用产生,主要的成本在技术上,而这些技术基本上也都是属于今后可能对我来说非常有用的技术。迟早都要学,早学比晚学好。github的使用对一个程序员来说是有很多好处的,找代码,储存代码,学代码都很方便。之前在学校和工作中svn的使用比较多,正好也借着github能多练习git的使用。jekyll框架中,我目前发现了很多前端Bootstrap+模版的东西,这是我之前不了解的东西,正好给了我一次联系的机会。发文用的是markdown,感觉是一种很不错的标记语言,学了也没坏处(笑。

一点搭建过程中的经验

万一能被其他有一样需求的人看到呢,我这次搭建也是在各位有分享精神的网友帮助下达成的,分享精神是互联网很重要的一部分。

补充一下BYQiu的博文

我在搭建中基本参考的是BYQiu的博文,原作者是Mac用户,我根据Windows搭建的经验补充一点。

关于GitHub Desktop

首先GitHub Desktop的安装和使用请全程自带梯子,否则可能会异常痛苦,我之前大概装了5次都失败。而且现在GitHub Desktop似乎是改版了,原博的介绍不能照搬,不过用法基本没变注意找到不同的位置就行了。

关于Windows系统本地调试

原文的链接已经失效了,请到@梦幻之云的文章里自己找对应的。

关于压缩图片软件

FileOptimizer官方版只有在线和Mac版本,Windows系统需要自行下载第三方版本,Nikkho这是官方网站上推荐的第三方Windows版本。

关于markdown编辑器

windows平台上好像字体配置有问题,非常的模糊。所以我推荐一波简书,我现在这篇文章就是在简书敲出来的,可以在线预览很不错。不过默认并不是markdown模式,需要在设置里切换一下,然后再新建一篇文章才能进入markdown编辑器模式。

关于图床

我觉得CloudApp应该不错,最近用的discord和twitter都用的是这家的图床,应该是靠得住的,不过不知道墙内表现如何(图比较少我都直接传github上了。

部分汉化

毕竟这是一个外国老哥的东西,所以底子肯定还是英文的,但是作为一个中文用户,我还是选择自己尽量汉化一下这些页面。与此同时,汉化过程也是一个了解这个框架的好方法。这个框架表面上是三个页面,index.htmlabout.htmltags.html构成的。但是当我们打开页面仔细观察,不难发现他们实际上是几个“模版页面”的实现,可以说就是面向对象编程里面对象(具体页面)和类(模版页面)的关系了。模版页面又分两种分别放在_layouts_includes文件夹中。前者是真正的模版网页,所有的网页都是在此基础上渲染的。后者存放的是公共页面,把几个常用组件抽象了出来,这在日常编程中也是很常见的。

汉化日期

原版的日期格式都是英文的“月日年”模式,我的汉化第一步就是把这个汉化成中国人常用的“年月日”模式。首先在各个模版网页中找到原有格式样式的内容,这个框架采用双花括号标签来输出内容|后面是过滤器,也就是格式化时间用的。我找到了jekyll的官方文档,有兴趣研究的可以自己查看,没兴趣研究的改成修改后格式这个格式就可以了。

修改右上角标签页

这个生成的页面在_includes/nav.html中,其中首页比较特殊,是单独写死在里面的,需要我们手动根据需求修改,我改成了首页。通过代码


                    <li>
                        <a href="/about/">关于我</a>
                    </li>
                    
                    <li>
                        <a href="/tags/">标签</a>
                    </li>
                    

我们不难发现,这里是根据页面的page.title属性生成的,找到对应页面,在页面头的注释内容中根据自己的需求填写title属性就可以了。

结语

深受“WEB2.0”毒害的我,好久没有进行这么长时间的文字工作了,能敲下来还听不容易呢。希望以后能坚持下来,继续进步吧。