mirror of
https://shylinux.com/x/icebergs
synced 2025-05-01 03:09:21 +08:00
opt some
This commit is contained in:
parent
1382ed1ff3
commit
ecddb6cdae
@ -1,6 +1,11 @@
|
||||
package lex
|
||||
|
||||
const PREFIX = "prefix"
|
||||
const SUFFIX = "suffix"
|
||||
const REGEXP = "regexp"
|
||||
const PATTERN = "pattern"
|
||||
const (
|
||||
PATTERN = "pattern"
|
||||
REGEXP = "regexp"
|
||||
PREFIX = "prefix"
|
||||
SUFFIX = "suffix"
|
||||
|
||||
SPACE = "space"
|
||||
OPERATOR = "operator"
|
||||
)
|
||||
|
@ -21,8 +21,7 @@ func _inner_list(m *ice.Message, ext, file, dir string) {
|
||||
m.Cmdy(nfs.CAT, path.Join(dir, file))
|
||||
}
|
||||
if m.IsErrNotFound() {
|
||||
m.SetResult()
|
||||
_inner_show(m, ext, file, dir)
|
||||
_inner_show(m.SetResult(), ext, file, dir)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -73,9 +72,9 @@ const (
|
||||
FUNCTION = "function"
|
||||
)
|
||||
const (
|
||||
SPACE = "space"
|
||||
OPERATE = "operate"
|
||||
SPLIT = lex.SPLIT
|
||||
SPACE = lex.SPACE
|
||||
OPERATOR = lex.OPERATOR
|
||||
PREFIX = lex.PREFIX
|
||||
SUFFIX = lex.SUFFIX
|
||||
)
|
||||
@ -93,29 +92,21 @@ func init() {
|
||||
m.Cmd(aaa.ROLE, aaa.WHITE, aaa.VOID, m.PrefixKey())
|
||||
m.Cmd(aaa.ROLE, aaa.WHITE, aaa.VOID, ice.SRC_MAIN_GO)
|
||||
}},
|
||||
mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) {
|
||||
mdb.INPUTS: {Hand: func(m *ice.Message, arg ...string) {
|
||||
switch arg[0] {
|
||||
case nfs.PATH:
|
||||
m.Cmdy(nfs.DIR, arg[1:], nfs.DIR_CLI_FIELDS).ProcessAgain()
|
||||
m.Cmdy(nfs.DIR, kit.Select(nfs.PWD, arg, 1), nfs.DIR_CLI_FIELDS).ProcessAgain()
|
||||
case nfs.FILE:
|
||||
p := kit.Select(nfs.PWD, arg, 1)
|
||||
m.Option(nfs.DIR_ROOT, m.Option(nfs.PATH))
|
||||
m.Cmdy(nfs.DIR, kit.Select(path.Dir(p), p, strings.HasSuffix(p, ice.FS))+ice.PS, nfs.DIR_CLI_FIELDS).ProcessAgain()
|
||||
m.Cmdy(nfs.DIR, kit.Select(path.Dir(p), p, strings.HasSuffix(p, ice.PS))+ice.PS, nfs.DIR_CLI_FIELDS).ProcessAgain()
|
||||
default:
|
||||
m.Cmdy(FAVOR, mdb.INPUTS, arg)
|
||||
}
|
||||
}},
|
||||
mdb.PLUGIN: {Name: "plugin", Help: "插件", Hand: func(m *ice.Message, arg ...string) {
|
||||
if m.Cmdy(mdb.PLUGIN, arg); m.Result() == "" {
|
||||
m.Echo(kit.Select("{}", m.Config(kit.Keys(PLUG, arg[0]))))
|
||||
}
|
||||
}},
|
||||
mdb.RENDER: {Name: "render", Help: "渲染", Hand: func(m *ice.Message, arg ...string) {
|
||||
_inner_show(m, arg[0], arg[1], arg[2])
|
||||
}},
|
||||
mdb.ENGINE: {Name: "engine", Help: "引擎", Hand: func(m *ice.Message, arg ...string) {
|
||||
_inner_exec(m, arg[0], arg[1], arg[2])
|
||||
}},
|
||||
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) { m.Cmdy(mdb.PLUGIN, arg) }},
|
||||
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) { _inner_show(m, arg[0], arg[1], arg[2]) }},
|
||||
mdb.ENGINE: {Hand: func(m *ice.Message, arg ...string) { _inner_exec(m, arg[0], arg[1], arg[2]) }},
|
||||
|
||||
nfs.GREP: {Name: "grep", Help: "搜索", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Cmdy(nfs.GREP, m.Option(nfs.PATH), arg[0]).StatusTimeCount(mdb.INDEX, 0)
|
||||
|
@ -17,12 +17,18 @@ import (
|
||||
|
||||
func _vimer_make(m *ice.Message, dir string, msg *ice.Message) {
|
||||
for _, line := range strings.Split(msg.Append(cli.CMD_ERR), ice.NL) {
|
||||
if strings.Contains(line, ice.DF) {
|
||||
if !strings.Contains(line, ice.DF) {
|
||||
continue
|
||||
}
|
||||
if ls := strings.SplitN(line, ice.DF, 4); len(ls) > 3 {
|
||||
m.Push(nfs.PATH, dir)
|
||||
m.Push(nfs.FILE, strings.TrimPrefix(ls[0], dir))
|
||||
for _, p := range kit.Split(dir) {
|
||||
if strings.HasPrefix(ls[0], p) {
|
||||
m.Push(nfs.PATH, p)
|
||||
m.Push(nfs.FILE, strings.TrimPrefix(ls[0], p))
|
||||
m.Push(nfs.LINE, ls[1])
|
||||
m.Push(mdb.TEXT, ls[3])
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -37,8 +43,8 @@ const VIMER = "vimer"
|
||||
|
||||
func init() {
|
||||
Index.MergeCommands(ice.Commands{
|
||||
VIMER: {Name: "vimer path=src/ file=main.go line=1@keyboard list", Help: "编辑器", Actions: ice.Actions{
|
||||
mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) {
|
||||
VIMER: {Name: "vimer path=src/ file=main.go line=1 list", Help: "编辑器", Actions: ice.Actions{
|
||||
mdb.INPUTS: {Hand: func(m *ice.Message, arg ...string) {
|
||||
switch m.Option(ctx.ACTION) {
|
||||
case AUTOGEN, web.DREAM, XTERM:
|
||||
m.Cmdy(m.Option(ctx.ACTION), mdb.INPUTS, arg)
|
||||
@ -58,11 +64,12 @@ func init() {
|
||||
}
|
||||
}
|
||||
}},
|
||||
nfs.SAVE: {Name: "save type file path", Help: "保存", Hand: func(m *ice.Message, arg ...string) {
|
||||
nfs.SAVE: {Name: "save", Help: "保存", Hand: func(m *ice.Message, arg ...string) {
|
||||
if m.Option(nfs.CONTENT) == "" {
|
||||
m.Option(nfs.CONTENT, m.Cmdx("", TEMPLATE))
|
||||
}
|
||||
m.Cmdy(nfs.SAVE, path.Join(m.Option(nfs.PATH), m.Option(nfs.FILE)))
|
||||
web.ToastSuccess(m)
|
||||
}},
|
||||
nfs.TRASH: {Name: "trash path", Help: "删除", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Cmd(nfs.TRASH, arg[0])
|
||||
@ -164,7 +171,7 @@ func LangAction() ice.Actions {
|
||||
}
|
||||
}
|
||||
func Complete(m *ice.Message, text string, data ice.Map) {
|
||||
if strings.HasSuffix(text, ".") {
|
||||
if strings.HasSuffix(text, ice.PT) {
|
||||
key := kit.Slice(kit.Split(text, " ."), -1)[0]
|
||||
m.Push(mdb.TEXT, kit.Simple(data[key]))
|
||||
} else {
|
||||
|
Loading…
x
Reference in New Issue
Block a user