@alexlit/lint-kit 107.3.0 → 108.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. package/.eslintrc.cjs +7 -1
  2. package/.linthtmlrc.cjs +3 -1
  3. package/{.commitlintrc.cjs → commitlint.config.js} +1 -1
  4. package/package.json +5 -5
  5. package/packages/config-commitlint/LICENSE +20 -0
  6. package/packages/config-commitlint/README.md +5 -9
  7. package/packages/config-commitlint/index.js +1 -1
  8. package/packages/config-commitlint/package.json +4 -3
  9. package/packages/config-eslint/LICENSE +20 -0
  10. package/packages/config-eslint/index.js +12 -2
  11. package/packages/config-eslint/package.json +25 -25
  12. package/packages/config-eslint/plugins/typescript/index.js +1 -1
  13. package/packages/config-eslint/plugins/unicorn.js +2 -0
  14. package/packages/config-eslint/plugins/vue.js +34 -2
  15. package/packages/config-hooks/LICENSE +20 -0
  16. package/packages/config-hooks/README.md +18 -12
  17. package/packages/config-hooks/index.js +2 -0
  18. package/packages/config-hooks/lint-staged.js +1 -1
  19. package/packages/config-hooks/package.json +6 -5
  20. package/packages/config-htmllint/LICENSE +20 -0
  21. package/packages/config-markdownlint/LICENSE +20 -0
  22. package/packages/config-markdownlint/package.json +3 -3
  23. package/packages/config-npmlint/LICENSE +20 -0
  24. package/packages/config-npmlint/package.json +2 -2
  25. package/packages/config-prettier/LICENSE +20 -0
  26. package/packages/config-prettier/README.md +8 -3
  27. package/packages/config-prettier/index.js +14 -10
  28. package/packages/config-prettier/package.json +16 -12
  29. package/packages/config-prettier/plugins/jsdoc.js +1 -1
  30. package/packages/config-prettier/plugins/pug.js +1 -1
  31. package/packages/config-prettier/plugins/sort-json.js +1 -1
  32. package/packages/config-prettier/plugins/svelte.js +1 -1
  33. package/packages/config-prettier/plugins/tailwindcss.js +1 -1
  34. package/packages/config-prettier/plugins/xml.js +1 -1
  35. package/packages/config-stylelint/LICENSE +20 -0
  36. package/packages/config-stylelint/README.md +5 -4
  37. package/packages/config-stylelint/index.js +22 -25
  38. package/packages/config-stylelint/package.json +22 -18
  39. package/packages/config-stylelint/plugins/a11y.js +1 -1
  40. package/packages/config-stylelint/plugins/at-rule-no-children.js +1 -1
  41. package/packages/config-stylelint/plugins/color-format.js +1 -1
  42. package/packages/config-stylelint/plugins/declaration-block-no-ignored-properties.js +1 -1
  43. package/packages/config-stylelint/plugins/high-performance-animation.js +1 -1
  44. package/packages/config-stylelint/plugins/no-nested-media.js +1 -1
  45. package/packages/config-stylelint/plugins/no-unresolved-module.js +1 -1
  46. package/packages/config-stylelint/plugins/no-unsupported-browser-features.js +1 -1
  47. package/packages/config-stylelint/plugins/optional/gamut.js +1 -1
  48. package/packages/config-stylelint/plugins/optional/logical-css.js +1 -1
  49. package/packages/config-stylelint/plugins/optional/no-indistinguishable-colors.js +1 -1
  50. package/packages/config-stylelint/plugins/order.js +1 -1
  51. package/packages/config-stylelint/plugins/prettier.js +1 -1
  52. package/packages/config-stylelint/plugins/scss.js +1 -1
  53. package/packages/config-stylelint/plugins/selector-no-empty.js +1 -1
  54. package/packages/config-stylelint/plugins/use-nesting.js +1 -1
  55. package/packages/config-stylelint/plugins/vue.js +1 -1
  56. package/prettier.config.js +5 -0
  57. package/stylelint.config.js +14 -0
  58. package/.huskyrc.cjs +0 -3
  59. package/.lintstagedrc.cjs +0 -3
  60. package/.prettierrc.cjs +0 -3
  61. package/.stylelintrc.cjs +0 -4
  62. package/packages/config-hooks/husky.js +0 -6
  63. package/packages/config-markdownlint/node_modules/markdown-it/LICENSE +0 -22
  64. package/packages/config-markdownlint/node_modules/markdown-it/README.md +0 -309
  65. package/packages/config-markdownlint/node_modules/markdown-it/bin/markdown-it.js +0 -117
  66. package/packages/config-markdownlint/node_modules/markdown-it/dist/markdown-it.js +0 -8441
  67. package/packages/config-markdownlint/node_modules/markdown-it/dist/markdown-it.min.js +0 -3
  68. package/packages/config-markdownlint/node_modules/markdown-it/index.js +0 -4
  69. package/packages/config-markdownlint/node_modules/markdown-it/lib/common/entities.js +0 -6
  70. package/packages/config-markdownlint/node_modules/markdown-it/lib/common/html_blocks.js +0 -70
  71. package/packages/config-markdownlint/node_modules/markdown-it/lib/common/html_re.js +0 -28
  72. package/packages/config-markdownlint/node_modules/markdown-it/lib/common/utils.js +0 -317
  73. package/packages/config-markdownlint/node_modules/markdown-it/lib/helpers/index.js +0 -7
  74. package/packages/config-markdownlint/node_modules/markdown-it/lib/helpers/parse_link_destination.js +0 -80
  75. package/packages/config-markdownlint/node_modules/markdown-it/lib/helpers/parse_link_label.js +0 -48
  76. package/packages/config-markdownlint/node_modules/markdown-it/lib/helpers/parse_link_title.js +0 -55
  77. package/packages/config-markdownlint/node_modules/markdown-it/lib/index.js +0 -582
  78. package/packages/config-markdownlint/node_modules/markdown-it/lib/parser_block.js +0 -131
  79. package/packages/config-markdownlint/node_modules/markdown-it/lib/parser_core.js +0 -61
  80. package/packages/config-markdownlint/node_modules/markdown-it/lib/parser_inline.js +0 -192
  81. package/packages/config-markdownlint/node_modules/markdown-it/lib/presets/commonmark.js +0 -81
  82. package/packages/config-markdownlint/node_modules/markdown-it/lib/presets/default.js +0 -41
  83. package/packages/config-markdownlint/node_modules/markdown-it/lib/presets/zero.js +0 -63
  84. package/packages/config-markdownlint/node_modules/markdown-it/lib/renderer.js +0 -341
  85. package/packages/config-markdownlint/node_modules/markdown-it/lib/ruler.js +0 -352
  86. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/blockquote.js +0 -226
  87. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/code.js +0 -34
  88. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/fence.js +0 -98
  89. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/heading.js +0 -55
  90. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/hr.js +0 -45
  91. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/html_block.js +0 -74
  92. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/lheading.js +0 -83
  93. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/list.js +0 -362
  94. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/paragraph.js +0 -51
  95. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/reference.js +0 -198
  96. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/state_block.js +0 -231
  97. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_block/table.js +0 -221
  98. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/block.js +0 -16
  99. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/inline.js +0 -13
  100. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/linkify.js +0 -142
  101. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/normalize.js +0 -21
  102. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/replacements.js +0 -105
  103. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/smartquotes.js +0 -201
  104. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/state_core.js +0 -20
  105. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_core/text_join.js +0 -45
  106. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/autolink.js +0 -76
  107. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/backticks.js +0 -63
  108. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/balance_pairs.js +0 -130
  109. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/emphasis.js +0 -130
  110. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/entity.js +0 -55
  111. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/escape.js +0 -71
  112. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/fragments_join.js +0 -41
  113. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/html_inline.js +0 -58
  114. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/image.js +0 -152
  115. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/link.js +0 -150
  116. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/linkify.js +0 -62
  117. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/newline.js +0 -46
  118. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/state_inline.js +0 -158
  119. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/strikethrough.js +0 -130
  120. package/packages/config-markdownlint/node_modules/markdown-it/lib/rules_inline/text.js +0 -89
  121. package/packages/config-markdownlint/node_modules/markdown-it/lib/token.js +0 -201
  122. package/packages/config-markdownlint/node_modules/markdown-it/package.json +0 -87
  123. package/packages/config-markdownlint/node_modules/markdownlint/CHANGELOG.md +0 -428
  124. package/packages/config-markdownlint/node_modules/markdownlint/CONTRIBUTING.md +0 -92
  125. package/packages/config-markdownlint/node_modules/markdownlint/LICENSE +0 -21
  126. package/packages/config-markdownlint/node_modules/markdownlint/README.md +0 -1026
  127. package/packages/config-markdownlint/node_modules/markdownlint/demo/markdownlint-browser.js +0 -6814
  128. package/packages/config-markdownlint/node_modules/markdownlint/doc/CustomRules.md +0 -376
  129. package/packages/config-markdownlint/node_modules/markdownlint/doc/Prettier.md +0 -27
  130. package/packages/config-markdownlint/node_modules/markdownlint/doc/ReleaseProcess.md +0 -20
  131. package/packages/config-markdownlint/node_modules/markdownlint/doc/Rules.md +0 -2335
  132. package/packages/config-markdownlint/node_modules/markdownlint/doc/md001.md +0 -37
  133. package/packages/config-markdownlint/node_modules/markdownlint/doc/md003.md +0 -59
  134. package/packages/config-markdownlint/node_modules/markdownlint/doc/md004.md +0 -49
  135. package/packages/config-markdownlint/node_modules/markdownlint/doc/md005.md +0 -53
  136. package/packages/config-markdownlint/node_modules/markdownlint/doc/md007.md +0 -52
  137. package/packages/config-markdownlint/node_modules/markdownlint/doc/md009.md +0 -51
  138. package/packages/config-markdownlint/node_modules/markdownlint/doc/md010.md +0 -56
  139. package/packages/config-markdownlint/node_modules/markdownlint/doc/md011.md +0 -30
  140. package/packages/config-markdownlint/node_modules/markdownlint/doc/md012.md +0 -38
  141. package/packages/config-markdownlint/node_modules/markdownlint/doc/md013.md +0 -57
  142. package/packages/config-markdownlint/node_modules/markdownlint/doc/md014.md +0 -54
  143. package/packages/config-markdownlint/node_modules/markdownlint/doc/md018.md +0 -27
  144. package/packages/config-markdownlint/node_modules/markdownlint/doc/md019.md +0 -28
  145. package/packages/config-markdownlint/node_modules/markdownlint/doc/md020.md +0 -29
  146. package/packages/config-markdownlint/node_modules/markdownlint/doc/md021.md +0 -31
  147. package/packages/config-markdownlint/node_modules/markdownlint/doc/md022.md +0 -52
  148. package/packages/config-markdownlint/node_modules/markdownlint/doc/md023.md +0 -33
  149. package/packages/config-markdownlint/node_modules/markdownlint/doc/md024.md +0 -47
  150. package/packages/config-markdownlint/node_modules/markdownlint/doc/md025.md +0 -49
  151. package/packages/config-markdownlint/node_modules/markdownlint/doc/md026.md +0 -40
  152. package/packages/config-markdownlint/node_modules/markdownlint/doc/md027.md +0 -24
  153. package/packages/config-markdownlint/node_modules/markdownlint/doc/md028.md +0 -40
  154. package/packages/config-markdownlint/node_modules/markdownlint/doc/md029.md +0 -98
  155. package/packages/config-markdownlint/node_modules/markdownlint/doc/md030.md +0 -82
  156. package/packages/config-markdownlint/node_modules/markdownlint/doc/md031.md +0 -50
  157. package/packages/config-markdownlint/node_modules/markdownlint/doc/md032.md +0 -55
  158. package/packages/config-markdownlint/node_modules/markdownlint/doc/md033.md +0 -27
  159. package/packages/config-markdownlint/node_modules/markdownlint/doc/md034.md +0 -50
  160. package/packages/config-markdownlint/node_modules/markdownlint/doc/md035.md +0 -42
  161. package/packages/config-markdownlint/node_modules/markdownlint/doc/md036.md +0 -45
  162. package/packages/config-markdownlint/node_modules/markdownlint/doc/md037.md +0 -37
  163. package/packages/config-markdownlint/node_modules/markdownlint/doc/md038.md +0 -40
  164. package/packages/config-markdownlint/node_modules/markdownlint/doc/md039.md +0 -21
  165. package/packages/config-markdownlint/node_modules/markdownlint/doc/md040.md +0 -52
  166. package/packages/config-markdownlint/node_modules/markdownlint/doc/md041.md +0 -49
  167. package/packages/config-markdownlint/node_modules/markdownlint/doc/md042.md +0 -32
  168. package/packages/config-markdownlint/node_modules/markdownlint/doc/md043.md +0 -69
  169. package/packages/config-markdownlint/node_modules/markdownlint/doc/md044.md +0 -35
  170. package/packages/config-markdownlint/node_modules/markdownlint/doc/md045.md +0 -40
  171. package/packages/config-markdownlint/node_modules/markdownlint/doc/md046.md +0 -40
  172. package/packages/config-markdownlint/node_modules/markdownlint/doc/md047.md +0 -34
  173. package/packages/config-markdownlint/node_modules/markdownlint/doc/md048.md +0 -41
  174. package/packages/config-markdownlint/node_modules/markdownlint/doc/md049.md +0 -32
  175. package/packages/config-markdownlint/node_modules/markdownlint/doc/md050.md +0 -32
  176. package/packages/config-markdownlint/node_modules/markdownlint/doc/md051.md +0 -61
  177. package/packages/config-markdownlint/node_modules/markdownlint/doc/md052.md +0 -40
  178. package/packages/config-markdownlint/node_modules/markdownlint/doc/md053.md +0 -38
  179. package/packages/config-markdownlint/node_modules/markdownlint/doc/md054.md +0 -100
  180. package/packages/config-markdownlint/node_modules/markdownlint/helpers/LICENSE +0 -21
  181. package/packages/config-markdownlint/node_modules/markdownlint/helpers/README.md +0 -70
  182. package/packages/config-markdownlint/node_modules/markdownlint/helpers/helpers.js +0 -1025
  183. package/packages/config-markdownlint/node_modules/markdownlint/helpers/micromark.cjs +0 -426
  184. package/packages/config-markdownlint/node_modules/markdownlint/helpers/package.json +0 -26
  185. package/packages/config-markdownlint/node_modules/markdownlint/helpers/shared.js +0 -10
  186. package/packages/config-markdownlint/node_modules/markdownlint/lib/cache.js +0 -21
  187. package/packages/config-markdownlint/node_modules/markdownlint/lib/configuration.d.ts +0 -1152
  188. package/packages/config-markdownlint/node_modules/markdownlint/lib/constants.js +0 -14
  189. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownlint.d.ts +0 -406
  190. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownlint.js +0 -1476
  191. package/packages/config-markdownlint/node_modules/markdownlint/lib/md001.js +0 -22
  192. package/packages/config-markdownlint/node_modules/markdownlint/lib/md003.js +0 -42
  193. package/packages/config-markdownlint/node_modules/markdownlint/lib/md004.js +0 -76
  194. package/packages/config-markdownlint/node_modules/markdownlint/lib/md005.js +0 -73
  195. package/packages/config-markdownlint/node_modules/markdownlint/lib/md007.js +0 -86
  196. package/packages/config-markdownlint/node_modules/markdownlint/lib/md009.js +0 -86
  197. package/packages/config-markdownlint/node_modules/markdownlint/lib/md010.js +0 -60
  198. package/packages/config-markdownlint/node_modules/markdownlint/lib/md011.js +0 -46
  199. package/packages/config-markdownlint/node_modules/markdownlint/lib/md012.js +0 -32
  200. package/packages/config-markdownlint/node_modules/markdownlint/lib/md013.js +0 -96
  201. package/packages/config-markdownlint/node_modules/markdownlint/lib/md014.js +0 -53
  202. package/packages/config-markdownlint/node_modules/markdownlint/lib/md018.js +0 -34
  203. package/packages/config-markdownlint/node_modules/markdownlint/lib/md019.js +0 -39
  204. package/packages/config-markdownlint/node_modules/markdownlint/lib/md020.js +0 -62
  205. package/packages/config-markdownlint/node_modules/markdownlint/lib/md021.js +0 -62
  206. package/packages/config-markdownlint/node_modules/markdownlint/lib/md022.js +0 -108
  207. package/packages/config-markdownlint/node_modules/markdownlint/lib/md023.js +0 -38
  208. package/packages/config-markdownlint/node_modules/markdownlint/lib/md024.js +0 -38
  209. package/packages/config-markdownlint/node_modules/markdownlint/lib/md025.js +0 -32
  210. package/packages/config-markdownlint/node_modules/markdownlint/lib/md026.js +0 -50
  211. package/packages/config-markdownlint/node_modules/markdownlint/lib/md027.js +0 -56
  212. package/packages/config-markdownlint/node_modules/markdownlint/lib/md028.js +0 -30
  213. package/packages/config-markdownlint/node_modules/markdownlint/lib/md029.js +0 -67
  214. package/packages/config-markdownlint/node_modules/markdownlint/lib/md030.js +0 -61
  215. package/packages/config-markdownlint/node_modules/markdownlint/lib/md031.js +0 -40
  216. package/packages/config-markdownlint/node_modules/markdownlint/lib/md032.js +0 -78
  217. package/packages/config-markdownlint/node_modules/markdownlint/lib/md033.js +0 -39
  218. package/packages/config-markdownlint/node_modules/markdownlint/lib/md034.js +0 -79
  219. package/packages/config-markdownlint/node_modules/markdownlint/lib/md035.js +0 -24
  220. package/packages/config-markdownlint/node_modules/markdownlint/lib/md036.js +0 -56
  221. package/packages/config-markdownlint/node_modules/markdownlint/lib/md037.js +0 -91
  222. package/packages/config-markdownlint/node_modules/markdownlint/lib/md038.js +0 -97
  223. package/packages/config-markdownlint/node_modules/markdownlint/lib/md039.js +0 -67
  224. package/packages/config-markdownlint/node_modules/markdownlint/lib/md040.js +0 -37
  225. package/packages/config-markdownlint/node_modules/markdownlint/lib/md041.js +0 -42
  226. package/packages/config-markdownlint/node_modules/markdownlint/lib/md042.js +0 -49
  227. package/packages/config-markdownlint/node_modules/markdownlint/lib/md043.js +0 -64
  228. package/packages/config-markdownlint/node_modules/markdownlint/lib/md044.js +0 -107
  229. package/packages/config-markdownlint/node_modules/markdownlint/lib/md045.js +0 -60
  230. package/packages/config-markdownlint/node_modules/markdownlint/lib/md046.js +0 -33
  231. package/packages/config-markdownlint/node_modules/markdownlint/lib/md047.js +0 -28
  232. package/packages/config-markdownlint/node_modules/markdownlint/lib/md048.js +0 -30
  233. package/packages/config-markdownlint/node_modules/markdownlint/lib/md049-md050.js +0 -89
  234. package/packages/config-markdownlint/node_modules/markdownlint/lib/md051.js +0 -172
  235. package/packages/config-markdownlint/node_modules/markdownlint/lib/md052.js +0 -39
  236. package/packages/config-markdownlint/node_modules/markdownlint/lib/md053.js +0 -59
  237. package/packages/config-markdownlint/node_modules/markdownlint/lib/md054.js +0 -125
  238. package/packages/config-markdownlint/node_modules/markdownlint/lib/rules.js +0 -65
  239. package/packages/config-markdownlint/node_modules/markdownlint/package.json +0 -109
  240. package/packages/config-markdownlint/node_modules/markdownlint/schema/.markdownlint.jsonc +0 -297
  241. package/packages/config-markdownlint/node_modules/markdownlint/schema/.markdownlint.yaml +0 -266
  242. package/packages/config-markdownlint/node_modules/markdownlint/schema/markdownlint-config-schema.json +0 -1762
  243. package/packages/config-markdownlint/node_modules/markdownlint/style/all.json +0 -5
  244. package/packages/config-markdownlint/node_modules/markdownlint/style/cirosantilli.json +0 -22
  245. package/packages/config-markdownlint/node_modules/markdownlint/style/prettier.json +0 -26
  246. package/packages/config-markdownlint/node_modules/markdownlint/style/relaxed.json +0 -12
  247. /package/packages/config-eslint/plugins/{security.js → optional/security.js} +0 -0
