Hugo | 静态Blog的后端编辑和发布

2179字

起因是……我可以解释

写了两篇Blog之后就又回忆起了之前写静态博客的不爽感:真的太正式了要在特定的电脑前打开特定的文件夹创建特定的Markdwon文件再正式地写完调整格式点击发送,由于Github薛定谔的访问状态,没法稳定访问Github 的设备统统歇菜,于是不但需要在特定的电脑上正式地写还需要在特定的电脑上正式地修改——有自动部署后可以用手机改,但Github文件内容不换行,手机访问编辑极其噩梦,改过几回之后我愤而揭杆,大喊日子实在不好过。

于是今晚空虚地熬过了十点,发现竟然还什么都没做,琢磨索性研究下动态博客。

虽然说不至于马上就换一定要换,但是毕竟知己知彼嘛……


热爱折腾果然是人类天性

兴致盎然地逐项看完了HaloTypecho的文档,没倒腾过毫无概念,真真正正有看没懂,于是跑去搜建站文章(自从球提出了Blog技术文章洗稿论之后我每看一篇都情不自禁地思索这个问题),结果在搜索过程中突然发现了个神奇的东西:Vercel部署Typecho动态博客

我:啊?Vercel能部署PHP????

发挥顺藤摸瓜不怕事多精神,摸到博主提到的HexoPlusPlus看了两眼,前两年装过类似的Hexo-Admin后端管理插件,可以实现网页中实时编辑修改Hexo文章并推送,但并不是什么好的记忆,由于作者长期不更新,成了我命令行工具中巨长篇Warning的罪魁祸首,很快我就因为Warning太影响心情不写Blog了……

琢磨:Hugo能用吗(不能),Hugo有类似的东西吗?我有Github Action,感觉好像只要能接入仓库,能修改仓库内容,再搞个编辑器就可以了……宇宙真理再次发挥了作用,我翻到了泛用型(什么东西)静态博客编辑器

让我们再重复一次宇宙真理(之一):相信一棵葡萄藤上能结出两枚同样的果实,你所想的事,都有人提前造好了轮子。


但轮子一般都不是完美的

所以要学会修车和自我催眠。


Frontmatter

其实编辑器有配置项,可以通过修改json文件来定制文章Frontmatter,也可以用操作栏的+分类/+标签功能来加相关的Frontmatter,但由于不会写json也不想学而且真的有事故体质一写肯定要出事真的很晚了努力一把还能睡一会,所以我的办法是直接复制之前文章的Frontmatter,只用编辑器来自动生成日期。 右边预览界面会把Tags和categories等参数渲染成奇怪的样子,但只要文件格式正确即可。


Slug手动处理

出于个人习惯,换到Hugo后,我的文章Slug仍然保持Hexo-abbrlink插件生成的链接形式,也就是取值后生成一段md5加密,然后从中随机取几位数。相比便于SEO的英文标题形式,这种方式我觉得更清洁干净。 但如果使用编辑器,以往在Frontmatter中直接写入函数的做法就不能用了,解决方案是手动搞定,找了个md5在线加密工具,在文章中随便挑出一部分进行加密,再抽选一段字符,是不是什么挑选过程都能让受过甄嬛传荼毒的一代观众想到选妃?


为什么背景会是紫色的?

这个编辑器还挺需要打磨的(龟毛使用者发言),比如不把边栏收起来就没办法露出完整的预览界面,还比如……这个紫色背景真的很伤眼!!!!为什么会是紫色的啊!!! 谢谢F12总之这个问题我们也可以自助解决,改个background-color就可以了,虽然只能解一时之苦但好在也不会经常刷新页面,谢谢谢谢。


一些Tips

首先是编辑器不支持control+S保存和即时保存,必须手动点击上方保存按钮才能存储内容,问就是已经丢过内容了……其次是如果考虑办公室使用的话,它使用Github登录,所以对不能搭梯子的环境还是有点不友好,我的解决方案是修改 Hosts 解决 Github 访问失败,只要能登上去一次应该后续就没问题了,才知道Github上有巨多项目来搞定这个,恍惚有一种长城养活了泥瓦匠和家用电钻厂商的感觉……(但是为什么明明可以无梯爬上Github了Gridea还是无法同步,难道能无梯访问只是我的错觉)(而且等等,改个host不就能直接在Github上写了吗,我是不是其实没必要绕一圈找个编辑器)

第三是编辑器的换行方案和平常使用不一致,如果想要段落间分行的话,需要段落和段落之间空一行。但段落和段落之间空两行并不能如想象一般输出空白行(空三行行吗我没试估计不行下次试试),所以还是要使用Html来写,空一行并加入<br>标签(不空一行的话也没法显示空白行)。发现排版和想象有出入时更新页面倒是比较简单,修改后再保存并发布就可以了。

最后的话觉得还有点不方便的是没法即时预览,这个没办法了毕竟只是个打通了Github仓库的编辑器。编辑器完全没做手机端适配,手机端修改还是只能用Github修改。另外实时渲染没法渲染Html代码,也没法渲染Shortcodes,写这两个的话还需要一些艺高人胆大一次成功的信心。


最后,风险提示

翻Github仓库的时候发现这个仓库并不开源(知道它用Vercel部署所以想摸一下自己部署一个改改这编辑器CSS,结果那是个站点Blog仓库,我ORZ),介于它直接读取并修改Gtihub仓库,所以还是有必要做一个风险提示,当然也可能是我杞人忧天,麻瓜总担心很多事。

以及由于它编辑器真的太难看,我琢磨来琢磨去又研究了一些在线写作方案,可以参考:《Hugo | 一个(些)静态博客的后端管理方案》