缩进快捷键
This commit is contained in:
parent
8d6d306959
commit
77afacc3b1
|
@ -9,11 +9,13 @@
|
||||||
<h1>键盘快捷键</h1>
|
<h1>键盘快捷键</h1>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>F11: 编辑器全屏</li>
|
|
||||||
<li>Ctrl+G: 跳转到行</li>
|
<li>Ctrl+G: 跳转到行</li>
|
||||||
<li>Ctrl+\\: 自动补全</li>
|
<li>Ctrl+\\: 自动补全</li>
|
||||||
<li>Ctrl+D: 删除当前行</li>
|
<li>Ctrl+E: 删除当前行</li>
|
||||||
|
<li>F11: 编辑器全屏</li>
|
||||||
<li>Shift+Tab: 自动缩进</li>
|
<li>Shift+Tab: 自动缩进</li>
|
||||||
|
<li>Ctrl+]: 缩进</li>
|
||||||
|
<li>Ctrl+[: 反缩进</li>
|
||||||
</ul>
|
</ul>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -66,10 +66,10 @@ var editors = {
|
||||||
var start = cur.ch, end = start;
|
var start = cur.ch, end = start;
|
||||||
while (end < curLine.length && word.test(curLine.charAt(end))) {
|
while (end < curLine.length && word.test(curLine.charAt(end))) {
|
||||||
++end;
|
++end;
|
||||||
}
|
}
|
||||||
while (start && word.test(curLine.charAt(start - 1))) {
|
while (start && word.test(curLine.charAt(start - 1))) {
|
||||||
--start;
|
--start;
|
||||||
}
|
}
|
||||||
var request = {
|
var request = {
|
||||||
code: editor.getValue(),
|
code: editor.getValue(),
|
||||||
cursorLine: cur.line,
|
cursorLine: cur.line,
|
||||||
|
@ -111,42 +111,45 @@ var editors = {
|
||||||
CodeMirror.commands.autocompleteAnyWord = function(cm) {
|
CodeMirror.commands.autocompleteAnyWord = function(cm) {
|
||||||
cm.showHint({hint: CodeMirror.hint.auto});
|
cm.showHint({hint: CodeMirror.hint.auto});
|
||||||
};
|
};
|
||||||
|
|
||||||
CodeMirror.commands.autocompleteRightPart = function(cm) {
|
CodeMirror.commands.autocompleteRightPart = function(cm) {
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
var cur = cm.getCursor();
|
var cur = cm.getCursor();
|
||||||
var curLine = cm.getLine(cur.line);
|
var curLine = cm.getLine(cur.line);
|
||||||
var curChar = curLine.charAt(cur.ch - 1);
|
var curChar = curLine.charAt(cur.ch - 1);
|
||||||
|
|
||||||
replacement = '';
|
replacement = '';
|
||||||
|
|
||||||
switch (curChar) {
|
switch (curChar) {
|
||||||
case '(':
|
case '(':
|
||||||
replacement = ')';
|
replacement = ')';
|
||||||
break;
|
break;
|
||||||
case '[':
|
case '[':
|
||||||
replacement = ']';
|
replacement = ']';
|
||||||
break;
|
break;
|
||||||
case '{':
|
case '{':
|
||||||
replacement = '}';
|
replacement = '}';
|
||||||
break;
|
break;
|
||||||
default: // " or '
|
default: // " or '
|
||||||
replacement = curChar;
|
replacement = curChar;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
cm.replaceRange(replacement, CodeMirror.Pos(cur.line, cur.ch));
|
cm.replaceRange(replacement, CodeMirror.Pos(cur.line, cur.ch));
|
||||||
cm.setCursor(CodeMirror.Pos(cur.line, cur.ch));
|
cm.setCursor(CodeMirror.Pos(cur.line, cur.ch));
|
||||||
}, 50);
|
}, 50);
|
||||||
|
|
||||||
return CodeMirror.Pass;
|
return CodeMirror.Pass;
|
||||||
};
|
};
|
||||||
|
|
||||||
CodeMirror.commands.gotoLine = function(cm) {
|
CodeMirror.commands.gotoLine = function(cm) {
|
||||||
var line = prompt("Go To Line: ", "0");
|
var line = prompt("Go To Line: ", "0");
|
||||||
|
|
||||||
cm.setCursor(CodeMirror.Pos(line - 1, 0));
|
cm.setCursor(CodeMirror.Pos(line - 1, 0));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CodeMirror.commands.doNothing = function(cm) {
|
||||||
|
};
|
||||||
},
|
},
|
||||||
newEditor: function(data) {
|
newEditor: function(data) {
|
||||||
$(".ico-fullscreen").show();
|
$(".ico-fullscreen").show();
|
||||||
|
@ -167,7 +170,7 @@ var editors = {
|
||||||
|
|
||||||
var editor = CodeMirror.fromTextArea(document.getElementById("editor" + id), {
|
var editor = CodeMirror.fromTextArea(document.getElementById("editor" + id), {
|
||||||
lineNumbers: true,
|
lineNumbers: true,
|
||||||
styleActiveLine: true,
|
styleActiveLine: true,
|
||||||
theme: 'lesser-dark',
|
theme: 'lesser-dark',
|
||||||
indentUnit: 4,
|
indentUnit: 4,
|
||||||
extraKeys: {
|
extraKeys: {
|
||||||
|
@ -181,12 +184,14 @@ var editors = {
|
||||||
"F11": function(cm) {
|
"F11": function(cm) {
|
||||||
cm.setOption("fullScreen", !cm.getOption("fullScreen"));
|
cm.setOption("fullScreen", !cm.getOption("fullScreen"));
|
||||||
},
|
},
|
||||||
"'('": "autocompleteRightPart",
|
"'('": "autocompleteRightPart",
|
||||||
"'['": "autocompleteRightPart",
|
"'['": "autocompleteRightPart",
|
||||||
"'{'": "autocompleteRightPart",
|
"'{'": "autocompleteRightPart",
|
||||||
"'\"'": "autocompleteRightPart",
|
"'\"'": "autocompleteRightPart",
|
||||||
"'''": "autocompleteRightPart",
|
"'''": "autocompleteRightPart",
|
||||||
"Ctrl-G": "gotoLine"
|
"Ctrl-G": "gotoLine",
|
||||||
|
"Ctrl-E": "deleteLine",
|
||||||
|
"Ctrl-D": "doNothing" // 取消默认的 deleteLine
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
editor.setSize('100%', $(".edit-panel").height() - $(".edit-header").height());
|
editor.setSize('100%', $(".edit-panel").height() - $(".edit-header").height());
|
||||||
|
|
Loading…
Reference in New Issue