我开始使用标记来做笔记。

我用标记来查看我的笔记,它很漂亮。

但是随着我的笔记变长,我发现很难找到我想要的东西。

我知道markdown可以创建表,但它是否能够创建目录,跳转到部分,或定义页面部分markdown?

或者,是否有降价阅读器/编辑器可以做这些事情。搜索也是一个不错的功能。

简而言之,我想让它成为我很棒的笔记工具,功能就像写一本书一样。


当前回答

有两种方法可以在你的降价文档中创建你的TOC(摘要)。

1. 手动

# My Table of content
- [Section 1](#id-section1)
- [Section 2](#id-section2)

<div id='id-section1'/>
## Section 1
<div id='id-section2'/>
## Section 2

2. 以编程方式

例如,你可以使用一个脚本,为你生成摘要,看看我的项目在github - summarizeMD -

我也尝试过其他脚本/npm模块(例如doctoc),但没有人用工作锚重现TOC。

其他回答

为了我们这些制作README的人的利益。md文件在Atom(我是如何找到这个线程的):

apm install markdown-toc

https://atom.io/packages/markdown-toc

我刚刚为python-markdown编写了一个扩展,它使用它的解析器来检索标题,并将TOC输出为带有本地链接的markdown格式的无序列表。文件是

Md_toc.py(是Md_toc.py)

... 它应该放在markdown安装的markdown/extensions/目录中。然后,你所要做的就是输入anchor <a> tags,带一个id="…"属性作为引用-对于这样的输入文本:

$ cat test.md 
Hello
=====

## <a id="sect one"></a>SECTION ONE ##

something here

### <a id='sect two'>eh</a>SECTION TWO ###

something else

#### SECTION THREE

nothing here

### <a id="four"></a>SECTION FOUR

also...

... 扩展可以这样调用:

$ python -m markdown -x md_toc test.md 
* Hello
    * [SECTION ONE](#sect one)
        * [SECTION TWO](#sect two)
            * SECTION THREE
        * [SECTION FOUR](#four)

... 然后您可以将这个toc粘贴回您的标记文档中(或者在您的文本编辑器中有一个快捷方式,在当前打开的文档上调用脚本,然后将结果toc插入到同一文档中)。

注意,旧版本的python-markdown没有__main__.py模块,因此,上面的命令行调用将不适用于这些版本。

在Visual Studio Code (VSCode)中,您可以使用扩展Markdown All In One。

安装完成后,请按照以下步骤操作:

按CTRL + SHIFT + P 选择Markdown:创建目录

编辑:现在我使用DocToc来生成目录,详见我的其他答案。

你可以使用DocToc从命令行生成目录:

doctoc /path/to/file

要使链接与Bitbucket生成的锚点兼容,请使用——Bitbucket参数运行它。

下面是一个生成目录的简单bash脚本。不需要特殊的依赖项,只需要bash。

https://github.com/Lirt/markdown-toc-bash

它可以很好地处理标题内的特殊符号,标记标题中的链接和忽略代码块。