From 15da224680e83967753bdafc98f5cb48d039a2db Mon Sep 17 00:00:00 2001 From: harveyshao Date: Fri, 20 Jan 2023 14:51:05 +0800 Subject: [PATCH] opt log --- base/cli/forever.go | 5 ++++- base/cli/runtime.go | 2 +- base/mdb/mdb.go | 1 + base/nfs/dir.go | 3 +++ base/nfs/grep.go | 2 +- base/web/render.go | 7 +++++-- conf.go | 1 + core/code/vimer.go | 3 +++ misc/git/status.go | 8 ++++++-- 9 files changed, 25 insertions(+), 7 deletions(-) diff --git a/base/cli/forever.go b/base/cli/forever.go index 2bb027bc..8b92c279 100644 --- a/base/cli/forever.go +++ b/base/cli/forever.go @@ -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) }}, diff --git a/base/cli/runtime.go b/base/cli/runtime.go index 9f90ffc0..32a0cb94 100644 --- a/base/cli/runtime.go +++ b/base/cli/runtime.go @@ -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() }}, diff --git a/base/mdb/mdb.go b/base/mdb/mdb.go index 3c39c900..c792b067 100644 --- a/base/mdb/mdb.go +++ b/base/mdb/mdb.go @@ -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 diff --git a/base/nfs/dir.go b/base/nfs/dir.go index d6ec8d9f..0fe6695e 100644 --- a/base/nfs/dir.go +++ b/base/nfs/dir.go @@ -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 } diff --git a/base/nfs/grep.go b/base/nfs/grep.go index bb166822..c684ecdd 100644 --- a/base/nfs/grep.go +++ b/base/nfs/grep.go @@ -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]) } diff --git a/base/web/render.go b/base/web/render.go index 92472d97..fd4a6fcd 100644 --- a/base/web/render.go +++ b/base/web/render.go @@ -205,11 +205,14 @@ var _cmd_template = ` volcanos - + + - + + + ` diff --git a/conf.go b/conf.go index 08ec450f..89a841c4 100644 --- a/conf.go +++ b/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" diff --git a/core/code/vimer.go b/core/code/vimer.go index 7da21c24..25e1d672 100644 --- a/core/code/vimer.go +++ b/core/code/vimer.go @@ -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 diff --git a/misc/git/status.go b/misc/git/status.go index 97226108..1c02b525 100644 --- a/misc/git/status.go +++ b/misc/git/status.go @@ -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)