在使用 markdownlint 进行 markdown 文档的规范检查时,我们可能需要定义一些自定义的规则。而 npm 包 markdownlint-rule-helpers 就提供了方便的工具函数,能够帮助我们更轻松地定义自己的 markdownlint 规则。
本文将带您了解 markdownlint-rule-helpers 的使用方法,让您能更好地扩展自己的 markdownlint 规则。
安装 markdownlint-rule-helpers
首先,我们需要使用 npm 安装 markdownlint-rule-helpers:
--- ------- ------------------------- ----------
使用 markdownlint-rule-helpers
markdownlint-rule-helpers 函数库提供了多个 API,可用于扩展 markdownlint 规则。下面将介绍几个常用的函数:
defaultTest
用于创建一个默认的测试对象。该函数返回一个对象,该对象用于进行测试,并在测试失败时返回错误信息。
----- - ----------- - - ------------------------------------- ----- ---------- - --------------- ------ --- ----- ----------
test
用于进行测试的基本方法。该方法接受两个参数:
testObject
:测试对象,即通过 defaultTest 创建的对象input
:要进行测试的输入字符串
----- - ---- - - ------------------------------------- ----- ---------- - --------------- ------ --- ----- ---------- ----- ----- - - - ----- ----- ---- -- - ---- -- ---------------- -------
filterTokens
用于过滤特定类型的 tokens(markdown 语法块)。该方法接受两个参数:
tokens
:要进行过滤的 token 数组types
:要保留的类型
----- - ------------ - - ------------------------------------- ----- ------ - - - ----- ---------- ----- ------ ------- ----------- - -- - ----- ------------ ----- ----- -- - ------ ----------- - -- -- ----- -------------- - -------------------- ---------------
filterTokensToBefore
用于返回从开头开始,直到指定 token 的子数组,不包括该 token。该方法接受两个参数:
tokens
:要进行过滤的 token 数组targetToken
:要截取到的 token
----- - -------------------- - - ------------------------------------- ----- ------ - - - ----- ---------- ----- ------ ------- ----------- - -- - ----- ------------ ----- ----- -- - ------ ----------- - -- -- ----- -------------- - ---------------------------- -----------
编写自己的 markdownlint 规则
现在我们已经了解了如何使用 markdownlint-rule-helpers,可以开始编写自己的 markdownlint 规则了。以下是一个示例代码:
----- - ---- - - ------------------------------------- -------------- - - ------ ------------ ------------ --- ------------ ------ ----- ---------- --------- -------- -------- -- - ----- - ----- - - ------- -------------------- ----------- -- - -- ----------------------- - --------------------------- ------ --- --- ---------- ------ --------- ----------- --- - --- -- --
使用上述示例代码,我们定义了一个名为 my-rule
的 markdownlint 规则。该规则将检查 markdown 文件中是否出现了 TODO
字符串。如果出现了,就会抛出一个错误并阻止规则被通过。
结语
本文介绍了 markdownlint-rule-helpers 的安装和使用方法,以及如何使用该库编写自己的 markdownlint 规则。希望本文能对您有所帮助,让您能够更高效地规范自己的项目文档。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedc3ceb5cbfe1ea061215b