关于模板的问题
在经历了这么久的沉淀之后,对本模板的基本的技术层面的逻辑有了基本的认识,虽然技术细节尚未完全浏览。但是作为一个框架来的hexo的具体实现逻辑本来就不是我作为一个用户需要来关心的,我仅仅关心相关的接口以及各个模块之间的实现顺序。
在实现相关的过程中,我不断发现这个看起来高级的网页成品背后草台班子的一面。
前端的技术栈
在网页前端,主要用到的技术是Jade或者现在改名pug。其实说白了就是一个便于结合html与js的脚手架,在简化html结构的编写难度的同时加入了直接写入JS逻辑的功能,其实和vue什么的没差多少,而且这个技术应该不是什么大众的技术分类,但是不知道为什么会出现在这样一个普通框架的模板里。得益于现代强大的搜索AI,我适应这样的写法还是很快的,毕竟只是一些语法上的问题。
网页的CSS是由SCSS编译而来的,同样是一种为了实现CSS复杂功能出现的脚手架,这一部分因为改动不多,因此没有涉及到其核心部分,最后也没有进行更多的修改,所以此处按下不表
加入的新功能
首先是代码高亮:
因为我使用的主题实际上在设计时并不意指于技术类文章,所以代码高亮并不是必要的。于是并没有内置,所以我在使用这些东西的时候完全没法用,而hexo自带的内置渲染器又相当不争气的对pug的适应不了。最后经历了一系列的悲伤故事的我使用了最传统派的方式–直接把js写进模板里,最后勉勉强强的跑了起来
其次是数学公式的渲染
hexo的内置渲染器一如既往的渲染不上,只能采用类似{/%%/}的模板语法来进行
缩进上
因为markdown天生的不缩进的问题,模板里也没有做出相应的适配,甚至在hexo传过来的正文里面,全文尤其是正文基本上是不分段的,全部塞在一个p元素里,因而无法使用CSS原生的缩进。于是我不得不多写一个解析的js放在模板里,用空格模拟缩进,希望这样的作法能适应放缩比例吧。
界面渲染
主页的快速入口是很重要的,所以我打算给重要功能加快速入口。
于是在siderbar上加了一个ACM的入口用来快速查找板子,目前还没测试主题适配分级tag的效果,如果可以那以后在内容增多的前提之下就能做到分类了。
ToDo
- 测试多级tag可用性
- 编写about页面
- 多往里投送文章
- 看看RSS能不能用
- 做一点详细的流程记录以免自己忘记了
- 找找多平台同步发送的方案,应该是可行的
- 做文章顶置功能,起码有特殊的排序功能。
- 想办法完成图文混排
- 在ob本地做适配,尽量在非开发的工作里不打开webstorm