From d2bc5ca37143205fdadaa601488e80ee91f0101c Mon Sep 17 00:00:00 2001 From: Yang Date: Sun, 4 Feb 2018 22:09:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=88=97=E8=A1=A8=E8=A1=A5?= =?UTF-8?q?=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/Editor.vue | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/Editor.vue b/frontend/src/components/Editor.vue index 810d31bc..5d42438a 100644 --- a/frontend/src/components/Editor.vue +++ b/frontend/src/components/Editor.vue @@ -39,7 +39,7 @@ export default { }) this.editor.onDidChangeModelContent((e) => { - this.$emit('input', this.editor.getModel().getValue()) + this.$emit('input', this.editor.getModel().getValue(window.monaco.editor.DefaultEndOfLine.LF)) }) this.keyBind() @@ -59,6 +59,30 @@ export default { this.editor.addCommand(KM.CtrlCmd | KC.KEY_S, () => { this.$emit('save') }) + + window.monaco.languages.setLanguageConfiguration('markdown', { + onEnterRules: [ + {beforeText: /\+ \[ \] .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '+ [ ] '}}, + {beforeText: /- \[ \] .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '- [ ] '}}, + {beforeText: /\* \[ \] .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '* [ ] '}}, + {beforeText: /\+ \[x\] .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '+ [x] '}}, + {beforeText: /- \[x\] .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '- [x] '}}, + {beforeText: /\* \[x\] .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '* [x] '}}, + {beforeText: /\+ .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '+ '}}, + {beforeText: /- .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '- '}}, + {beforeText: /\* .*$/, action: {indentAction: window.monaco.languages.IndentAction.None, appendText: '* '}} + ] + }) + + // this.editor.addCommand(KC.Enter, () => { + // const p = this.editor.getPosition() + // this.editor.executeEdits('', [{ + // range: new window.monaco.Range(p.lineNumber, p.column, p.lineNumber, p.column), + // text: '\nresult', + // forceMoveMarkers: true + // }]) + // console.log(this.editor.getModel().getLineContent(this.editor.getPosition().lineNumber)) + // }) }, setValue (val) { this.editor.getModel().setValue(val)