markdownlint規(guī)則詳細(xì)介紹及自定義參數(shù)設(shè)置

markdownlint是vscode上一款非常好用的 Markdown 格式檢查擴(kuò)展工具摸柄,它規(guī)定了許多規(guī)則并實(shí)時(shí)對(duì)文檔進(jìn)行檢查,防止一些語(yǔ)法錯(cuò)誤春瞬,同時(shí)維持文檔風(fēng)格的統(tǒng)一惫确,使用此工具有助于形成一個(gè)良好的寫(xiě)作習(xí)慣和規(guī)范。但因其規(guī)則較多,寫(xiě)文檔時(shí)很容易就出錯(cuò)(或不符合規(guī)則),所以需要對(duì)工具的規(guī)則有一個(gè)詳細(xì)的了解粟关,另外纵寝,有時(shí)工作要求的文檔風(fēng)格與markdownlint工具規(guī)定的規(guī)則并不相同,比如標(biāo)題扣典、列表的創(chuàng)建格式,縮進(jìn)的空格數(shù)等等,這時(shí)就需要對(duì)規(guī)則進(jìn)行一定的設(shè)置池凄。

本文主要參考markdownlint的rules文檔,對(duì)每一個(gè)規(guī)則都進(jìn)行了說(shuō)明鬼廓,指明了一些規(guī)則中可以設(shè)置的參數(shù)肿仑,便于用戶(hù)設(shè)置相應(yīng)的規(guī)則。

MD001 - Heading levels should only increment by one level at a time

標(biāo)題級(jí)數(shù)每次只能擴(kuò)大1, 也就是不能隔級(jí)創(chuàng)建標(biāo)題(從1級(jí)到6級(jí)的順序)

MD002 - First heading should be a top level heading

文檔的第一個(gè)標(biāo)題必須是最高級(jí)的標(biāo)題(標(biāo)題等級(jí)1級(jí)到6級(jí)逐漸降低)

參數(shù):
"level":指定最高級(jí)標(biāo)題的級(jí)數(shù)碎税,默認(rèn)是1

MD003 - Heading style

整篇文檔要采用一致的標(biāo)題格式

參數(shù):
"style":字符串尤慰,指定文檔標(biāo)題的格式,有("consistent", "atx", "atx_closed", "setext", "setext_with_atx", "setext_with_atx_closed")五種雷蹂,默認(rèn)是"consistent"伟端,也就是整篇文檔一致

標(biāo)題格式必須統(tǒng)一,一般不能混用匪煌,但"setext_with_atx", "setext_with_atx_closed"格式可以在"setext"格式二級(jí)標(biāo)題后接著使用"atx"或"atx_closed"格式的標(biāo)題

MD004 - Unordered list style

整篇文檔定義無(wú)序列表的格式要一致

參數(shù):
"style":字符串责蝠,指定無(wú)序列表的定義格式,有("consistent", "asterisk", "plus", "dash", "sublist")五種萎庭,分別表示“定義時(shí)符號(hào)前后一致”玛歌,“用星號(hào)定義”,“用加號(hào)定義”擎椰,“用減號(hào)定義”支子,“定義多重列表時(shí)用不同的符號(hào)定義”,默認(rèn)是"consistent"

MD005 - Inconsistent indentation for list items at the same level

同一級(jí)的列表縮進(jìn)必須一致
在有序列表中达舒,前面的數(shù)字序號(hào)可以左對(duì)齊值朋,也可以右對(duì)齊

MD006 - Consider starting bulleted lists at the beginning of the line

1級(jí)列表不能縮進(jìn)

MD007 - Unordered list indentation

無(wú)序列表嵌套縮進(jìn)時(shí)默認(rèn)采用兩個(gè)空格

參數(shù):
"indent":指定無(wú)序列表嵌套時(shí)縮進(jìn)的空格數(shù)叹侄,默認(rèn)是2

MD009 - Trailing spaces

