diff --git a/frame.js b/frame.js
index 36379f1a..af0d1a97 100644
--- a/frame.js
+++ b/frame.js
@@ -50,7 +50,7 @@ Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta,
time: can.base.Time(null, "%H:%M:%S"), follow: panel._follow, msg: msg, commands: cmds,
})._event, ["Footer.onimport.ncmd"])
- can.misc.Run(event, can, {names: msg.Option("_names")||((can.Conf("iceberg")||"/chat/")+panel._name), daemon: can.ondaemon._list[0]+"."+msg._daemon}, cmds, function(msg) {
+ can.misc.Run(event, can, {names: msg.Option("_names")||panel._names||((can.Conf("iceberg")||"/chat/")+panel._name), daemon: can.ondaemon._list[0]+"."+msg._daemon}, cmds, function(msg) {
Volcanos.meta.pack[key] = msg, delete(msg._handle), delete(msg._toast)
can.base.isFunc(cb) && cb(msg)
})
diff --git a/page/cmd.html b/page/cmd.html
index 53bd62f5..1b1459c3 100644
--- a/page/cmd.html
+++ b/page/cmd.html
@@ -1,21 +1,13 @@
-
-
-
-
-
-
-
-
- volcanos
-
-
-
-
-
-
-
+
+
-
diff --git a/page/cmd.js b/page/cmd.js
deleted file mode 100644
index dd592398..00000000
--- a/page/cmd.js
+++ /dev/null
@@ -1,20 +0,0 @@
-Volcanos({name: "chat", iceberg: "/chat/", volcano: "/frame.js",
- libs: ["/lib/base.js", "/lib/core.js", "/lib/misc.js", "/lib/page.js", "/lib/user.js"], panels: [
- {name: "cmd", help: "工作台", pos: "main"},
- ], main: {name: "Header", list: []}, plugin: [
- "/plugin/state.js",
- "/plugin/input.js",
- "/plugin/table.js",
- "/plugin/input/key.js",
- "/plugin/input/date.js",
- "/plugin/story/trend.js",
- "/plugin/story/spide.js",
- "/plugin/local/code/inner.js",
- "/plugin/local/code/vimer.js",
- "/plugin/local/wiki/draw/path.js",
- "/plugin/local/wiki/draw.js",
- "/plugin/local/wiki/word.js",
- "/plugin/local/team/plan.js",
- ],
-})
-
diff --git a/panel/cmd.js b/panel/cmd.js
index a12c9301..e243bfbb 100644
--- a/panel/cmd.js
+++ b/panel/cmd.js
@@ -2,9 +2,12 @@ Volcanos("onaction", {help: "交互操作", list: [], _init: function(can, msg,
can.onmotion.float.auto(can, can._output, "carte")
can.base.isFunc(cb) && cb()
},
- onmain: function(can) {
+ onmain: function(can) { can._names = location.pathname
var msg = can.request({}, {_names: location.pathname})
- can.run(msg._event, [ctx.ACTION, ctx.COMMAND], function(msg) {
+ can.Conf("tool")? can.core.Next(can.Conf("tool"), function(line, next) {
+ can.onaction._plugin(can, line.index, can.base.Obj(line.args, []), next)
+
+ }): can.run(msg._event, [ctx.ACTION, ctx.COMMAND], function(msg) {
can.core.Next(msg.Table(), function(line, next) {
can.onaction._plugin(can, line.index, can.base.Obj(line.args, []), next)
})
@@ -14,7 +17,6 @@ Volcanos("onaction", {help: "交互操作", list: [], _init: function(can, msg,
_plugin: function(can, index, args, next) {
can.onappend.plugin(can, {type: "plugin", index: index, args: args, opts: can.user.Search(), width: window.innerWidth}, function(sub, meta) {
sub.run = function(event, cmds, cb) {
- var msg = can.request(event, {_names: location.pathname})
can.run(event, (can.onengine[cmds[0]]? []: [ctx.ACTION, "run", index]).concat(cmds), cb)
}
// can.onmotion.hidden(can, sub._legend)
diff --git a/plugin/state.js b/plugin/state.js
index c1d85a05..8a57bde2 100644
--- a/plugin/state.js
+++ b/plugin/state.js
@@ -6,7 +6,10 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, conf,
return can.core.CallFunc([can.onimport, msg.OptionProcess()], [can, msg])
},
- _rewrite: function(can, msg, _arg) { can.Option(msg._arg[0], msg._arg[1])
+ _location: function(can, msg) {
+ location.href = msg._arg[0]
+ },
+ _rewrite: function(can, msg) { can.Option(msg._arg[0], msg._arg[1])
can.onappend._output(can, can.Conf(), {}, can.Pack())
return true
},
diff --git a/proto.js b/proto.js
index 25d338f4..227a661a 100644
--- a/proto.js
+++ b/proto.js
@@ -152,7 +152,7 @@ var Volcanos = shy("火山架", {volcano: "/frame.js", args: {}, pack: {}, libs:
Config.main = Config.main||{}
// 预加载
- var Preload = []; for (var i = 0; i < Config.panels.length; i++) { var panel = Config.panels[i]
+ var Preload = Config.preload||[]; for (var i = 0; i < Config.panels.length; i++) { var panel = Config.panels[i]
panel && (Preload = Preload.concat(panel.list = panel.list || ["/panel/"+panel.name+".css", "/panel/"+panel.name+".js"]))
}; Preload = Preload.concat(Config.plugin)
@@ -238,3 +238,24 @@ Volcanos.meta._load = function(url, cb) {
return item
}
}
+
+function app(name, tool) {
+ Volcanos({name: name, iceberg: "/chat/", volcano: "/frame.js", preload: ["/page/can.css"],
+ libs: ["/lib/base.js", "/lib/core.js", "/lib/misc.js", "/lib/page.js", "/lib/user.js"],
+ panels: [{name: "cmd", help: "工作台", pos: "main", tool: tool}], main: {name: "Header", list: []}, plugin: [
+ "/plugin/state.js",
+ "/plugin/input.js",
+ "/plugin/table.js",
+ "/plugin/input/key.js",
+ "/plugin/input/date.js",
+ "/plugin/story/trend.js",
+ "/plugin/story/spide.js",
+ "/plugin/local/code/inner.js",
+ "/plugin/local/code/vimer.js",
+ "/plugin/local/wiki/draw/path.js",
+ "/plugin/local/wiki/draw.js",
+ "/plugin/local/wiki/word.js",
+ "/plugin/local/team/plan.js",
+ ],
+ })
+}