/
.remarkrc.js
52 lines (48 loc) · 1.78 KB
/
.remarkrc.js
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
import fs from 'fs'
import strip from 'strip-comments'
import dictionaryEn from 'dictionary-en'
import {unified} from 'unified'
import retextEnglish from 'retext-english'
import retextPresetWooorm from 'retext-preset-wooorm'
import retextEquality from 'retext-equality'
import retextPassive from 'retext-passive'
import retextProfanities from 'retext-profanities'
import retextReadability from 'retext-readability'
import retextSimplify from 'retext-simplify'
import retextEmoji from 'retext-emoji'
import retextSyntaxMentions from 'retext-syntax-mentions'
import retextSyntaxUrls from 'retext-syntax-urls'
import retextSpell from 'retext-spell'
import remarkPresetWooorm from 'remark-preset-wooorm'
import remarkFrontmatter from 'remark-frontmatter'
import remarkRetext from 'remark-retext'
import remarkValidateLinks from 'remark-validate-links'
import remarkLintNoDeadUrls from 'remark-lint-no-dead-urls'
import remarkLintFirstHeadingLevel from 'remark-lint-first-heading-level'
import remarkLintNoHtml from 'remark-lint-no-html'
var personal = strip(fs.readFileSync('dictionary.txt', 'utf8'))
var naturalLanguage = unified().use([
retextEnglish,
retextPresetWooorm,
[retextEquality, {ignore: ['whitespace']}],
retextPassive,
[retextProfanities, {sureness: 1}],
[retextReadability, {age: 18, minWords: 8}],
[retextSimplify, {ignore: ['function', 'interface', 'maintain', 'type']}],
retextEmoji,
retextSyntaxMentions,
retextSyntaxUrls,
[retextSpell, {dictionary: dictionaryEn, personal: personal}]
])
const config = {
plugins: [
remarkPresetWooorm,
remarkFrontmatter,
[remarkRetext, naturalLanguage],
[remarkValidateLinks, false],
[remarkLintNoDeadUrls, 'https://unifiedjs.com'],
[remarkLintFirstHeadingLevel, 2],
[remarkLintNoHtml, false]
]
}
export default config