行尾最多可以添加兩個(gè)空格,超過(guò)會(huì)給出警告昨登,兩個(gè)空格正好可以用于換行

參數(shù):
"br_spaces":指定在行尾可以添加的空格數(shù)目趾代,空格數(shù)目建議大于等于2,如果小于2丰辣,會(huì)默認(rèn)為0撒强,也就是不允許任何行尾的空格
"list_item_empty_lines":字符串,指定在列表中是否(true or false)用默認(rèn)的空格數(shù)縮進(jìn)空行笙什,有的解釋器會(huì)要求列表中的空行要縮進(jìn)

MD010 - Hard tabs

不能使用tab鍵縮進(jìn)飘哨,要使用空格

參數(shù):
"code_blocks":指定本條規(guī)則在代碼塊里是否(true or false)生效

MD011 - Reversed link syntax

檢查內(nèi)聯(lián)形式的鏈接的創(chuàng)建方式是否錯(cuò)誤,中括號(hào)和圓括號(hào)是否用對(duì)

MD012 - Multiple consecutive blank lines

文檔中不能有連續(xù)的空行琐凭,在代碼塊中此規(guī)則不會(huì)生效

參數(shù):
"maximum":指定文檔中可以連續(xù)的最多空行數(shù)芽隆,默認(rèn)值是1

MD013 - Line length

默認(rèn)行的最大長(zhǎng)度是80,此規(guī)則對(duì)代碼塊统屈、表格胚吁、標(biāo)題也生效

參數(shù):
"line_length":指定行的最大長(zhǎng)度,默認(rèn)是80
"heading_line_length":指定標(biāo)題行的最大長(zhǎng)度愁憔,默認(rèn)是80
"code_blocks":指定規(guī)則是否(true or false)對(duì)代碼塊生效腕扶,默認(rèn)true
"tables":指定規(guī)則是否(true or false)對(duì)表格生效,默認(rèn)true
"hesdings":指定規(guī)則是否(true or false)對(duì)標(biāo)題生效吨掌,默認(rèn)true

MD014 - Dollar signs used before commands without showing output

在代碼塊中蕉毯,終端命令前不需要有美元符號(hào)($)
如果代碼塊中既有終端命令,也有命令的輸出思犁,則終端命令前可以有美元符號(hào)($),如:

$ ls
foo bar
$ cat foo
hello world

MD018 - No space after hash on atx style heading

在"atx"格式的標(biāo)題中进肯,#號(hào)和文字間需用一個(gè)空格隔開(kāi)

MD019 - Multiple spaces after hash on atx style heading

在"atx"格式的標(biāo)題中激蹲,#號(hào)和文字間只能用一個(gè)空格隔開(kāi),不能有多余的空格

MD020 - No space inside hashes on closed atx style heading

在"closed_atx"格式的標(biāo)題中江掩,文字和前后的#號(hào)之間需用一個(gè)空格隔開(kāi)

MD021 - Multiple spaces inside hashes on closed atx style heading

在"closed_atx"格式的標(biāo)題中学辱,文字和前后的#號(hào)之間只能用一個(gè)空格隔開(kāi),不能有多余的空格

MD022 - Headings should be surrounded by blank lines

標(biāo)題行的上下行必須都是空行

參數(shù):
"lines_above":指定標(biāo)題行上方的空行數(shù)环形,默認(rèn)為1策泣,可以設(shè)為更大或0
"lines_below":指定標(biāo)題行下方的空行數(shù),默認(rèn)為1抬吟,可以設(shè)為更大或0

注意當(dāng)此處的空行設(shè)為比1大的數(shù)時(shí)萨咕,規(guī)則MD012的設(shè)置也要改

MD023 - Headings must start at the beginning of the line

標(biāo)題行不能縮進(jìn)

MD024 - Multiple headings with the same content

文檔不能有內(nèi)容重復(fù)的標(biāo)題

