让typecho支持table of contents
支持 of Table typecho contents
2023-06-13 09:16:15 时间
什么是toc?
[toc]
table of contents 即文章目录
toc有什么用
废话,你说目录有啥用,方便查找呗
使用typecho的TX,一定会一点markdown吧,在文章中如果出现##this's h2 tag##
,会被程序转换为
<h2>this's h2 tag</h2>
一个h标签就好比一本书的各个章节,如果我们能把他们清点一下,组成一个目录输出,岂不是妙哉!
TOC如何使用
简单到不能再简单,在你想插入目录的地方放一个[toc]
或[TOC]
即可(推荐大写)!
[TOC]
必须处于顶格
typecho中的markdown
typecho的源代码中已经使用了激进的MarkdownExtraExtended类来转化md文件,为什么说他很激进呢?因为他扩展了标准的markdown,添加了很多个性化的语法,如直接给元素添加id或者class,还有脚注、缩写词等,用起来确实很爽!但需要注意的是:太多的非标准语法可能会带来移植性差的问题
具体的语法参考请看这里php Markdown Extra
如何使typecho支持toc
要使typecho支持toc需要替换位于源程序中的/wwwroot/var/
文件夹下的MarkdownExtraExtended.php
为 MarkdownExtraExtended.php
原理
这个文件的作用就是为typecho提供md2html的作用,我修改了MarkdownExtraExtended类的__construct方法,为block_gamut数组添加了 doToc
处理模块,并把优先级降到最低。
转换细节位于doToc
与_doToc_callback
中,在此不作赘述。
不完美的地方
- 要是能加入一个锚点之间平滑滚动的效果就更完美了,改天写个插件弄一弄
- 在首页也能看到目录,改天看看源代码研究一下,看能不能解决
- 希望后台加一个选项,自动生成目录,这个比较麻烦,以后看情况解决
相关文章
- IOS支持音频流断点续传
- MIT开源协议,一款百分百开源、支持商用的亚马逊ERP系统
- “东数西算”国家数网:支持超大规模和安全可信的数字人民币应用部署/人行数研所公布2项共享交通数字人民币专利
- 如何在CDP运营数据库(COD)上部署事务支持
- istio-in-action - 17 Gateway 支持 https 访问 - 标准模式
- 让typecho支持table of contents
- kkFileView优化PDF图片预览增加JPEG2000标准图片支持
- Java为什么不支持多继承
- 五角大楼通过攻击自身来支持人工智能系统 主要应用于军事领域
- Oracle数据库:一个可靠的PPT支持(oracle数据库ppt)
- 英特尔和Red Hat合作实现Gnome桌面的Wayland支持
- 告别买后爱奇艺 小米平板5确认支持键盘配件
- Redis实现分布式存储,让你的数据更安全更高效!(redis支持分布式)
- 实现Linux系统支持NTFS文件格式的快速安装方式(linux安装ntfs)
- 兼容FireFox的js日历支持时间的获取
- iisresin使iis支持jsp