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": "^3.4.0",
31 "@typescript-eslint/parser": "^3.4.0",
32 "coc.nvim": "^0.0.77",
33 "deep-extend": "^0.6.0",
36 "markdownlint": "^0.20.1",
37 "markdownlint-rule-helpers": "^0.11.0",
38 "npm-run-all": "^4.1.5",
41 "ts-loader": "^7.0.5",
42 "typescript": "^3.9.5",
43 "vscode-languageserver-protocol": "^3.15.3",
45 "webpack-cli": "^3.3.12"
48 "onLanguage:markdown",
49 "onCommand:markdownlint.fixLine"
54 "fileMatch": ".markdownlint.json",
55 "url": "./schemas/markdownlint-config-schema.json"
60 "language": "markdown",
61 "path": "./snippets/snippets.json"
66 "title": "coc-markdownlint configuration",
68 "markdownlint.onOpen": {
71 "description": "Lint on open a file"
73 "markdownlint.onSave": {
76 "description": "Lint on saving a file"
78 "markdownlint.onChange": {
81 "description": "Lint on changing a file"
83 "markdownlint.config": {
86 "description": "Default state for all rules",
91 "description": "Path to configuration file to extend",
96 "description": "JSON Schema URI (used by some editors)",
98 "default": "https://raw.githubusercontent.com/DavidAnson/markdownlint/master/schema/markdownlint-config-schema.json"
101 "description": "MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time",
105 "heading-increment": {
106 "description": "MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time",
110 "header-increment": {
111 "description": "MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time",
116 "description": "MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading",
124 "description": "Heading level",
129 "additionalProperties": false
131 "first-heading-h1": {
132 "description": "MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading",
140 "description": "Heading level",
145 "additionalProperties": false
148 "description": "MD002/first-heading-h1/first-header-h1 - First heading should be a top level heading",
156 "description": "Heading level",
161 "additionalProperties": false
164 "description": "MD003/heading-style/header-style - Heading style",
172 "description": "Heading style",
180 "setext_with_atx_closed"
182 "default": "consistent"
185 "additionalProperties": false
188 "description": "MD003/heading-style/header-style - Heading style",
196 "description": "Heading style",
204 "setext_with_atx_closed"
206 "default": "consistent"
209 "additionalProperties": false
212 "description": "MD003/heading-style/header-style - Heading style",
220 "description": "Heading style",
228 "setext_with_atx_closed"
230 "default": "consistent"
233 "additionalProperties": false
236 "description": "MD004/ul-style - Unordered list style",
244 "description": "List style",
253 "default": "consistent"
256 "additionalProperties": false
259 "description": "MD004/ul-style - Unordered list style",
267 "description": "List style",
276 "default": "consistent"
279 "additionalProperties": false
282 "description": "MD005/list-indent - Inconsistent indentation for list items at the same level",
287 "description": "MD005/list-indent - Inconsistent indentation for list items at the same level",
292 "description": "MD006/ul-start-left - Consider starting bulleted lists at the beginning of the line",
297 "description": "MD006/ul-start-left - Consider starting bulleted lists at the beginning of the line",
302 "description": "MD007/ul-indent - Unordered list indentation",
310 "description": "Spaces for indent",
315 "description": "Whether to indent the first level of the list",
320 "additionalProperties": false
323 "description": "MD007/ul-indent - Unordered list indentation",
331 "description": "Spaces for indent",
336 "description": "Whether to indent the first level of the list",
341 "additionalProperties": false
344 "description": "MD009/no-trailing-spaces - Trailing spaces",
352 "description": "Spaces for line break",
356 "list_item_empty_lines": {
357 "description": "Allow spaces for empty lines in list items",
362 "description": "Include unnecessary breaks",
367 "additionalProperties": false
369 "no-trailing-spaces": {
370 "description": "MD009/no-trailing-spaces - Trailing spaces",
378 "description": "Spaces for line break",
382 "list_item_empty_lines": {
383 "description": "Allow spaces for empty lines in list items",
388 "description": "Include unnecessary breaks",
393 "additionalProperties": false
396 "description": "MD010/no-hard-tabs - Hard tabs",
404 "description": "Include code blocks",
409 "additionalProperties": false
412 "description": "MD010/no-hard-tabs - Hard tabs",
420 "description": "Include code blocks",
425 "additionalProperties": false
428 "description": "MD011/no-reversed-links - Reversed link syntax",
432 "no-reversed-links": {
433 "description": "MD011/no-reversed-links - Reversed link syntax",
438 "description": "MD012/no-multiple-blanks - Multiple consecutive blank lines",
446 "description": "Consecutive blank lines",
451 "additionalProperties": false
453 "no-multiple-blanks": {
454 "description": "MD012/no-multiple-blanks - Multiple consecutive blank lines",
462 "description": "Consecutive blank lines",
467 "additionalProperties": false
470 "description": "MD013/line-length - Line length",
478 "description": "Number of characters",
482 "heading_line_length": {
483 "description": "Number of characters for headings",
487 "code_block_line_length": {
488 "description": "Number of characters for code blocks",
493 "description": "Include code blocks",
498 "description": "Include tables",
503 "description": "Include headings",
508 "description": "Include headings",
513 "description": "Strict length checking",
518 "description": "Stern length checking",
523 "additionalProperties": false
526 "description": "MD013/line-length - Line length",
534 "description": "Number of characters",
538 "heading_line_length": {
539 "description": "Number of characters for headings",
543 "code_block_line_length": {
544 "description": "Number of characters for code blocks",
549 "description": "Include code blocks",
554 "description": "Include tables",
559 "description": "Include headings",
564 "description": "Include headings",
569 "description": "Strict length checking",
574 "description": "Stern length checking",
579 "additionalProperties": false
582 "description": "MD014/commands-show-output - Dollar signs used before commands without showing output",
586 "commands-show-output": {
587 "description": "MD014/commands-show-output - Dollar signs used before commands without showing output",
592 "description": "MD018/no-missing-space-atx - No space after hash on atx style heading",
596 "no-missing-space-atx": {
597 "description": "MD018/no-missing-space-atx - No space after hash on atx style heading",
602 "description": "MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading",
606 "no-multiple-space-atx": {
607 "description": "MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading",
612 "description": "MD020/no-missing-space-closed-atx - No space inside hashes on closed atx style heading",
616 "no-missing-space-closed-atx": {
617 "description": "MD020/no-missing-space-closed-atx - No space inside hashes on closed atx style heading",
622 "description": "MD021/no-multiple-space-closed-atx - Multiple spaces inside hashes on closed atx style heading",
626 "no-multiple-space-closed-atx": {
627 "description": "MD021/no-multiple-space-closed-atx - Multiple spaces inside hashes on closed atx style heading",
632 "description": "MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines",
640 "description": "Blank lines above heading",
645 "description": "Blank lines below heading",
650 "additionalProperties": false
652 "blanks-around-headings": {
653 "description": "MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines",
661 "description": "Blank lines above heading",
666 "description": "Blank lines below heading",
671 "additionalProperties": false
673 "blanks-around-headers": {
674 "description": "MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines",
682 "description": "Blank lines above heading",
687 "description": "Blank lines below heading",
692 "additionalProperties": false
695 "description": "MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line",
699 "heading-start-left": {
700 "description": "MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line",
704 "header-start-left": {
705 "description": "MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line",
710 "description": "MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content",
717 "allow_different_nesting": {
718 "description": "Only check sibling headings",
723 "description": "Only check sibling headings",
728 "additionalProperties": false
730 "no-duplicate-heading": {
731 "description": "MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content",
738 "allow_different_nesting": {
739 "description": "Only check sibling headings",
744 "description": "Only check sibling headings",
749 "additionalProperties": false
751 "no-duplicate-header": {
752 "description": "MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content",
759 "allow_different_nesting": {
760 "description": "Only check sibling headings",
765 "description": "Only check sibling headings",
770 "additionalProperties": false
773 "description": "MD025/single-title/single-h1 - Multiple top level headings in the same document",
781 "description": "Heading level",
785 "front_matter_title": {
786 "description": "RegExp for matching title in front matter",
788 "default": "^\\s*title\\s*[:=]"
791 "additionalProperties": false
794 "description": "MD025/single-title/single-h1 - Multiple top level headings in the same document",
802 "description": "Heading level",
806 "front_matter_title": {
807 "description": "RegExp for matching title in front matter",
809 "default": "^\\s*title\\s*[:=]"
812 "additionalProperties": false
815 "description": "MD025/single-title/single-h1 - Multiple top level headings in the same document",
823 "description": "Heading level",
827 "front_matter_title": {
828 "description": "RegExp for matching title in front matter",
830 "default": "^\\s*title\\s*[:=]"
833 "additionalProperties": false
836 "description": "MD026/no-trailing-punctuation - Trailing punctuation in heading",
844 "description": "Punctuation characters",
846 "default": ".,;:!?。,;:!?"
849 "additionalProperties": false
851 "no-trailing-punctuation": {
852 "description": "MD026/no-trailing-punctuation - Trailing punctuation in heading",
860 "description": "Punctuation characters",
862 "default": ".,;:!?。,;:!?"
865 "additionalProperties": false
868 "description": "MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol",
872 "no-multiple-space-blockquote": {
873 "description": "MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol",
878 "description": "MD028/no-blanks-blockquote - Blank line inside blockquote",
882 "no-blanks-blockquote": {
883 "description": "MD028/no-blanks-blockquote - Blank line inside blockquote",
888 "description": "MD029/ol-prefix - Ordered list item prefix",
896 "description": "List style",
904 "default": "one_or_ordered"
907 "additionalProperties": false
910 "description": "MD029/ol-prefix - Ordered list item prefix",
918 "description": "List style",
926 "default": "one_or_ordered"
929 "additionalProperties": false
932 "description": "MD030/list-marker-space - Spaces after list markers",
940 "description": "Spaces for single-line unordered list items",
945 "description": "Spaces for single-line ordered list items",
950 "description": "Spaces for multi-line unordered list items",
955 "description": "Spaces for multi-line ordered list items",
960 "additionalProperties": false
962 "list-marker-space": {
963 "description": "MD030/list-marker-space - Spaces after list markers",
971 "description": "Spaces for single-line unordered list items",
976 "description": "Spaces for single-line ordered list items",
981 "description": "Spaces for multi-line unordered list items",
986 "description": "Spaces for multi-line ordered list items",
991 "additionalProperties": false
994 "description": "MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines",
1002 "description": "Include list items",
1007 "additionalProperties": false
1009 "blanks-around-fences": {
1010 "description": "MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines",
1018 "description": "Include list items",
1023 "additionalProperties": false
1026 "description": "MD032/blanks-around-lists - Lists should be surrounded by blank lines",
1030 "blanks-around-lists": {
1031 "description": "MD032/blanks-around-lists - Lists should be surrounded by blank lines",
1036 "description": "MD033/no-inline-html - Inline HTML",
1043 "allowed_elements": {
1044 "description": "Allowed elements",
1052 "additionalProperties": false
1055 "description": "MD033/no-inline-html - Inline HTML",
1062 "allowed_elements": {
1063 "description": "Allowed elements",
1071 "additionalProperties": false
1074 "description": "MD034/no-bare-urls - Bare URL used",
1079 "description": "MD034/no-bare-urls - Bare URL used",
1084 "description": "MD035/hr-style - Horizontal rule style",
1092 "description": "Horizontal rule style",
1094 "default": "consistent"
1097 "additionalProperties": false
1100 "description": "MD035/hr-style - Horizontal rule style",
1108 "description": "Horizontal rule style",
1110 "default": "consistent"
1113 "additionalProperties": false
1116 "description": "MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading",
1124 "description": "Punctuation characters",
1126 "default": ".,;:!?。,;:!?"
1129 "additionalProperties": false
1131 "no-emphasis-as-heading": {
1132 "description": "MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading",
1140 "description": "Punctuation characters",
1142 "default": ".,;:!?。,;:!?"
1145 "additionalProperties": false
1147 "no-emphasis-as-header": {
1148 "description": "MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading",
1156 "description": "Punctuation characters",
1158 "default": ".,;:!?。,;:!?"
1161 "additionalProperties": false
1164 "description": "MD037/no-space-in-emphasis - Spaces inside emphasis markers",
1168 "no-space-in-emphasis": {
1169 "description": "MD037/no-space-in-emphasis - Spaces inside emphasis markers",
1174 "description": "MD038/no-space-in-code - Spaces inside code span elements",
1178 "no-space-in-code": {
1179 "description": "MD038/no-space-in-code - Spaces inside code span elements",
1184 "description": "MD039/no-space-in-links - Spaces inside link text",
1188 "no-space-in-links": {
1189 "description": "MD039/no-space-in-links - Spaces inside link text",
1194 "description": "MD040/fenced-code-language - Fenced code blocks should have a language specified",
1198 "fenced-code-language": {
1199 "description": "MD040/fenced-code-language - Fenced code blocks should have a language specified",
1204 "description": "MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading",
1212 "description": "Heading level",
1216 "front_matter_title": {
1217 "description": "RegExp for matching title in front matter",
1219 "default": "^\\s*title\\s*[:=]"
1222 "additionalProperties": false
1224 "first-line-heading": {
1225 "description": "MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading",
1233 "description": "Heading level",
1237 "front_matter_title": {
1238 "description": "RegExp for matching title in front matter",
1240 "default": "^\\s*title\\s*[:=]"
1243 "additionalProperties": false
1246 "description": "MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading",
1254 "description": "Heading level",
1258 "front_matter_title": {
1259 "description": "RegExp for matching title in front matter",
1261 "default": "^\\s*title\\s*[:=]"
1264 "additionalProperties": false
1267 "description": "MD042/no-empty-links - No empty links",
1272 "description": "MD042/no-empty-links - No empty links",
1277 "description": "MD043/required-headings/required-headers - Required heading structure",
1285 "description": "List of headings",
1293 "description": "List of headings",
1301 "additionalProperties": false
1303 "required-headings": {
1304 "description": "MD043/required-headings/required-headers - Required heading structure",
1312 "description": "List of headings",
1320 "description": "List of headings",
1328 "additionalProperties": false
1330 "required-headers": {
1331 "description": "MD043/required-headings/required-headers - Required heading structure",
1339 "description": "List of headings",
1347 "description": "List of headings",
1355 "additionalProperties": false
1358 "description": "MD044/proper-names - Proper names should have the correct capitalization",
1366 "description": "List of proper names",
1374 "description": "Include code blocks",
1379 "additionalProperties": false
1382 "description": "MD044/proper-names - Proper names should have the correct capitalization",
1390 "description": "List of proper names",
1398 "description": "Include code blocks",
1403 "additionalProperties": false
1406 "description": "MD045/no-alt-text - Images should have alternate text (alt text)",
1411 "description": "MD045/no-alt-text - Images should have alternate text (alt text)",
1416 "description": "MD046/code-block-style - Code block style",
1424 "description": "Block style",
1431 "default": "consistent"
1434 "additionalProperties": false
1436 "code-block-style": {
1437 "description": "MD046/code-block-style - Code block style",
1445 "description": "Block style",
1452 "default": "consistent"
1455 "additionalProperties": false
1458 "description": "MD047/single-trailing-newline - Files should end with a single newline character",
1462 "single-trailing-newline": {
1463 "description": "MD047/single-trailing-newline - Files should end with a single newline character",
1468 "description": "MD048/code-fence-style - Code fence style",
1476 "description": "Code fence syle",
1483 "default": "consistent"
1486 "additionalProperties": false
1488 "code-fence-style": {
1489 "description": "MD048/code-fence-style - Code fence style",
1497 "description": "Code fence syle",
1504 "default": "consistent"
1507 "additionalProperties": false
1510 "description": "headings - MD001, MD002, MD003, MD018, MD019, MD020, MD021, MD022, MD023, MD024, MD025, MD026, MD036, MD041, MD043",
1515 "description": "headers - MD001, MD002, MD003, MD018, MD019, MD020, MD021, MD022, MD023, MD024, MD025, MD026, MD036, MD041, MD043",
1520 "description": "bullet - MD004, MD005, MD006, MD007, MD032",
1525 "description": "ul - MD004, MD005, MD006, MD007, MD030, MD032",
1530 "description": "indentation - MD005, MD006, MD007, MD027",
1535 "description": "whitespace - MD009, MD010, MD012, MD027, MD028, MD030, MD037, MD038, MD039",
1540 "description": "hard_tab - MD010",
1545 "description": "links - MD011, MD034, MD039, MD042",
1550 "description": "blank_lines - MD012, MD022, MD031, MD032, MD047",
1555 "description": "line_length - MD013",
1560 "description": "code - MD014, MD031, MD038, MD040, MD046, MD048",
1565 "description": "atx - MD018, MD019",
1570 "description": "spaces - MD018, MD019, MD020, MD021, MD023",
1575 "description": "atx_closed - MD020, MD021",
1580 "description": "blockquote - MD027, MD028",
1585 "description": "ol - MD029, MD030, MD032",
1590 "description": "html - MD033",
1595 "description": "url - MD034",
1600 "description": "hr - MD035",
1605 "description": "emphasis - MD036, MD037",
1610 "description": "language - MD040",
1615 "description": "spelling - MD044",
1620 "description": "accessibility - MD045",
1625 "description": "images - MD045",
1635 "command": "markdownlint.fixAll",
1636 "title": "Fix all errors found by markdownlint"