1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
| {
| "$schema": "https://github.com/DavidAnson/markdownlint/blob/main/schema/markdownlint-config-schema.json",
| "$id": "https://raw.githubusercontent.com/davidsneighbour/kollitsch.dev/refs/heads/main/src/config/.markdownlint.jsonc",
| "default": true,
| "customRules": [
| "@github/markdownlint-github",
| "markdownlint-rule-relative-links",
| "markdownlint-rule-search-replace",
| "markdownlint-rule-extended-ascii",
| "markdownlint-rule-title-case-style",
| "markdownlint-rule-list-duplicates"
| ],
| // Rules
| // unlisted rules are using default settings (usually "true")
| // @see https://github.com/DavidAnson/markdownlint/#rules--aliases
| "MD001": {
| "severity": "error",
| "front_matter_title": "^\\s*title\\s*[:=]"
| },
| "MD003": {
| "style": "atx"
| },
| "MD004": {
| "style": "asterisk"
| },
| "MD005": true,
| "MD007": {
| "indent": 2
| },
| // NO limitation on line length
| "MD013": false,
| // ignored rule for closed atx headings
| "MD020": false,
| // ignored rule for closed atx headings
| "MD021": false,
| // disallow multiple headings with the same content within the same level structure
| "MD024": {
| "siblings_only": true,
| "allow_different_nesting": true
| },
| // no inline HTML elements, except for the allowed ones. in tables only the explicit allowed ones
| "MD033": {
| "allowed_elements": [
| "lite-youtube",
| "color-grid",
| "date-diff",
| "kbd"
| ],
| "table_allowed_elements": [
| "kbd"
| ]
| },
| // use consistent rule markers (`---`)
| "MD035": {
| "style": "---"
| },
| // unused header structure rule
| "MD043": false,
| // unused spelling enforcement
| "MD044": false,
| // fenced code blocks style
| "MD046": {
| "style": "fenced"
| },
| // code blocks must use backticks instead of tildes
| "MD048": {
| "style": "backtick"
| },
| // emphasis must use asterisks `*` instead of underscores `_`
| "MD049": {
| "style": "asterisk"
| },
| // strong style must use double asterisks `**` instead of double underscores `__`
| "MD050": {
| "style": "asterisk"
| },
| // links must not be auto links, all other link formats are allowed
| "MD054": {
| "autolink": false
| },
| // table pipes must be used before and after each table row
| "MD055": {
| "style": "leading_and_trailing"
| },
| // generic linktexts are prohibited
| "MD059": {
| "prohibited_texts": [
| "click here",
| "here",
| "link",
| "more"
| ]
| },
| // table style must be compact (single spaces around cell content)
| "MD060": {
| "style": "compact"
| },
| // @see https://www.npmjs.com/package/@github/markdownlint-github
| // images should not contain default alternate texts
| "GH001": true,
| // links should not contain generic text ('click here', 'read more', etc.)
| "GH002": {
| "additional_banned_texts": [
| "Something",
| "Click here"
| ]
| },
| // no empty alt texts for images
| "GH003": true,
| // @see https://www.npmjs.com/package/markdownlint-rule-relative-links
| "relative-links": {
| "root_path": "../.."
| },
| // @see https://www.npmjs.com/package/markdownlint-rule-search-replace
| "search-replace": {
| "rules": [
| {
| "name": "ellipsis",
| "message": "Do not use three dots '...' for ellipsis.",
| "information": "https://example.com/rules/ellipsis",
| "search": "...",
| "replace": "…",
| "searchScope": "text"
| },
| {
| "name": "curly-double-quotes",
| "message": "Do not use curly double quotes.",
| "searchPattern": "/“|”/g",
| "replace": "\""
| }
| ]
| },
| // @see https://www.npmjs.com/package/markdownlint-rule-extended-ascii
| "extended-ascii": {
| "ascii-only": true
| },
| // @see https://www.npmjs.com/package/markdownlint-rule-title-case-style
| "title-case-style": {
| // letter case style to apply
| //
| // "sentence" or "title" (default: sentence)
| "case": "sentence",
| // words to ignore when applying letter case.
| //
| // string[] (default: [])
| "ignore": [
| "JavaScript"
| ],
| },
| }
|
|