This commit is contained in:
parent
f7cc9ac140
commit
d19698a42e
|
@ -27,8 +27,10 @@
|
|||
<ul>
|
||||
<li>Ctrl+1:焦点切换到文件树</li>
|
||||
<li>Ctrl+4:焦点切换到输出窗口</li>
|
||||
<li>Ctrl+5:焦点切换到搜索窗口</li>
|
||||
<li>Ctrl+6:焦点切换到通知窗口</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>运行</h2>
|
||||
<ul>
|
||||
<li>F6:构建 & 运行</li>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
var editors = {
|
||||
data: [],
|
||||
init: function() {
|
||||
init: function () {
|
||||
editors._initAutocomplete();
|
||||
editors.tabs = new Tabs({
|
||||
id: ".edit-panel",
|
||||
clickAfter: function(id) {
|
||||
clickAfter: function (id) {
|
||||
// set tree node selected
|
||||
var node = tree.fileTree.getNodeByTId(id);
|
||||
tree.fileTree.selectNode(node);
|
||||
|
@ -19,7 +19,7 @@ var editors = {
|
|||
|
||||
wide.curEditor.focus();
|
||||
},
|
||||
removeAfter: function(id, nextId) {
|
||||
removeAfter: function (id, nextId) {
|
||||
for (var i = 0, ii = editors.data.length; i < ii; i++) {
|
||||
if (editors.data[i].id === id) {
|
||||
editors.data.splice(i, 1);
|
||||
|
@ -57,16 +57,16 @@ var editors = {
|
|||
});
|
||||
|
||||
|
||||
$(".edit-header .tabs").on("dblclick", "div", function() {
|
||||
$(".edit-header .tabs").on("dblclick", "div", function () {
|
||||
editors.fullscreen();
|
||||
});
|
||||
},
|
||||
fullscreen: function() {
|
||||
fullscreen: function () {
|
||||
wide.curEditor.setOption("fullScreen", true);
|
||||
wide.curEditor.focus();
|
||||
},
|
||||
_initAutocomplete: function() {
|
||||
CodeMirror.registerHelper("hint", "go", function(editor) {
|
||||
_initAutocomplete: function () {
|
||||
CodeMirror.registerHelper("hint", "go", function (editor) {
|
||||
var word = /[\w$]+/;
|
||||
|
||||
var cur = editor.getCursor(), curLine = editor.getLine(cur.line);
|
||||
|
@ -78,13 +78,12 @@ var editors = {
|
|||
while (start && word.test(curLine.charAt(start - 1))) {
|
||||
--start;
|
||||
}
|
||||
|
||||
var request = {
|
||||
path: $(".edit-header .current > span:eq(0)").attr("title"),
|
||||
code: editor.getValue(),
|
||||
cursorLine: cur.line,
|
||||
cursorCh: cur.ch
|
||||
};
|
||||
|
||||
var request = newWideRequest();
|
||||
request.path = $(".edit-header .current > span:eq(0)").attr("title");
|
||||
request.code = editor.getValue();
|
||||
request.cursorLine = cur.line;
|
||||
request.cursorCh = cur.ch;
|
||||
|
||||
var autocompleteHints = [];
|
||||
|
||||
|
@ -94,7 +93,7 @@ var editors = {
|
|||
url: '/autocomplete',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
var autocompleteArray = data[1];
|
||||
|
||||
if (autocompleteArray) {
|
||||
|
@ -108,8 +107,8 @@ var editors = {
|
|||
return {list: autocompleteHints, from: CodeMirror.Pos(cur.line, start), to: CodeMirror.Pos(cur.line, end)};
|
||||
});
|
||||
|
||||
CodeMirror.commands.autocompleteAfterDot = function(cm) {
|
||||
setTimeout(function() {
|
||||
CodeMirror.commands.autocompleteAfterDot = function (cm) {
|
||||
setTimeout(function () {
|
||||
if (!cm.state.completionActive) {
|
||||
cm.showHint({hint: CodeMirror.hint.go, completeSingle: false});
|
||||
}
|
||||
|
@ -118,35 +117,34 @@ var editors = {
|
|||
return CodeMirror.Pass;
|
||||
};
|
||||
|
||||
CodeMirror.commands.autocompleteAnyWord = function(cm) {
|
||||
CodeMirror.commands.autocompleteAnyWord = function (cm) {
|
||||
cm.showHint({hint: CodeMirror.hint.auto});
|
||||
};
|
||||
|
||||
CodeMirror.commands.gotoLine = function(cm) {
|
||||
CodeMirror.commands.gotoLine = function (cm) {
|
||||
var line = prompt("Go To Line: ", "0");
|
||||
|
||||
cm.setCursor(CodeMirror.Pos(line - 1, 0));
|
||||
};
|
||||
|
||||
CodeMirror.commands.doNothing = function(cm) {
|
||||
CodeMirror.commands.doNothing = function (cm) {
|
||||
};
|
||||
|
||||
CodeMirror.commands.jumpToDecl = function(cm) {
|
||||
CodeMirror.commands.jumpToDecl = function (cm) {
|
||||
var cur = wide.curEditor.getCursor();
|
||||
|
||||
var request = {
|
||||
path: $(".edit-header .current > span:eq(0)").attr("title"),
|
||||
code: wide.curEditor.getValue(),
|
||||
cursorLine: cur.line,
|
||||
cursorCh: cur.ch
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.path = $(".edit-header .current > span:eq(0)").attr("title");
|
||||
request.code = wide.curEditor.getValue();
|
||||
request.cursorLine = cur.line;
|
||||
request.cursorCh = cur.ch;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/find/decl',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (!data.succ) {
|
||||
return;
|
||||
}
|
||||
|
@ -154,16 +152,15 @@ var editors = {
|
|||
var cursorLine = data.cursorLine;
|
||||
var cursorCh = data.cursorCh;
|
||||
|
||||
var request = {
|
||||
path: data.path
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.path = data.path;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/file',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (!data.succ) {
|
||||
alert(data.msg);
|
||||
|
||||
|
@ -183,22 +180,21 @@ var editors = {
|
|||
});
|
||||
};
|
||||
|
||||
CodeMirror.commands.findUsages = function(cm) {
|
||||
CodeMirror.commands.findUsages = function (cm) {
|
||||
var cur = wide.curEditor.getCursor();
|
||||
|
||||
var request = {
|
||||
file: wide.curNode.path,
|
||||
code: wide.curEditor.getValue(),
|
||||
cursorLine: cur.line,
|
||||
cursorCh: cur.ch
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.file = wide.curNode.path;
|
||||
request.code = wide.curEditor.getValue();
|
||||
request.cursorLine = cur.line;
|
||||
request.cursorCh = cur.ch;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/find/usages',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
console.log(data);
|
||||
|
||||
if (!data.succ) {
|
||||
|
@ -211,7 +207,7 @@ var editors = {
|
|||
};
|
||||
},
|
||||
// 新建一个编辑器 Tab,如果已经存在 Tab 则切换到该 Tab.
|
||||
newEditor: function(data) {
|
||||
newEditor: function (data) {
|
||||
$(".ico-fullscreen").show();
|
||||
var id = wide.curNode.tId;
|
||||
|
||||
|
@ -256,12 +252,12 @@ var editors = {
|
|||
extraKeys: {
|
||||
"Ctrl-\\": "autocompleteAnyWord",
|
||||
".": "autocompleteAfterDot",
|
||||
"Esc": function(cm) {
|
||||
"Esc": function (cm) {
|
||||
if (cm.getOption("fullScreen")) {
|
||||
cm.setOption("fullScreen", false);
|
||||
}
|
||||
},
|
||||
"F11": function(cm) {
|
||||
"F11": function (cm) {
|
||||
cm.setOption("fullScreen", !cm.getOption("fullScreen"));
|
||||
},
|
||||
"Ctrl-G": "gotoLine",
|
||||
|
@ -269,16 +265,16 @@ var editors = {
|
|||
"Ctrl-D": "doNothing", // 取消默认的 deleteLine
|
||||
"Ctrl-B": "jumpToDecl",
|
||||
"Ctrl-S": function () {
|
||||
wide.saveFile();
|
||||
wide.saveFile();
|
||||
},
|
||||
"Shift-Alt-F": function () {
|
||||
wide.fmt();
|
||||
wide.fmt();
|
||||
},
|
||||
"Alt-F7": "findUsages"
|
||||
}
|
||||
});
|
||||
|
||||
editor.on('cursorActivity', function(cm) {
|
||||
editor.on('cursorActivity', function (cm) {
|
||||
var cursor = cm.getCursor();
|
||||
|
||||
$("#footer-cursor").text('| ' + (cursor.line + 1) + ':' + (cursor.ch + 1) + ' |');
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
var tree = {
|
||||
// 递归获取当前节点展开中的最后一个节点
|
||||
getCurrentNodeLastNode: function(node) {
|
||||
getCurrentNodeLastNode: function (node) {
|
||||
var returnNode = node.children[node.children.length - 1];
|
||||
if (returnNode.open) {
|
||||
return tree.getCurrentNodeLastNode(returnNode);
|
||||
|
@ -9,7 +9,7 @@ var tree = {
|
|||
}
|
||||
},
|
||||
// 按照树展现获取下一个节点
|
||||
getNextShowNode: function(node) {
|
||||
getNextShowNode: function (node) {
|
||||
if (node.level !== 0) {
|
||||
if (node.getParentNode().getNextNode()) {
|
||||
return node.getParentNode().getNextNode();
|
||||
|
@ -20,7 +20,7 @@ var tree = {
|
|||
return node.getNextNode();
|
||||
}
|
||||
},
|
||||
isBottomNode: function(node) {
|
||||
isBottomNode: function (node) {
|
||||
if (node.open) {
|
||||
return false;
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ var tree = {
|
|||
}
|
||||
}
|
||||
},
|
||||
getTIdByPath: function(path) {
|
||||
getTIdByPath: function (path) {
|
||||
var nodes = tree.fileTree.transformToArray(tree.fileTree.getNodes());
|
||||
for (var i = 0, ii = nodes.length; i < ii; i++) {
|
||||
if (nodes[i].path === path) {
|
||||
|
@ -50,7 +50,7 @@ var tree = {
|
|||
return undefined;
|
||||
},
|
||||
fileTree: undefined,
|
||||
_isParents: function(tId, parentTId) {
|
||||
_isParents: function (tId, parentTId) {
|
||||
var node = tree.fileTree.getNodeByTId(tId);
|
||||
if (!node || !node.parentTId) {
|
||||
return false;
|
||||
|
@ -62,23 +62,23 @@ var tree = {
|
|||
}
|
||||
}
|
||||
},
|
||||
newFile: function() {
|
||||
newFile: function () {
|
||||
$("#dirRMenu").hide();
|
||||
var name = prompt("Name", "");
|
||||
if (!name) {
|
||||
return false;
|
||||
}
|
||||
|
||||
var request = {
|
||||
path: wide.curNode.path + '\\' + name,
|
||||
fileType: "f"
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.path = wide.curNode.path + '\\' + name;
|
||||
request.fileType = "f";
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/file/new',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (!data.succ) {
|
||||
return false;
|
||||
}
|
||||
|
@ -126,23 +126,23 @@ var tree = {
|
|||
}
|
||||
});
|
||||
},
|
||||
newDir: function() {
|
||||
newDir: function () {
|
||||
$("#dirRMenu").hide();
|
||||
var name = prompt("Name", "");
|
||||
if (!name) {
|
||||
return false;
|
||||
}
|
||||
|
||||
var request = {
|
||||
path: wide.curNode.path + '\\' + name,
|
||||
fileType: "d"
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.path = wide.curNode.path + '\\' + name;
|
||||
request.fileType = "d";
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/file/new',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (!data.succ) {
|
||||
return false;
|
||||
}
|
||||
|
@ -154,22 +154,23 @@ var tree = {
|
|||
}
|
||||
});
|
||||
},
|
||||
removeIt: function() {
|
||||
removeIt: function () {
|
||||
$("#dirRMenu").hide();
|
||||
$("#fileRMenu").hide();
|
||||
|
||||
if (!confirm("Remove it?")) {
|
||||
return;
|
||||
}
|
||||
var request = {
|
||||
path: wide.curNode.path
|
||||
};
|
||||
|
||||
var request = newWideRequest();
|
||||
request.path = wide.curNode.path;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/file/remove',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (!data.succ) {
|
||||
return false;
|
||||
}
|
||||
|
@ -196,12 +197,15 @@ var tree = {
|
|||
}
|
||||
});
|
||||
},
|
||||
init: function() {
|
||||
init: function () {
|
||||
var request = newWideRequest();
|
||||
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
type: 'POST',
|
||||
url: '/files',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (data.succ) {
|
||||
var dirRMenu = $("#dirRMenu");
|
||||
var fileRMenu = $("#fileRMenu");
|
||||
|
@ -210,7 +214,7 @@ var tree = {
|
|||
selectedMulti: false
|
||||
},
|
||||
callback: {
|
||||
onRightClick: function(event, treeId, treeNode) {
|
||||
onRightClick: function (event, treeId, treeNode) {
|
||||
if (treeNode) {
|
||||
wide.curNode = treeNode;
|
||||
if ("ico-ztree-dir " !== treeNode.iconSkin) { // 如果右击了文件
|
||||
|
@ -230,7 +234,7 @@ var tree = {
|
|||
}
|
||||
}
|
||||
},
|
||||
onClick: function(event, treeId, treeNode, clickFlag) {
|
||||
onClick: function (event, treeId, treeNode, clickFlag) {
|
||||
tree._onClick(treeNode);
|
||||
}
|
||||
}
|
||||
|
@ -240,7 +244,7 @@ var tree = {
|
|||
}
|
||||
});
|
||||
},
|
||||
_onClick: function(treeNode) {
|
||||
_onClick: function (treeNode) {
|
||||
if (wide.curNode) {
|
||||
for (var i = 0, ii = editors.data.length; i < ii; i++) {
|
||||
// 该节点文件已经打开
|
||||
|
@ -256,15 +260,15 @@ var tree = {
|
|||
wide.curNode = treeNode;
|
||||
|
||||
if ("ico-ztree-dir " !== treeNode.iconSkin) { // 如果单击了文件
|
||||
var request = {
|
||||
path: treeNode.path
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.path = treeNode.path;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/file',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (!data.succ) {
|
||||
alert(data.msg);
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
var outputWS = new WebSocket(config.channel.output + '/output/ws');
|
||||
outputWS.onopen = function() {
|
||||
outputWS.onopen = function () {
|
||||
console.log('[output onopen] connected');
|
||||
};
|
||||
|
||||
outputWS.onmessage = function(e) {
|
||||
outputWS.onmessage = function (e) {
|
||||
console.log('[output onmessage]' + e.data);
|
||||
var data = JSON.parse(e.data);
|
||||
|
||||
|
@ -12,19 +12,18 @@ outputWS.onmessage = function(e) {
|
|||
}
|
||||
|
||||
if ('run' === data.nextCmd) {
|
||||
var request = {
|
||||
executable: data.executable
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.executable = data.executable;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/run',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
beforeSend: function(data) {
|
||||
beforeSend: function (data) {
|
||||
$('#output').text('');
|
||||
},
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
|
||||
}
|
||||
});
|
||||
|
@ -55,34 +54,34 @@ outputWS.onmessage = function(e) {
|
|||
$('#output').text($('#output').text() + data.output);
|
||||
}
|
||||
};
|
||||
outputWS.onclose = function(e) {
|
||||
outputWS.onclose = function (e) {
|
||||
console.log('[output onclose] disconnected (' + e.code + ')');
|
||||
delete outputWS;
|
||||
};
|
||||
outputWS.onerror = function(e) {
|
||||
outputWS.onerror = function (e) {
|
||||
console.log('[output onerror] ' + e);
|
||||
};
|
||||
|
||||
var wide = {
|
||||
curNode: undefined,
|
||||
curEditor: undefined,
|
||||
_initLayout: function() {
|
||||
_initLayout: function () {
|
||||
var mainH = $(window).height() - $(".menu").height() - $(".footer").height() - 2;
|
||||
$(".content, .ztree").height(mainH);
|
||||
|
||||
$(".edit-panel").height(mainH - $(".bottom-window-group").height());
|
||||
},
|
||||
_initBottomWindowGroup: function() {
|
||||
_initBottomWindowGroup: function () {
|
||||
new Tabs({
|
||||
id: ".bottom-window-group"
|
||||
});
|
||||
},
|
||||
init: function() {
|
||||
init: function () {
|
||||
this._initLayout();
|
||||
|
||||
|
||||
this._initBottomWindowGroup();
|
||||
|
||||
$("body").bind("mousedown", function(event) {
|
||||
$("body").bind("mousedown", function (event) {
|
||||
if (!(event.target.id === "dirRMenu" || $(event.target).closest("#dirRMenu").length > 0)) {
|
||||
$("#dirRMenu").hide();
|
||||
}
|
||||
|
@ -99,38 +98,37 @@ var wide = {
|
|||
});
|
||||
|
||||
},
|
||||
saveFile: function() {
|
||||
var request = {
|
||||
file: $(".edit-header .current span:eq(0)").attr("title"),
|
||||
code: wide.curEditor.getValue()
|
||||
};
|
||||
saveFile: function () {
|
||||
var request = newWideRequest();
|
||||
request.file = $(".edit-header .current span:eq(0)").attr("title");
|
||||
request.code = wide.curEditor.getValue();
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/file/save',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
}
|
||||
});
|
||||
},
|
||||
saveAllFiles: function() {
|
||||
saveAllFiles: function () {
|
||||
// TODO: save all files
|
||||
},
|
||||
closeFile: function() {
|
||||
closeFile: function () {
|
||||
// TODO: close file
|
||||
},
|
||||
closeAllFiles: function() {
|
||||
closeAllFiles: function () {
|
||||
// TODO: close all files
|
||||
},
|
||||
exit: function() {
|
||||
exit: function () {
|
||||
// TODO: exit
|
||||
},
|
||||
// 构建 & 运行.
|
||||
run: function() {
|
||||
var request = {
|
||||
file: $(".edit-header .current span:eq(0)").attr("title"),
|
||||
code: wide.curEditor.getValue()
|
||||
};
|
||||
run: function () {
|
||||
var request = newWideRequest();
|
||||
request.file = $(".edit-header .current span:eq(0)").attr("title");
|
||||
request.code = wide.curEditor.getValue();
|
||||
|
||||
// TODO: 修改 [构建&运行] 图标状态为不可用状态
|
||||
|
||||
|
@ -139,58 +137,55 @@ var wide = {
|
|||
url: '/build',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
beforeSend: function(data) {
|
||||
beforeSend: function (data) {
|
||||
$('#output').text('');
|
||||
},
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
}
|
||||
});
|
||||
},
|
||||
goget: function() {
|
||||
var request = {
|
||||
file: $(".edit-header .current span:eq(0)").attr("title")
|
||||
};
|
||||
goget: function () {
|
||||
var request = newWideRequest();
|
||||
request.file = $(".edit-header .current span:eq(0)").attr("title");
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/go/get',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
beforeSend: function(data) {
|
||||
beforeSend: function (data) {
|
||||
$('#output').text('');
|
||||
},
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
}
|
||||
});
|
||||
},
|
||||
goinstall: function() {
|
||||
var request = {
|
||||
file: $(".edit-header .current span:eq(0)").attr("title"),
|
||||
code: wide.curEditor.getValue()
|
||||
};
|
||||
goinstall: function () {
|
||||
var request = newWideRequest();
|
||||
request.file = $(".edit-header .current span:eq(0)").attr("title");
|
||||
request.code = wide.curEditor.getValue();
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '/go/install',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
beforeSend: function(data) {
|
||||
beforeSend: function (data) {
|
||||
$('#output').text('');
|
||||
},
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
}
|
||||
});
|
||||
},
|
||||
fmt: function() {
|
||||
fmt: function () {
|
||||
var path = $(".edit-header .current span:eq(0)").attr("title");
|
||||
var mode = wide.curNode.mode;
|
||||
|
||||
var request = {
|
||||
file: path,
|
||||
code: wide.curEditor.getValue(),
|
||||
cursorLine: wide.curEditor.getCursor().line,
|
||||
cursorCh: wide.curEditor.getCursor().ch
|
||||
};
|
||||
var request = newWideRequest();
|
||||
request.file = path;
|
||||
request.code = wide.curEditor.getValue();
|
||||
request.cursorLine = wide.curEditor.getCursor().line;
|
||||
request.cursorCh = wide.curEditor.getCursor().ch;
|
||||
|
||||
switch (mode) {
|
||||
case "text/x-go":
|
||||
|
@ -199,7 +194,7 @@ var wide = {
|
|||
url: '/go/fmt',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (data.succ) {
|
||||
wide.curEditor.setValue(data.code);
|
||||
}
|
||||
|
@ -213,7 +208,7 @@ var wide = {
|
|||
url: '/html/fmt',
|
||||
data: JSON.stringify(request),
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
success: function (data) {
|
||||
if (data.succ) {
|
||||
wide.curEditor.setValue(data.code);
|
||||
}
|
||||
|
@ -240,7 +235,7 @@ var wide = {
|
|||
}
|
||||
};
|
||||
|
||||
$(document).ready(function() {
|
||||
$(document).ready(function () {
|
||||
wide.init();
|
||||
tree.init();
|
||||
menu.init();
|
||||
|
|
|
@ -172,7 +172,17 @@
|
|||
output: {{.conf.OutputChannel}}
|
||||
},
|
||||
wideSessionId: {{.session.Id}}
|
||||
};</script>
|
||||
};
|
||||
// 发往 Wide 的所有 AJAX 请求需要使用该函数创建请求参数.
|
||||
function newWideRequest() {
|
||||
var ret = {
|
||||
sid: config.wideSessionId
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
</script>
|
||||
<script type="text/javascript" src="{{.conf.StaticServer}}/static/js/lib/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="{{.conf.StaticServer}}/static/js/lib/reconnecting-websocket.js"></script>
|
||||
<script type="text/javascript" src="{{.conf.StaticServer}}/static/js/lib/ztree/jquery.ztree.all-3.5.min.js"></script>
|
||||
|
|
Loading…
Reference in New Issue