參數(shù):
"siblings_only":默認(rèn)為false,設(shè)為true時(shí)火本,不同標(biāo)題下的子標(biāo)題內(nèi)容可以重復(fù)

MD025 - Multiple top level headings in the same document

同一文檔只能有一個(gè)最高級(jí)的標(biāo)題危队,默認(rèn)是只能有一個(gè)1級(jí)標(biāo)題

參數(shù):
"level":指定文檔最高級(jí)的標(biāo)題聪建,默認(rèn)是1
"front_matter_title":字符串,指定在文檔開(kāi)頭處的front matter中的標(biāo)題茫陆,這個(gè)標(biāo)題將作為整篇文檔的最高級(jí)標(biāo)題金麸,如果文檔中再次出現(xiàn)最高級(jí)標(biāo)題,將會(huì)給出警告簿盅,另外挥下,如果不想在front matter中指定標(biāo)題,就把本參數(shù)的值設(shè)置為""

MD026 - Trailing punctuation in heading

標(biāo)題行末尾不能有以下標(biāo)點(diǎn)符號(hào):".,;:!?"

參數(shù):
"punctuation":字符串桨醋,指定標(biāo)題行尾不能有的標(biāo)點(diǎn)符號(hào)棚瘟,默認(rèn)是".,;:!?"

此規(guī)則默認(rèn)的是英文的標(biāo)點(diǎn)符號(hào),中文標(biāo)點(diǎn)符號(hào)不在規(guī)則之內(nèi)

MD027 - Multiple spaces after blockquote symbol

創(chuàng)建引用區(qū)塊時(shí)讨盒,右尖括號(hào) ( > ) 和文字之間有且只能有一個(gè)空格

MD028 - Blank line inside blockquote

兩個(gè)引用區(qū)塊間不能僅用一個(gè)空行隔開(kāi)或者同一引用區(qū)塊中不能有空行解取,如果一行中沒(méi)有內(nèi)容,則這一行要用>開(kāi)頭

MD029 - Ordered list item prefix

有序列表的前綴序號(hào)格式必須只用1或者從1開(kāi)始的加1遞增數(shù)字("one_or_ordered")

參數(shù):
"style":字符串返顺,指定前綴序號(hào)的格式禀苦,("one","ordered","one_or_ordered","zero"),分別表示只用1做前綴遂鹊,用從1開(kāi)始的加1遞增數(shù)字做前綴振乏,只用1或者從1開(kāi)始的加1遞增數(shù)字做前綴,只用0做前綴秉扑,默認(rèn)值是"one_or_ordered"

本條規(guī)則支持在前綴序號(hào)中補(bǔ)0慧邮,以實(shí)現(xiàn)對(duì)齊,如:

...
08.  one
09.  two
10.  three
...

MD030 - Spaces after list markers

列表(有序舟陆、無(wú)序)的前綴符號(hào)和文字之間用1個(gè)空格隔開(kāi)
在列表嵌套或者同一列表項(xiàng)中有多個(gè)段落時(shí)误澳,無(wú)序列表縮進(jìn)兩個(gè)空格,有序列表縮進(jìn)3個(gè)空格

參數(shù):
"ul_single","ol_single","ul_multi","ol_multi":分別規(guī)定無(wú)序列表單個(gè)段落秦躯,有序列表單個(gè)段落忆谓,無(wú)序列表多個(gè)段落,有序列表多個(gè)段落的前綴符號(hào)和文字之間的空格數(shù)踱承,默認(rèn)是1

MD031 - Fenced code blocks should be surrounded by blank lines

單獨(dú)的代碼塊前后需要用空行隔開(kāi)(除非是在文檔開(kāi)頭或末尾)倡缠,否則有些解釋器不會(huì)解釋為代碼塊

MD032 - Lists should be surrounded by blank lines

列表(有序、無(wú)序)前后需要用空行隔開(kāi)茎活,否則有些解釋器不會(huì)解釋為列表
列表的縮進(jìn)必須一致昙沦,否則會(huì)警告

