mirror of
https://shylinux.com/x/icebergs
synced 2025-04-26 01:24:05 +08:00
opt log
This commit is contained in:
parent
c07994d42b
commit
15da224680
@ -40,7 +40,10 @@ func init() {
|
||||
if bin := kit.Select(os.Args[0], ice.BIN_ICE_BIN, nfs.ExistsFile(m, ice.BIN_ICE_BIN)); len(arg) > 0 && arg[0] == ice.SPACE {
|
||||
m.Cmdy(FOREVER, bin, ice.SPACE, "dial", ice.DEV, ice.OPS, arg[1:])
|
||||
} else {
|
||||
m.Cmdy(FOREVER, bin, ice.SERVE, START, ice.DEV, "", arg)
|
||||
if len(arg) == 0 || arg[0] != ice.DEV {
|
||||
arg = append([]string{ice.DEV, ""}, arg...)
|
||||
}
|
||||
m.Cmdy(FOREVER, bin, ice.SERVE, START, arg)
|
||||
}
|
||||
}},
|
||||
RESTART: {Hand: func(m *ice.Message, arg ...string) { m.Cmd(gdb.SIGNAL, gdb.RESTART) }},
|
||||
|
@ -163,7 +163,7 @@ func init() {
|
||||
USERINFO: {Hand: func(m *ice.Message, arg ...string) { m.Split(m.Cmdx(SYSTEM, "who"), "user term time") }},
|
||||
PROCINFO: {Hand: func(m *ice.Message, arg ...string) {
|
||||
msg := m.Cmd("", HOSTINFO)
|
||||
m.Split(m.Cmdx(SYSTEM, "ps", "u")).PushAction(PROCKILL).SortIntR("RSS")
|
||||
m.Split(m.Cmdx(SYSTEM, "ps", "u")).PushAction(PROCKILL).Sort("COMMAND")
|
||||
m.StatusTimeCount("nCPU", msg.Append("nCPU"), "MemTotal", msg.Append("MemTotal"), "MemFree", msg.Append("MemFree"))
|
||||
}},
|
||||
PROCKILL: {Help: "结束进程", Hand: func(m *ice.Message, arg ...string) { m.Cmdy(gdb.SIGNAL, gdb.STOP, m.Option("PID")).ProcessRefresh() }},
|
||||
|
@ -80,6 +80,7 @@ const (
|
||||
NAME = kit.MDB_NAME
|
||||
TEXT = kit.MDB_TEXT
|
||||
DATA = kit.MDB_DATA
|
||||
VIEW = kit.MDB_VIEW
|
||||
|
||||
LINK = kit.MDB_LINK
|
||||
FILE = kit.MDB_FILE
|
||||
|
@ -175,6 +175,9 @@ func init() {
|
||||
if strings.HasPrefix(dir, ice.PS) {
|
||||
root = ice.PS
|
||||
}
|
||||
if root == ice.PS && dir == ice.PS {
|
||||
root, dir = PWD, PWD
|
||||
}
|
||||
if !aaa.Right(m, path.Join(root, dir)) {
|
||||
return
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ func init() {
|
||||
Index.MergeCommands(ice.Commands{
|
||||
GREP: {Name: "grep word path auto", Help: "搜索", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Option("cmd_dir", kit.Select(m.Option(PATH), arg, 1))
|
||||
for _, line := range strings.Split(m.Cmdx("cli.system", GREP, "--exclude=.[a-z]*", "--exclude-dir=.[a-z]*", "-rni", arg[0], ice.PT), ice.NL) {
|
||||
for _, line := range strings.Split(m.Cmdx("cli.system", GREP, "--exclude=.[a-z]*", "--exclude-dir=.[a-z]*", "--exclude-dir=node_modules", "-rni", arg[0], ice.PT), ice.NL) {
|
||||
if ls := strings.SplitN(line, ice.DF, 3); len(ls) > 2 {
|
||||
m.Push(FILE, strings.TrimPrefix(ls[0], PWD)).Push(LINE, ls[1]).Push(mdb.TEXT, ls[2])
|
||||
}
|
||||
|
@ -205,11 +205,14 @@ var _cmd_template = `<!DOCTYPE html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width,initial-scale=0.8,maximum-scale=0.8,user-scalable=no">
|
||||
<meta charset="utf-8"><title>volcanos</title>
|
||||
<link href="/page/can.css{{.version}}" rel="stylesheet">
|
||||
<link href="/index.css{{.version}}" rel="stylesheet">
|
||||
<link href="/page/cache.css{{.version}}" rel="stylesheet">
|
||||
<link href="/page/favicon.ico" rel="shortcut icon" type="image/ico">
|
||||
</head>
|
||||
<body>
|
||||
<script>_version = "{{.version}}"</script>
|
||||
<script src="/page/can.js{{.version}}"></script><script>Volcanos({{.list}})</script>
|
||||
<script src="/proto.js{{.version}}"></script>
|
||||
<script src="/page/cache.js{{.version}}"></script>
|
||||
<script>Volcanos({{.list}})</script>
|
||||
</body>
|
||||
`
|
||||
|
1
conf.go
1
conf.go
@ -192,6 +192,7 @@ const ( // MSG
|
||||
MSG_LANGUAGE = "user.lang"
|
||||
MSG_USERHOST = "user.host"
|
||||
|
||||
MSG_MODE = "sess.mode"
|
||||
MSG_TITLE = "sess.title"
|
||||
MSG_TOPIC = "sess.topic"
|
||||
MSG_RIVER = "sess.river"
|
||||
|
@ -196,6 +196,9 @@ func init() {
|
||||
Index.MergeCommands(ice.Commands{COMPLETE: {Name: "complete type name text auto", Help: "补全", Actions: mdb.RenderAction()}})
|
||||
Index.MergeCommands(ice.Commands{NAVIGATE: {Name: "navigate type name text auto", Help: "跳转", Actions: mdb.RenderAction()}})
|
||||
ice.AddMerges(func(c *ice.Context, key string, cmd *ice.Command, sub string, action *ice.Action) (ice.Handler, ice.Handler) {
|
||||
if strings.HasPrefix(key, ice.PS) {
|
||||
return nil, nil
|
||||
}
|
||||
switch sub {
|
||||
case TEMPLATE, COMPLETE, NAVIGATE:
|
||||
return func(m *ice.Message, arg ...string) { m.Cmd(sub, mdb.CREATE, key, m.PrefixKey()) }, nil
|
||||
|
@ -112,7 +112,7 @@ func _status_stat(m *ice.Message, files, adds, dels int) (int, int, int) {
|
||||
return files, adds, dels
|
||||
}
|
||||
func _status_list(m *ice.Message) (files, adds, dels int, last time.Time) {
|
||||
onlychange := m.Option("view") == "change"
|
||||
onlychange := m.Option(ice.MSG_MODE) == mdb.ZONE || m.Option("view") == "change"
|
||||
ReposList(m).Tables(func(value ice.Maps) {
|
||||
m.Option(cli.CMD_DIR, value[nfs.PATH])
|
||||
files, adds, dels = _status_stat(m, files, adds, dels)
|
||||
@ -130,7 +130,11 @@ func _status_list(m *ice.Message) (files, adds, dels int, last time.Time) {
|
||||
if onlychange && ls[0] == "##" {
|
||||
return
|
||||
}
|
||||
switch m.Push(REPOS, value[REPOS]).Push(mdb.TYPE, ls[0]).Push(nfs.FILE, ls[1]); ls[0] {
|
||||
if m.Push(REPOS, value[REPOS]).Push(mdb.TYPE, ls[0]).Push(nfs.FILE, ls[1]); onlychange {
|
||||
m.Push(nfs.PATH, value[nfs.PATH]).Push(mdb.VIEW, kit.Format("%s %s",
|
||||
ls[0]+strings.Repeat(" ", len(ls[0])-9), kit.Select("", ice.USR+ice.PS+value[REPOS]+ice.PS, value[REPOS] != ice.CONTEXTS)+ls[1]))
|
||||
}
|
||||
switch ls[0] {
|
||||
case "##":
|
||||
if m.Push(TAGS, tags); strings.Contains(ls[1], "ahead") || !strings.Contains(ls[1], "...") {
|
||||
m.PushButton(PUSH)
|
||||
|
Loading…
x
Reference in New Issue
Block a user