@@ -1,376 +0,0 @@
1
- # Custom Rules
2
-
3
- In addition to its built-in rules, `markdownlint` lets you enhance the linting
4
- experience by passing a list of custom rules using the [`options.customRules`
5
- property][options-custom-rules]. Custom rules can do everything the built-in
6
- rules can and are defined inline or imported from another package ([keyword
7
- `markdownlint-rule` on npm][markdownlint-rule]). Custom rules can be disabled,
8
- enabled, and customized using the same syntax as built-in rules.
9
-
10
- ## Implementing Simple Rules
11
-
12
- For simple requirements like disallowing certain characters or patterns,
13
- the community-developed
14
- [markdownlint-rule-search-replace][markdownlint-rule-search-replace]
15
- plug-in can be used.
16
- This plug-in allows anyone to create a set of simple text-replacement rules in
17
- JSON without needing to write any code.
18
-
19
- [markdownlint-rule-search-replace]: https://www.npmjs.com/package/markdownlint-rule-search-replace
20
-
21
- ## Authoring
22
-
23
- Rules are defined by a name (or multiple names), a description, an optional link
24
- to more information, one or more tags, and a function that implements the rule's
25
- behavior. That function is called once for each file/string input and is passed
26
- the parsed input and a function to log any violations.
27
-
28
- A simple rule implementation looks like:
29
-
30
- ```javascript
31
- module.exports = {
32
- "names": [ "any-blockquote" ],
33
- "description": "Rule that reports an error for any blockquote",
34
- "information": new URL("https://example.com/rules/any-blockquote"),
35
- "tags": [ "test" ],
36
- "function": function rule(params, onError) {
37
- params.parsers.markdownit.tokens.filter(function filterToken(token) {
38
- return token.type === "blockquote_open";
39
- }).forEach(function forToken(blockquote) {
40
- var lines = blockquote.map[1] - blockquote.map[0];
41
- onError({
42
- "lineNumber": blockquote.lineNumber,
43
- "detail": "Blockquote spans " + lines + " line(s).",
44
- "context": blockquote.line.substr(0, 7)
45
- });
46
- });
47
- }
48
- };
49
- ```
50
-
51
- A rule is implemented as an `Object` with one optional and four required
52
- properties:
53
-
54
- - `names` is a required `Array` of `String` values that identify the rule in
55
- output messages and config.
56
- - `description` is a required `String` value that describes the rule in output
57
- messages.
58
- - `information` is an optional (absolute) `URL` of a link to more information
59
- about the rule.
60
- - `tags` is a required `Array` of `String` values that groups related rules for
61
- easier customization.
62
- - `asynchronous` is an optional `Boolean` value that indicates whether the rule
63
- returns a `Promise` and runs asynchronously.
64
- - `function` is a required `Function` that implements the rule and is passed two
65
- parameters:
66
- - `params` is an `Object` with properties that describe the content being
67
- analyzed:
68
- - `name` is a `String` that identifies the input file/string.
69
- - `tokens` is an `Array` of [`markdown-it` `Token`s][markdown-it-token] with
70
- added `line` and `lineNumber` properties.
71
- - `lines` is an `Array` of `String` values corresponding to the lines of the
72
- input file/string.
73
- - `frontMatterLines` is an `Array` of `String` values corresponding to any
74
- front matter (not present in `lines`).
75
- - `config` is an `Object` corresponding to the rule's entry in
76
- `options.config` (if present).
77
- - `onError` is a function that takes a single `Object` parameter with one
78
- required and four optional properties:
79
- - `lineNumber` is a required `Number` specifying the 1-based line number of
80
- the error.
81
- - `detail` is an optional `String` with information about what caused the
82
- error.
83
- - `context` is an optional `String` with relevant text surrounding the error
84
- location.
85
- - `information` is an optional (absolute) `URL` of a link to override the
86
- same-named value provided by the rule definition. (Uncommon)
87
- - `range` is an optional `Array` with two `Number` values identifying the
88
- 1-based column and length of the error.
89
- - `fixInfo` is an optional `Object` with information about how to fix the
90
- error (all properties are optional, but at least one of `deleteCount` and
91
- `insertText` should be present; when applying a fix, the delete should be
92
- performed before the insert):
93
- - `lineNumber` is an optional `Number` specifying the 1-based line number
94
- of the edit.
95
- - `editColumn` is an optional `Number` specifying the 1-based column
96
- number of the edit.
97
- - `deleteCount` is an optional `Number` specifying the number of
98
- characters to delete (the value `-1` is used to delete the line).
99
- - `insertText` is an optional `String` specifying the text to insert. `\n`
100
- is the platform-independent way to add a line break; line breaks should
101
- be added at the beginning of a line instead of at the end.
102
-
103
- The collection of helper functions shared by the built-in rules is available for
104
- use by custom rules in the [markdownlint-rule-helpers package][rule-helpers].
105
-
106
- ### Asynchronous Rules
107
-
108
- If a rule needs to perform asynchronous operations (such as fetching a network
109
- resource), it can specify the value `true` for its `asynchronous` property.
110
- Asynchronous rules should return a `Promise` from their `function`
111
- implementation that is resolved when the rule completes. (The value passed to
112
- `resolve(...)` is ignored.) Linting violations from asynchronous rules are
113
- reported via the `onError` function just like for synchronous rules.
114
-
115
- **Note**: Asynchronous rules cannot be referenced in a synchronous calling
116
- context (i.e., `markdownlint.sync(...)`). Attempting to do so throws an
117
- exception.
118
-
119
- ## Examples
120
-
121
- - [Simple rules used by the project's test cases][test-rules]
122
- - [Code for all `markdownlint` built-in rules][lib]
123
- - [Package configuration for publishing to npm][test-rules-npm]
124
- - Packages should export a single rule object or an `Array` of rule objects
125
- - [Custom rules from the axibase/docs-util repository][docs-util]
126
- - [Custom rules from the webhintio/hint repository][hint]
127
-
128
- ## References
129
-
130
- - [CommonMark documentation and specification][commonmark]
131
- - [`markdown-it` Markdown parser project page][markdown-it]
132
-
133
- ## Params
134
-
135
- The Markdown document:
136
-
137
- ```markdown
138
- # Title
139
-
140
- Text *text* text.
141
- ```
142
-
143
- Yields the `params` object:
144
-
145
- ```json
146
- {
147
- "name": "doc/example.md",
148
- "tokens": [
149
- {
150
- "type": "heading_open",
151
- "tag": "h1",
152
- "attrs": null,
153
- "map": [ 0, 1 ],
154
- "nesting": 1,
155
- "level": 0,
156
- "children": null,
157
- "content": "",
158
- "markup": "#",
159
- "info": "",
160
- "meta": null,
161
- "block": true,
162
- "hidden": false,
163
- "line": "# Title",
164
- "lineNumber": 1
165
- },
166
- {
167
- "type": "inline",
168
- "tag": "",
169
- "attrs": null,
170
- "map": [ 0, 1 ],
171
- "nesting": 0,
172
- "level": 1,
173
- "children": [
174
- {
175
- "type": "text",
176
- "tag": "",
177
- "attrs": null,
178
- "map": null,
179
- "nesting": 0,
180
- "level": 0,
181
- "children": null,
182
- "content": "Title",
183
- "markup": "",
184
- "info": "",
185
- "meta": null,
186
- "block": false,
187
- "hidden": false,
188
- "lineNumber": 1,
189
- "line": "# Title"
190
- }
191
- ],
192
- "content": "Title",
193
- "markup": "",
194
- "info": "",
195
- "meta": null,
196
- "block": true,
197
- "hidden": false,
198
- "line": "# Title",
199
- "lineNumber": 1
200
- },
201
- {
202
- "type": "heading_close",
203
- "tag": "h1",
204
- "attrs": null,
205
- "map": null,
206
- "nesting": -1,
207
- "level": 0,
208
- "children": null,
209
- "content": "",
210
- "markup": "#",
211
- "info": "",
212
- "meta": null,
213
- "block": true,
214
- "hidden": false
215
- },
216
- {
217
- "type": "paragraph_open",
218
- "tag": "p",
219
- "attrs": null,
220
- "map": [ 2, 3 ],
221
- "nesting": 1,
222
- "level": 0,
223
- "children": null,
224
- "content": "",
225
- "markup": "",
226
- "info": "",
227
- "meta": null,
228
- "block": true,
229
- "hidden": false,
230
- "line": "Text *text* text.",
231
- "lineNumber": 3
232
- },
233
- {
234
- "type": "inline",
235
- "tag": "",
236
- "attrs": null,
237
- "map": [ 2, 3 ],
238
- "nesting": 0,
239
- "level": 1,
240
- "children": [
241
- {
242
- "type": "text",
243
- "tag": "",
244
- "attrs": null,
245
- "map": null,
246
- "nesting": 0,
247
- "level": 0,
248
- "children": null,
249
- "content": "Text ",
250
- "markup": "",
251
- "info": "",
252
- "meta": null,
253
- "block": false,
254
- "hidden": false,
255
- "lineNumber": 3,
256
- "line": "Text *text* text."
257
- },
258
- {
259
- "type": "em_open",
260
- "tag": "em",
261
- "attrs": null,
262
- "map": null,
263
- "nesting": 1,
264
- "level": 1,
265
- "children": null,
266
- "content": "",
267
- "markup": "*",
268
- "info": "",
269
- "meta": null,
270
- "block": false,
271
- "hidden": false,
272
- "lineNumber": 3,
273
- "line": "Text *text* text."
274
- },
275
- {
276
- "type": "text",
277
- "tag": "",
278
- "attrs": null,
279
- "map": null,
280
- "nesting": 0,
281
- "level": 1,
282
- "children": null,
283
- "content": "text",
284
- "markup": "",
285
- "info": "",
286
- "meta": null,
287
- "block": false,
288
- "hidden": false,
289
- "lineNumber": 3,
290
- "line": "Text *text* text."
291
- },
292
- {
293
- "type": "em_close",
294
- "tag": "em",
295
- "attrs": null,
296
- "map": null,
297
- "nesting": -1,
298
- "level": 0,
299
- "children": null,
300
- "content": "",
301
- "markup": "*",
302
- "info": "",
303
- "meta": null,
304
- "block": false,
305
- "hidden": false,
306
- "lineNumber": 3,
307
- "line": "Text *text* text."
308
- },
309
- {
310
- "type": "text",
311
- "tag": "",
312
- "attrs": null,
313
- "map": null,
314
- "nesting": 0,
315
- "level": 0,
316
- "children": null,
317
- "content": " text.",
318
- "markup": "",
319
- "info": "",
320
- "meta": null,
321
- "block": false,
322
- "hidden": false,
323
- "lineNumber": 3,
324
- "line": "Text *text* text."
325
- }
326
- ],
327
- "content": "Text *text* text.",
328
- "markup": "",
329
- "info": "",
330
- "meta": null,
331
- "block": true,
332
- "hidden": false,
333
- "line": "Text *text* text.",
334
- "lineNumber": 3
335
- },
336
- {
337
- "type": "paragraph_close",
338
- "tag": "p",
339
- "attrs": null,
340
- "map": null,
341
- "nesting": -1,
342
- "level": 0,
343
- "children": null,
344
- "content": "",
345
- "markup": "",
346
- "info": "",
347
- "meta": null,
348
- "block": true,
349
- "hidden": false
350
- }
351
- ],
352
- "lines": [
353
- "# Title",
354
- "",
355
- "Text *text* text.",
356
- ""
357
- ],
358
- "frontMatterLines": [],
359
- "config": {
360
- "customValue1": "abc",
361
- "customValue2": 123
362
- }
363
- }
364
- ```
365
-
366
- [commonmark]: https://commonmark.org/
367
- [docs-util]: https://github.com/axibase/docs-util/tree/master/linting-rules
368
- [hint]: https://github.com/webhintio/hint/blob/main/scripts/lint-markdown.js
369
- [lib]: ../lib
370
- [markdown-it]: https://github.com/markdown-it/markdown-it
371
- [markdown-it-token]: https://markdown-it.github.io/markdown-it/#Token
372
- [markdownlint-rule]: https://www.npmjs.com/search?q=keywords:markdownlint-rule
373
- [rule-helpers]: https://www.npmjs.com/package/markdownlint-rule-helpers
374
- [options-custom-rules]: ../README.md#optionscustomrules
375
- [test-rules]: ../test/rules
376
- [test-rules-npm]: ../test/rules/npm
@@ -1,27 +0,0 @@
1
- # Using `markdownlint` with Prettier
2
-
3
- [`Prettier`](https://prettier.io) is a popular code formatter.
4
- For the most part, Prettier works seamlessly with `markdownlint`.
5
-
6
- You can `extend` the [`prettier.json`](../style/prettier.json) style to disable
7
- all `markdownlint` rules that overlap with Prettier.
8
-
9
- Other scenarios are documented below.
10
-
11
- ## List item indentation
12
-
13
- The default settings of `markdownlint` and `Prettier` are compatible and don't
14
- result in any linting violations. If `Prettier` is used with `--tab-width` set
15
- to `4` (vs. `2`), the following `markdownlint` configuration can be used:
16
-
17
- ```json
18
- {
19
- "list-marker-space": {
20
- "ul_multi": 3,
21
- "ul_single": 3
22
- },
23
- "ul-indent": {
24
- "indent": 4
25
- }
26
- }
27
- ```
@@ -1,20 +0,0 @@
1
- # Release Process
2
-
3
- The `markdownlint` library has some related dependencies that are updated along
4
- with it. To prevent possible regressions from having a widespread impact, these
5
- releases are separated by a few days to provide an opportunity to find issues.
6
-
7
- 1. [`markdownlint`][markdownlint]
8
- 2. [`markdownlint-cli2`][markdownlint-cli2]
9
- 3. [`markdownlint-cli2-action`][markdownlint-cli2-action]
10
- 4. [`vscode-markdownlint`][vscode-markdownlint]
11
- 5. [`markdownlint-cli`][markdownlint-cli]
12
-
13
- This sequence is not strict and may be adjusted based on the content of the
14
- release and the scope of feature work in each dependency.
15
-
16
- [markdownlint]: https://github.com/DavidAnson/markdownlint
17
- [markdownlint-cli2]: https://github.com/DavidAnson/markdownlint-cli2
18
- [markdownlint-cli2-action]: https://github.com/marketplace/actions/markdownlint-cli2-action
19
- [vscode-markdownlint]: https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint
20
- [markdownlint-cli]: https://github.com/igorshubovych/markdownlint-cli