diff --git a/core/code/inner.go b/core/code/inner.go index 6347f701..44cadb0e 100644 --- a/core/code/inner.go +++ b/core/code/inner.go @@ -121,10 +121,13 @@ func init() { }}, FAVOR: {Name: "favor", Help: "收藏"}, ctx.COMMAND: {Name: "command", Help: "命令", Hand: func(m *ice.Message, arg ...string) { - m.Cmd(FAVOR, mdb.INSERT, mdb.ZONE, "_vimer", nfs.FILE, arg[0]) if !ctx.PodCmd(m, ctx.COMMAND, arg) { m.Cmdy(ctx.COMMAND, arg) } + if len(arg) == 2 && arg[0] == mdb.SEARCH && arg[1] == ctx.COMMAND { + return + } + m.Cmd(FAVOR, mdb.INSERT, mdb.ZONE, "_vimer", nfs.FILE, arg[0]) }}, }, ctx.CmdAction()), Hand: func(m *ice.Message, arg ...string) { if arg[0] = strings.Split(arg[0], ice.FS)[0]; !strings.HasSuffix(arg[0], ice.PS) && len(arg) == 1 { diff --git a/core/code/xterm.go b/core/code/xterm.go index a41aedff..725b2c51 100644 --- a/core/code/xterm.go +++ b/core/code/xterm.go @@ -77,8 +77,12 @@ func init() { ctx.ProcessField(m, "", arg, arg...) }}, mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) { - switch mdb.HashInputs(m, arg).Cmdy(FAVOR, "_xterm").Cut(arg[0]); arg[0] { + switch mdb.HashInputs(m, arg).Cmdy(FAVOR, "_xterm", ice.OptionFields(arg[0])).Cut(arg[0]); arg[0] { case mdb.TYPE: + m.Debug("what %v ", m.FormatsMeta()) + if m.Option(nfs.LINE) != "" && m.Option(nfs.FILE) != "" { + m.Push(arg[0], "vim +"+m.Option(nfs.LINE)+" "+m.Option(nfs.PATH)+m.Option(nfs.FILE)) + } m.Push(arg[0], "bash", "sh") case mdb.NAME: m.Push(arg[0], ice.Info.HostName, path.Base(m.Option(mdb.TYPE)))