mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2026-01-07 01:12:44 +00:00
Merge pull request #1719 from Gazook89/Hotkey-for-Lists
Hotkey for Lists
This commit is contained in:
@@ -95,6 +95,10 @@ const CodeEditor = createClass({
|
|||||||
'Cmd-/' : this.makeComment,
|
'Cmd-/' : this.makeComment,
|
||||||
'Ctrl-K' : this.makeLink,
|
'Ctrl-K' : this.makeLink,
|
||||||
'Cmd-K' : this.makeLink,
|
'Cmd-K' : this.makeLink,
|
||||||
|
'Ctrl-L' : ()=>this.makeList('UL'),
|
||||||
|
'Cmd-L' : ()=>this.makeList('UL'),
|
||||||
|
'Shift-Ctrl-L' : ()=>this.makeList('OL'),
|
||||||
|
'Shift-Cmd-L' : ()=>this.makeList('OL'),
|
||||||
'Shift-Ctrl-1' : ()=>this.makeHeader(1),
|
'Shift-Ctrl-1' : ()=>this.makeHeader(1),
|
||||||
'Shift-Ctrl-2' : ()=>this.makeHeader(2),
|
'Shift-Ctrl-2' : ()=>this.makeHeader(2),
|
||||||
'Shift-Ctrl-3' : ()=>this.makeHeader(3),
|
'Shift-Ctrl-3' : ()=>this.makeHeader(3),
|
||||||
@@ -269,6 +273,28 @@ const CodeEditor = createClass({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
makeList : function(listType) {
|
||||||
|
const selectionStart = this.codeMirror.getCursor('from'), selectionEnd = this.codeMirror.getCursor('to');
|
||||||
|
this.codeMirror.setSelection(
|
||||||
|
{ line: selectionStart.line, ch: 0 },
|
||||||
|
{ line: selectionEnd.line, ch: this.codeMirror.getLine(selectionEnd.line).length }
|
||||||
|
);
|
||||||
|
const newSelection = this.codeMirror.getSelection();
|
||||||
|
|
||||||
|
const regex = /^\d+\.\s|^-\s/gm;
|
||||||
|
if(newSelection.match(regex) != null){ // if selection IS A LIST
|
||||||
|
this.codeMirror.replaceSelection(newSelection.replace(regex, ''), 'around');
|
||||||
|
} else { // if selection IS NOT A LIST
|
||||||
|
listType == 'UL' ? this.codeMirror.replaceSelection(newSelection.replace(/^/gm, `- `), 'around') :
|
||||||
|
this.codeMirror.replaceSelection(newSelection.replace(/^/gm, (()=>{
|
||||||
|
let n = 1;
|
||||||
|
return ()=>{
|
||||||
|
return `${n++}. `;
|
||||||
|
};
|
||||||
|
})()), 'around');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
foldAllCode : function() {
|
foldAllCode : function() {
|
||||||
this.codeMirror.execCommand('foldAll');
|
this.codeMirror.execCommand('foldAll');
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user