MD033 - Inline HTML

文檔中不允許使用HTML語(yǔ)句

參數(shù):
"allowed_elements":自定義允許的元素,是一個(gè)字符串?dāng)?shù)組载荔,默認(rèn)是空(empty)

MD034 - Bare URL used

單純的鏈接地址需要用尖括號(hào) (<>) 包裹盾饮,否則有些解釋器不會(huì)解釋為鏈接

MD035 - Horizontal rule style

創(chuàng)建水平線(xiàn)時(shí)整篇文檔要統(tǒng)一(consistent),要和文檔中第一次創(chuàng)建水平線(xiàn)使用的符號(hào)一致

參數(shù):
"style":字符串,指定創(chuàng)建水平線(xiàn)的方式丐谋,值有:("consistent","***","---","___")芍碧,默認(rèn)是"consistent"

MD036 - Emphasis used instead of a heading

不能用強(qiáng)調(diào)代替標(biāo)題

參數(shù):
"punctuation":字符串,指定用于結(jié)尾的標(biāo)點(diǎn)符號(hào)号俐,以此符號(hào)結(jié)尾的強(qiáng)調(diào)不會(huì)被視為以強(qiáng)調(diào)代替標(biāo)題泌豆,默認(rèn)值是".,;:!?"

此規(guī)則會(huì)檢查只包含強(qiáng)調(diào)的單行段落,如果這種段落不是以指定的標(biāo)點(diǎn)符號(hào)結(jié)尾吏饿,則會(huì)被視為以強(qiáng)調(diào)代替標(biāo)題踪危,會(huì)給出警告

MD037 - Spaces inside emphasis markers

用于創(chuàng)建強(qiáng)調(diào)的符號(hào)和強(qiáng)調(diào)的的文字之間不能有空格

MD038 - Spaces inside code span elements

當(dāng)用單反引號(hào)創(chuàng)建代碼段的時(shí)候,單反引號(hào)和它們之間的代碼不能有空格
如果要把單反引號(hào)嵌入到代碼段的首尾猪落,創(chuàng)建代碼段的單反引號(hào)和嵌入的單反引號(hào)間要有一個(gè)空格隔開(kāi)

MD039 - Spaces inside link text

鏈接名和包圍它的中括號(hào)之間不能有空格贞远,但鏈接名中間可以有空格,如:

[百 度](http://www.baidu.com "百 度")

MD040 - Fenced code blocks should have a language specified

單獨(dú)的代碼塊(此處是指上下用三個(gè)反引號(hào)包圍的代碼塊)應(yīng)該指定代碼塊的編程語(yǔ)言笨忌,這一點(diǎn)有助于解釋器對(duì)代碼進(jìn)行代碼高亮

MD041 - First line in file should be a top level heading

文檔的第一個(gè)非空行應(yīng)該是文檔最高級(jí)的標(biāo)題蓝仲,默認(rèn)是1級(jí)標(biāo)題

參數(shù):
"level":指定文檔最高級(jí)的標(biāo)題,默認(rèn)是1
"front_matter_title":字符串官疲,指定在文檔開(kāi)頭處的front matter中的標(biāo)題袱结,這個(gè)標(biāo)題將作為整篇文檔的最高級(jí)標(biāo)題,另外途凫,如果不想在front matter中指定標(biāo)題垢夹,就把本參數(shù)的值設(shè)置為""

MD042 - No empty links

鏈接的地址不能為空

MD043 - Required heading structure

要求標(biāo)題遵循一定的結(jié)構(gòu),默認(rèn)是沒(méi)有規(guī)定的結(jié)構(gòu)("null")

參數(shù):
"headings":字符串?dāng)?shù)組维费,指定標(biāo)題需要遵循的結(jié)構(gòu)果元,默認(rèn)是"null",可以自行指定結(jié)構(gòu)犀盟,如而晒;

