继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

为 github markdown 文件生成目录(toc)

慕田峪9129951
关注TA
已关注
手记 337
粉丝 200
获赞 993

业务需要

在编写 github 项目时,有时候会编写各种 README.md 等 markdown 文件,但是 github 默认是没有目录的。

于是就自己写了一个小工具。

markdown-toc

markdown-toc 可以用来生成 markdown 页面的目录,便于 github 页面展现。

Features

  • Github Markdown 文件一键生成目录

  • 支持 fluent 优雅的写法

  • 支持多次生成

  • 支持重复标题的生成

  • 支持特殊字符的过滤

  • 支持指定不同的文件编码

  • 支持文件夹的文件批量处理(可指定是否包含子文件夹文件)

  • 支持是否写入文件,可返回目录的内容,便于用户自行处理

  • ...

环境依赖

JDK

JDK7+, 请确保 JDK 设置正确。

Maven

Jar 使用 Maven 进行统一管理。

快速入门

maven 引入

<dependency>    <groupId>com.github.houbb</groupId>    <artifactId>markdown-toc</artifactId>    <version>1.0.2</version></dependency>

md 文件

本项目支持的 md 文件后缀名称为 .md 或者 .markdown

快速开始

  • 单个文件

AtxMarkdownToc.newInstance().genTocFile(path);

其中 path 为 md 文件的路径

  • 指定文件夹

AtxMarkdownToc.newInstance().genTocFile(path);

其中 path 为 md 文件的父类文件夹

属性配置

  • 代码示例

AtxMarkdownToc.newInstance()                .charset("UTF-8")                .write(true)                .subTree(true);

属性说明

序号属性默认值说明
1charsetUTF-8文件编码
2writetrue是否将 toc 写入文件(默认写入)
3subTreetrue是否包含子文件夹的文件(默认包含)

返回值说明

genTocFile() 返回 TocGen,genTocDir() 返回 List<TocGen>

  • TocGen 属性说明

序号属性类型说明
1filePathString当前 md 的文件路径
2tocLinesList<String>当前 md 文件对应的目录内容

测试案例

单个文件-目录生成测试案例

文件夹-目录生成测试案例

github 地址

markdown-toc

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP