Skip to content

Latest commit

 

History

History
76 lines (56 loc) · 2.51 KB

doctoc安装与使用.md

File metadata and controls

76 lines (56 loc) · 2.51 KB

目录

doctoc安装与使用

doctoc是一个JS包,用于给markdown文件创建目录。npm是JS包管理工具,所以下载与安装doctoc需要借助于npm,在安装doctoc之前需要安装npm。由于npm是包含在Node.js中,所以在使用npm之前需要给系统安装上Node.js

1. 安装

  • 安装Node.js

在安装Node.js之前先安装node version manager(nvm)

wget -c -P ~/Bin https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh
sh ~/Bin/install.sh

关闭终端重新打开,完成nvm的安装,运行命令command -v nvm来检查是否安装成功 接着安装Node.js

nvm install node
  • 安装doctoc
nvm use node # 使用Node.js需要先载入
npm install -g doctoc

2. 使用

doctoc的使用很简单

doctoc file1.md [file2.md ... ]

一次可以指定多个md文件进行转换

其实doctoc对md文件创建目录的原理十分简单,就是通过识别文本中以一个或连续多个#开头的行,将它们判定为不同等级的标题,然后在原始md文本的开头创建链接

  • 链接名 原标题的字符串
  • 链接地址#开头,后接小写化的原标题的字符串,如果原字符串单词之间有空格,则改用连接符-连接起来,如果其中含有汉字则用base64进行编码,但是这样会使得连接失效,所以一旦存在汉字,需要进行特殊处理,具体处理方法后面会说明

例如:

原md文本中的标题行为:

### Title

经过doctoc转换后为:

[Title](#title)

但是当标题中存在汉字时这种转换会出现问题,使得链接失效,处理方法为:用html语言来改写标题行

例如:

原md文本中的标题行为:

### 标题

用用html语言来改写:

<a name="title"><h3>标题</h3></a>

这样就可以就可以用name参数的值"title"来作为internal navigation来进行目录跳转了

参考资料:

(1) Install 1: How to Install npm & Manage npm Versions

(2) Install 2:Node Version Manager

(2) Markdown Questions