[
    "# head",
    "## item",
    "### detail",
    "*"
]

星號(hào)(*)表示對(duì)應(yīng)的標(biāo)題是可選的,沒(méi)有強(qiáng)制要求阅畴,本條具體可以參照MD043

MD044 - Proper names should have the correct capitalization

指定一些名稱(chēng)倡怎,會(huì)檢查它是否有正確的大寫(xiě)

參數(shù):
"names":字符串?dāng)?shù)組,指定要檢查需要大寫(xiě)的名稱(chēng)恶阴,默認(rèn)是空("null")
"code_blocks":指定本規(guī)則是否(true or false)對(duì)代碼塊生效,默認(rèn)是true
一些經(jīng)常使用的名稱(chēng)可以使用本規(guī)則防止其拼寫(xiě)錯(cuò)誤豹障,比如JavaScript中字母J和S需要大寫(xiě)冯事,就可以寫(xiě)到參數(shù)"names"中,防止寫(xiě)錯(cuò)

MD045 - Images should have alternate text (alt text)

圖片鏈接必須包含描述文本(alt text)

MD046 - Code block style

整篇文檔采用一致的代碼格式

參數(shù):
"style": 字符串血公,指定代碼塊定義格式昵仅,有("consistent","fenced","indented")三種,分別代表:文檔上下文一致,使用三個(gè)反引號(hào)隔開(kāi)摔笤,使用縮進(jìn)够滑,默認(rèn)是上下文一致

MD047 - Files should end with a single newline character

文檔需用一個(gè)空行結(jié)尾

參考:

rules文檔

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市吕世,隨后出現(xiàn)的幾起案子彰触,更是在濱河造成了極大的恐慌,老刑警劉巖命辖,帶你破解...
    沈念sama閱讀 216,496評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件况毅,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡尔艇,警方通過(guò)查閱死者的電腦和手機(jī)尔许,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)终娃,“玉大人味廊,你說(shuō)我怎么就攤上這事√母” “怎么了余佛?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,632評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)昧辽。 經(jīng)常有香客問(wèn)我衙熔,道長(zhǎng),這世上最難降的妖魔是什么搅荞? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,180評(píng)論 1 292
  • 正文 為了忘掉前任红氯,我火速辦了婚禮,結(jié)果婚禮上咕痛,老公的妹妹穿的比我還像新娘痢甘。我一直安慰自己,他們只是感情好茉贡,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布塞栅。 她就那樣靜靜地躺著,像睡著了一般腔丧。 火紅的嫁衣襯著肌膚如雪放椰。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,165評(píng)論 1 299
  • 那天愉粤,我揣著相機(jī)與錄音砾医,去河邊找鬼。 笑死衣厘,一個(gè)胖子當(dāng)著我的面吹牛如蚜,可吹牛的內(nèi)容都是我干的压恒。 我是一名探鬼主播,決...
    沈念sama閱讀 40,052評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼错邦,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼探赫!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起撬呢,我...
    開(kāi)封第一講書(shū)人閱讀 38,910評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤伦吠,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后倾芝,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體讨勤,經(jīng)...
    沈念sama閱讀 45,324評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評(píng)論 2 332
  • 正文 我和宋清朗相戀三年晨另,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了潭千。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,711評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡借尿,死狀恐怖刨晴,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情路翻,我是刑警寧澤狈癞,帶...
    沈念sama閱讀 35,424評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站茂契,受9級(jí)特大地震影響蝶桶,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜掉冶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評(píng)論 3 326
  • 文/蒙蒙 一真竖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧厌小,春花似錦恢共、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,668評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至癣蟋,卻和暖如春透硝,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背疯搅。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,823評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工濒生, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人秉撇。 一個(gè)月前我還...
    沈念sama閱讀 47,722評(píng)論 2 368
  • 正文 我出身青樓甜攀,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親琐馆。 傳聞我的和親對(duì)象是個(gè)殘疾皇子规阀,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容