mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-13 01:36:22 +00:00
Added markdownlint rules form
This commit is contained in:
@@ -25,8 +25,9 @@ import TurndownService from 'turndown'
|
|||||||
import {languageMaps} from '../lib/CMLanguageList'
|
import {languageMaps} from '../lib/CMLanguageList'
|
||||||
import snippetManager from '../lib/SnippetManager'
|
import snippetManager from '../lib/SnippetManager'
|
||||||
import {generateInEditor, tocExistsInEditor} from 'browser/lib/markdown-toc-generator'
|
import {generateInEditor, tocExistsInEditor} from 'browser/lib/markdown-toc-generator'
|
||||||
|
import Jsonlint from 'jsonlint-mod'
|
||||||
import markdownlint from 'markdownlint'
|
import markdownlint from 'markdownlint'
|
||||||
import ConfigManager from '../main/lib/ConfigManager'
|
import ConfigManager, {DEFAULT_CONFIG} from '../main/lib/ConfigManager'
|
||||||
|
|
||||||
CodeMirror.modeURL = '../node_modules/codemirror/mode/%N/%N.js'
|
CodeMirror.modeURL = '../node_modules/codemirror/mode/%N/%N.js'
|
||||||
|
|
||||||
@@ -41,13 +42,19 @@ function translateHotkey (hotkey) {
|
|||||||
|
|
||||||
const validatorOfMarkdown = (text, updateLinting) => {
|
const validatorOfMarkdown = (text, updateLinting) => {
|
||||||
const config = ConfigManager.get()
|
const config = ConfigManager.get()
|
||||||
|
let markdownlintRules = config.editor.customMarkdownLintConfig
|
||||||
|
try {
|
||||||
|
Jsonlint.parse(markdownlintRules)
|
||||||
|
} catch (error) {
|
||||||
|
markdownlintRules = DEFAULT_CONFIG.editor.customMarkdownLintConfig
|
||||||
|
}
|
||||||
|
|
||||||
const lintOptions = {
|
const lintOptions = {
|
||||||
'strings': {
|
'strings': {
|
||||||
'content': text
|
'content': text
|
||||||
},
|
},
|
||||||
'config': JSON.parse(config.editor.customMarkdownLintConfig)
|
'config': JSON.parse(markdownlintRules)
|
||||||
}
|
}
|
||||||
console.log(config.editor.customMarkdownLintConfig)
|
|
||||||
|
|
||||||
return markdownlint(lintOptions, (err, result) => {
|
return markdownlint(lintOptions, (err, result) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
|
|||||||
@@ -60,7 +60,9 @@ export const DEFAULT_CONFIG = {
|
|||||||
frontMatterTitleField: 'title',
|
frontMatterTitleField: 'title',
|
||||||
spellcheck: false,
|
spellcheck: false,
|
||||||
enableSmartPaste: false,
|
enableSmartPaste: false,
|
||||||
customMarkdownLintConfig: ''
|
customMarkdownLintConfig: `{
|
||||||
|
"default": true
|
||||||
|
}`
|
||||||
},
|
},
|
||||||
preview: {
|
preview: {
|
||||||
fontSize: '14',
|
fontSize: '14',
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ class UiTab extends React.Component {
|
|||||||
componentDidMount () {
|
componentDidMount () {
|
||||||
CodeMirror.autoLoadMode(this.codeMirrorInstance.getCodeMirror(), 'javascript')
|
CodeMirror.autoLoadMode(this.codeMirrorInstance.getCodeMirror(), 'javascript')
|
||||||
CodeMirror.autoLoadMode(this.customCSSCM.getCodeMirror(), 'css')
|
CodeMirror.autoLoadMode(this.customCSSCM.getCodeMirror(), 'css')
|
||||||
CodeMirror.autoLoadMode(this.customMarkdownLintConfigCM.getCodeMirror(), 'json')
|
CodeMirror.autoLoadMode(this.customMarkdownLintConfigCM.getCodeMirror(), 'javascript')
|
||||||
this.customCSSCM.getCodeMirror().setSize('400px', '400px')
|
this.customCSSCM.getCodeMirror().setSize('400px', '400px')
|
||||||
this.customMarkdownLintConfigCM.getCodeMirror().setSize('400px', '400px')
|
this.customMarkdownLintConfigCM.getCodeMirror().setSize('400px', '400px')
|
||||||
this.handleSettingDone = () => {
|
this.handleSettingDone = () => {
|
||||||
@@ -649,7 +649,10 @@ class UiTab extends React.Component {
|
|||||||
value={config.editor.customMarkdownLintConfig}
|
value={config.editor.customMarkdownLintConfig}
|
||||||
options={{
|
options={{
|
||||||
lineNumbers: true,
|
lineNumbers: true,
|
||||||
theme: codemirrorTheme
|
mode: 'application/json',
|
||||||
|
theme: codemirrorTheme,
|
||||||
|
lint: true,
|
||||||
|
gutters: ['CodeMirror-lint-markers']
|
||||||
}} />
|
}} />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -126,7 +126,9 @@
|
|||||||
<script src="../node_modules/codemirror/addon/dialog/dialog.js"></script>
|
<script src="../node_modules/codemirror/addon/dialog/dialog.js"></script>
|
||||||
<script src="../node_modules/codemirror/addon/display/rulers.js"></script>
|
<script src="../node_modules/codemirror/addon/display/rulers.js"></script>
|
||||||
|
|
||||||
|
<script src="../node_modules/jsonlint-mod/lib/jsonlint.js"></script>
|
||||||
<script src="../node_modules/codemirror/addon/lint/lint.js"></script>
|
<script src="../node_modules/codemirror/addon/lint/lint.js"></script>
|
||||||
|
<script src="../node_modules/codemirror/addon/lint/json-lint.js"></script>
|
||||||
|
|
||||||
<script src="../node_modules/raphael/raphael.min.js"></script>
|
<script src="../node_modules/raphael/raphael.min.js"></script>
|
||||||
<script src="../node_modules/flowchart.js/release/flowchart.min.js"></script>
|
<script src="../node_modules/flowchart.js/release/flowchart.min.js"></script>
|
||||||
|
|||||||
Reference in New Issue
Block a user