2 "name": "coc-markdownlint",
4 "description": "Markdownlint extension for coc.nvim",
5 "author": "Heyward Fann <fannheyward@gmail.com>",
7 "main": "lib/index.js",
15 "clean": "rimraf lib",
16 "watch": "webpack --watch",
17 "lint": "eslint src --ext ts",
18 "build": "webpack && node ./generate-config-schema.js",
19 "prepare": "npm-run-all clean build"
23 "url": "https://github.com/fannheyward/coc-markdownlint.git"
26 "@types/deep-extend": "^0.4.31",
27 "@types/js-yaml": "^3.12.5",
28 "@types/node": "^14.0.14",
29 "@types/rc": "^1.1.0",
30 "@typescript-eslint/eslint-plugin": "^4.3.0",
31 "@typescript-eslint/parser": "^4.3.0",
32 "coc.nvim": "^0.0.79",
33 "deep-extend": "^0.6.0",
36 "markdownlint": "^0.22.0",
37 "markdownlint-rule-helpers": "^0.13.0",
38 "npm-run-all": "^4.1.5",
41 "ts-loader": "^8.0.0",
42 "typescript": "^4.0.2",
43 "vscode-languageserver-protocol": "^3.15.3",
44 "vscode-languageserver-textdocument": "^1.0.1",
46 "webpack-cli": "^4.0.0"
49 "onLanguage:markdown",
50 "onCommand:markdownlint.fixLine"
55 "fileMatch": ".markdownlint.json",
56 "url": "./schemas/markdownlint-config-schema.json"
61 "language": "markdown",
62 "path": "./snippets/snippets.json"
67 "title": "coc-markdownlint configuration",
69 "markdownlint.onOpen": {
72 "description": "Lint on open a file"
74 "markdownlint.onSave": {
77 "description": "Lint on saving a file"
79 "markdownlint.onChange": {
82 "description": "Lint on changing a file"
84 "markdownlint.config": {
87 "description": "Default state for all rules",
92 "description": "Path to configuration file to extend",
97 "description": "JSON Schema URI (used by some editors)",
99 "default": "https://raw.githubusercontent.com/DavidAnson/markdownlint/main/schema/markdownlint-config-schema.json"
102 "description": "MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time",
106 "heading-increment": {
107 "description": "MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time",
111 "header-increment": {
112 "description": "MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time",
117 "description": "MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading",
125 "description": "Heading level",
130 "additionalProperties": false
132 "first-heading-h1": {
133 "description": "MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading",
141 "description": "Heading level",
146 "additionalProperties": false
149 "description": "MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading",
157 "description": "Heading level",
162 "additionalProperties": false
165 "description": "MD003/heading-style/header-style - Heading style",
173 "description": "Heading style",
181 "setext_with_atx_closed"
183 "default": "consistent"
186 "additionalProperties": false
189 "description": "MD003/heading-style/header-style - Heading style",
197 "description": "Heading style",
205 "setext_with_atx_closed"
207 "default": "consistent"
210 "additionalProperties": false
213 "description": "MD003/heading-style/header-style - Heading style",
221 "description": "Heading style",
229 "setext_with_atx_closed"
231 "default": "consistent"
234 "additionalProperties": false
237 "description": "MD004/ul-style - Unordered list style",
245 "description": "List style",
254 "default": "consistent"
257 "additionalProperties": false
260 "description": "MD004/ul-style - Unordered list style",
268 "description": "List style",
277 "default": "consistent"
280 "additionalProperties": false
283 "description": "MD005/list-indent - Inconsistent indentation for list items at the same level",
288 "description": "MD005/list-indent - Inconsistent indentation for list items at the same level",
293 "description": "MD006/ul-start-left - Consider starting bulleted lists at the beginning of the line",
298 "description": "MD006/ul-start-left - Consider starting bulleted lists at the beginning of the line",
303 "description": "MD007/ul-indent - Unordered list indentation",
311 "description": "Spaces for indent",
316 "description": "Whether to indent the first level of the list",
321 "additionalProperties": false
324 "description": "MD007/ul-indent - Unordered list indentation",
332 "description": "Spaces for indent",
337 "description": "Whether to indent the first level of the list",
342 "additionalProperties": false
345 "description": "MD009/no-trailing-spaces - Trailing spaces",
353 "description": "Spaces for line break",
357 "list_item_empty_lines": {
358 "description": "Allow spaces for empty lines in list items",
363 "description": "Include unnecessary breaks",
368 "additionalProperties": false
370 "no-trailing-spaces": {
371 "description": "MD009/no-trailing-spaces - Trailing spaces",
379 "description": "Spaces for line break",
383 "list_item_empty_lines": {
384 "description": "Allow spaces for empty lines in list items",
389 "description": "Include unnecessary breaks",
394 "additionalProperties": false
397 "description": "MD010/no-hard-tabs - Hard tabs",
405 "description": "Include code blocks",
410 "additionalProperties": false
413 "description": "MD010/no-hard-tabs - Hard tabs",
421 "description": "Include code blocks",
426 "additionalProperties": false
429 "description": "MD011/no-reversed-links - Reversed link syntax",
433 "no-reversed-links": {
434 "description": "MD011/no-reversed-links - Reversed link syntax",
439 "description": "MD012/no-multiple-blanks - Multiple consecutive blank lines",
447 "description": "Consecutive blank lines",
452 "additionalProperties": false
454 "no-multiple-blanks": {
455 "description": "MD012/no-multiple-blanks - Multiple consecutive blank lines",
463 "description": "Consecutive blank lines",
468 "additionalProperties": false
471 "description": "MD013/line-length - Line length",
479 "description": "Number of characters",
483 "heading_line_length": {
484 "description": "Number of characters for headings",
488 "code_block_line_length": {
489 "description": "Number of characters for code blocks",
494 "description": "Include code blocks",
499 "description": "Include tables",
504 "description": "Include headings",
509 "description": "Include headings",
514 "description": "Strict length checking",
519 "description": "Stern length checking",
524 "additionalProperties": false
527 "description": "MD013/line-length - Line length",
535 "description": "Number of characters",
539 "heading_line_length": {
540 "description": "Number of characters for headings",
544 "code_block_line_length": {
545 "description": "Number of characters for code blocks",
550 "description": "Include code blocks",
555 "description": "Include tables",
560 "description": "Include headings",
565 "description": "Include headings",
570 "description": "Strict length checking",
575 "description": "Stern length checking",
580 "additionalProperties": false
583 "description": "MD014/commands-show-output - Dollar signs used before commands without showing output",
587 "commands-show-output": {
588 "description": "MD014/commands-show-output - Dollar signs used before commands without showing output",
593 "description": "MD018/no-missing-space-atx - No space after hash on atx style heading",
597 "no-missing-space-atx": {
598 "description": "MD018/no-missing-space-atx - No space after hash on atx style heading",
603 "description": "MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading",
607 "no-multiple-space-atx": {
608 "description": "MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading",
613 "description": "MD020/no-missing-space-closed-atx - No space inside hashes on closed atx style heading",
617 "no-missing-space-closed-atx": {
618 "description": "MD020/no-missing-space-closed-atx - No space inside hashes on closed atx style heading",
623 "description": "MD021/no-multiple-space-closed-atx - Multiple spaces inside hashes on closed atx style heading",
627 "no-multiple-space-closed-atx": {
628 "description": "MD021/no-multiple-space-closed-atx - Multiple spaces inside hashes on closed atx style heading",
633 "description": "MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines",
641 "description": "Blank lines above heading",
646 "description": "Blank lines below heading",
651 "additionalProperties": false
653 "blanks-around-headings": {
654 "description": "MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines",
662 "description": "Blank lines above heading",
667 "description": "Blank lines below heading",
672 "additionalProperties": false
674 "blanks-around-headers": {
675 "description": "MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines",
683 "description": "Blank lines above heading",
688 "description": "Blank lines below heading",
693 "additionalProperties": false
696 "description": "MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line",
700 "heading-start-left": {
701 "description": "MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line",
705 "header-start-left": {
706 "description": "MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line",
711 "description": "MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content",
718 "allow_different_nesting": {
719 "description": "Only check sibling headings",
724 "description": "Only check sibling headings",
729 "additionalProperties": false
731 "no-duplicate-heading": {
732 "description": "MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content",
739 "allow_different_nesting": {
740 "description": "Only check sibling headings",
745 "description": "Only check sibling headings",
750 "additionalProperties": false
752 "no-duplicate-header": {
753 "description": "MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content",
760 "allow_different_nesting": {
761 "description": "Only check sibling headings",
766 "description": "Only check sibling headings",
771 "additionalProperties": false
774 "description": "MD025/single-title/single-h1 - Multiple top level headings in the same document",
782 "description": "Heading level",
786 "front_matter_title": {
787 "description": "RegExp for matching title in front matter",
789 "default": "^\\s*title\\s*[:=]"
792 "additionalProperties": false
795 "description": "MD025/single-title/single-h1 - Multiple top level headings in the same document",
803 "description": "Heading level",
807 "front_matter_title": {
808 "description": "RegExp for matching title in front matter",
810 "default": "^\\s*title\\s*[:=]"
813 "additionalProperties": false
816 "description": "MD025/single-title/single-h1 - Multiple top level headings in the same document",
824 "description": "Heading level",
828 "front_matter_title": {
829 "description": "RegExp for matching title in front matter",
831 "default": "^\\s*title\\s*[:=]"
834 "additionalProperties": false
837 "description": "MD026/no-trailing-punctuation - Trailing punctuation in heading",
845 "description": "Punctuation characters",
847 "default": ".,;:!。,;:!"
850 "additionalProperties": false
852 "no-trailing-punctuation": {
853 "description": "MD026/no-trailing-punctuation - Trailing punctuation in heading",
861 "description": "Punctuation characters",
863 "default": ".,;:!。,;:!"
866 "additionalProperties": false
869 "description": "MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol",
873 "no-multiple-space-blockquote": {
874 "description": "MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol",
879 "description": "MD028/no-blanks-blockquote - Blank line inside blockquote",
883 "no-blanks-blockquote": {
884 "description": "MD028/no-blanks-blockquote - Blank line inside blockquote",
889 "description": "MD029/ol-prefix - Ordered list item prefix",
897 "description": "List style",
905 "default": "one_or_ordered"
908 "additionalProperties": false
911 "description": "MD029/ol-prefix - Ordered list item prefix",
919 "description": "List style",
927 "default": "one_or_ordered"
930 "additionalProperties": false
933 "description": "MD030/list-marker-space - Spaces after list markers",
941 "description": "Spaces for single-line unordered list items",
946 "description": "Spaces for single-line ordered list items",
951 "description": "Spaces for multi-line unordered list items",
956 "description": "Spaces for multi-line ordered list items",
961 "additionalProperties": false
963 "list-marker-space": {
964 "description": "MD030/list-marker-space - Spaces after list markers",
972 "description": "Spaces for single-line unordered list items",
977 "description": "Spaces for single-line ordered list items",
982 "description": "Spaces for multi-line unordered list items",
987 "description": "Spaces for multi-line ordered list items",
992 "additionalProperties": false
995 "description": "MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines",
1003 "description": "Include list items",
1008 "additionalProperties": false
1010 "blanks-around-fences": {
1011 "description": "MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines",
1019 "description": "Include list items",
1024 "additionalProperties": false
1027 "description": "MD032/blanks-around-lists - Lists should be surrounded by blank lines",
1031 "blanks-around-lists": {
1032 "description": "MD032/blanks-around-lists - Lists should be surrounded by blank lines",
1037 "description": "MD033/no-inline-html - Inline HTML",
1044 "allowed_elements": {
1045 "description": "Allowed elements",
1053 "additionalProperties": false
1056 "description": "MD033/no-inline-html - Inline HTML",
1063 "allowed_elements": {
1064 "description": "Allowed elements",
1072 "additionalProperties": false
1075 "description": "MD034/no-bare-urls - Bare URL used",
1080 "description": "MD034/no-bare-urls - Bare URL used",
1085 "description": "MD035/hr-style - Horizontal rule style",
1093 "description": "Horizontal rule style",
1095 "default": "consistent"
1098 "additionalProperties": false
1101 "description": "MD035/hr-style - Horizontal rule style",
1109 "description": "Horizontal rule style",
1111 "default": "consistent"
1114 "additionalProperties": false
1117 "description": "MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading",
1125 "description": "Punctuation characters",
1127 "default": ".,;:!?。,;:!?"
1130 "additionalProperties": false
1132 "no-emphasis-as-heading": {
1133 "description": "MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading",
1141 "description": "Punctuation characters",
1143 "default": ".,;:!?。,;:!?"
1146 "additionalProperties": false
1148 "no-emphasis-as-header": {
1149 "description": "MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading",
1157 "description": "Punctuation characters",
1159 "default": ".,;:!?。,;:!?"
1162 "additionalProperties": false
1165 "description": "MD037/no-space-in-emphasis - Spaces inside emphasis markers",
1169 "no-space-in-emphasis": {
1170 "description": "MD037/no-space-in-emphasis - Spaces inside emphasis markers",
1175 "description": "MD038/no-space-in-code - Spaces inside code span elements",
1179 "no-space-in-code": {
1180 "description": "MD038/no-space-in-code - Spaces inside code span elements",
1185 "description": "MD039/no-space-in-links - Spaces inside link text",
1189 "no-space-in-links": {
1190 "description": "MD039/no-space-in-links - Spaces inside link text",
1195 "description": "MD040/fenced-code-language - Fenced code blocks should have a language specified",
1199 "fenced-code-language": {
1200 "description": "MD040/fenced-code-language - Fenced code blocks should have a language specified",
1205 "description": "MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading",
1213 "description": "Heading level",
1217 "front_matter_title": {
1218 "description": "RegExp for matching title in front matter",
1220 "default": "^\\s*title\\s*[:=]"
1223 "additionalProperties": false
1225 "first-line-heading": {
1226 "description": "MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading",
1234 "description": "Heading level",
1238 "front_matter_title": {
1239 "description": "RegExp for matching title in front matter",
1241 "default": "^\\s*title\\s*[:=]"
1244 "additionalProperties": false
1247 "description": "MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading",
1255 "description": "Heading level",
1259 "front_matter_title": {
1260 "description": "RegExp for matching title in front matter",
1262 "default": "^\\s*title\\s*[:=]"
1265 "additionalProperties": false
1268 "description": "MD042/no-empty-links - No empty links",
1273 "description": "MD042/no-empty-links - No empty links",
1278 "description": "MD043/required-headings/required-headers - Required heading structure",
1286 "description": "List of headings",
1294 "description": "List of headings",
1302 "additionalProperties": false
1304 "required-headings": {
1305 "description": "MD043/required-headings/required-headers - Required heading structure",
1313 "description": "List of headings",
1321 "description": "List of headings",
1329 "additionalProperties": false
1331 "required-headers": {
1332 "description": "MD043/required-headings/required-headers - Required heading structure",
1340 "description": "List of headings",
1348 "description": "List of headings",
1356 "additionalProperties": false
1359 "description": "MD044/proper-names - Proper names should have the correct capitalization",
1367 "description": "List of proper names",
1375 "description": "Include code blocks",
1380 "additionalProperties": false
1383 "description": "MD044/proper-names - Proper names should have the correct capitalization",
1391 "description": "List of proper names",
1399 "description": "Include code blocks",
1404 "additionalProperties": false
1407 "description": "MD045/no-alt-text - Images should have alternate text (alt text)",
1412 "description": "MD045/no-alt-text - Images should have alternate text (alt text)",
1417 "description": "MD046/code-block-style - Code block style",
1425 "description": "Block style",
1432 "default": "consistent"
1435 "additionalProperties": false
1437 "code-block-style": {
1438 "description": "MD046/code-block-style - Code block style",
1446 "description": "Block style",
1453 "default": "consistent"
1456 "additionalProperties": false
1459 "description": "MD047/single-trailing-newline - Files should end with a single newline character",
1463 "single-trailing-newline": {
1464 "description": "MD047/single-trailing-newline - Files should end with a single newline character",
1469 "description": "MD048/code-fence-style - Code fence style",
1477 "description": "Code fence syle",
1484 "default": "consistent"
1487 "additionalProperties": false
1489 "code-fence-style": {
1490 "description": "MD048/code-fence-style - Code fence style",
1498 "description": "Code fence syle",
1505 "default": "consistent"
1508 "additionalProperties": false
1511 "description": "headings - MD001, MD002, MD003, MD018, MD019, MD020, MD021, MD022, MD023, MD024, MD025, MD026, MD036, MD041, MD043",
1516 "description": "headers - MD001, MD002, MD003, MD018, MD019, MD020, MD021, MD022, MD023, MD024, MD025, MD026, MD036, MD041, MD043",
1521 "description": "bullet - MD004, MD005, MD006, MD007, MD032",
1526 "description": "ul - MD004, MD005, MD006, MD007, MD030, MD032",
1531 "description": "indentation - MD005, MD006, MD007, MD027",
1536 "description": "whitespace - MD009, MD010, MD012, MD027, MD028, MD030, MD037, MD038, MD039",
1541 "description": "hard_tab - MD010",
1546 "description": "links - MD011, MD034, MD039, MD042",
1551 "description": "blank_lines - MD012, MD022, MD031, MD032, MD047",
1556 "description": "line_length - MD013",
1561 "description": "code - MD014, MD031, MD038, MD040, MD046, MD048",
1566 "description": "atx - MD018, MD019",
1571 "description": "spaces - MD018, MD019, MD020, MD021, MD023",
1576 "description": "atx_closed - MD020, MD021",
1581 "description": "blockquote - MD027, MD028",
1586 "description": "ol - MD029, MD030, MD032",
1591 "description": "html - MD033",
1596 "description": "url - MD034",
1601 "description": "hr - MD035",
1606 "description": "emphasis - MD036, MD037",
1611 "description": "language - MD040",
1616 "description": "spelling - MD044",
1621 "description": "accessibility - MD045",
1626 "description": "images - MD045",
1636 "command": "markdownlint.fixAll",
1637 "title": "Fix all errors found by markdownlint"