mirror of
https://shylinux.com/x/icebergs
synced 2025-05-01 19:19:24 +08:00
opt vimer.js
This commit is contained in:
parent
4acbe03c1f
commit
73e92ec42a
@ -17,6 +17,27 @@ func init() {
|
||||
mdb.SHORT, mdb.NAME, mdb.FIELD, "time,name,照片,性别,年龄,身高,体重,籍贯,户口,学历,学校,职业,公司,年薪,资产,家境",
|
||||
)},
|
||||
}, Commands: map[string]*ice.Command{
|
||||
"monkey": {Name: "monkey total=888 count=9 run", Help: "猴子开箱子", Meta: kit.Dict("_trans", kit.Dict("name", "姓名")), Action: ice.MergeAction(map[string]*ice.Action{
|
||||
mdb.CREATE: {Name: "create name 照片 性别 年龄 身高 体重 籍贯 户口 学历 学校 职业 公司 年薪 资产 家境", Help: "添加"},
|
||||
}, mdb.HashAction()), Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
||||
total := kit.Int(arg[0])
|
||||
count := kit.Int(arg[1])
|
||||
for i := 1; i <= total; i++ {
|
||||
list := []int{}
|
||||
for j := 1; j <= i/2; j++ {
|
||||
if i%j == 0 {
|
||||
list = append(list, j)
|
||||
}
|
||||
}
|
||||
list = append(list, i)
|
||||
if len(list) == count {
|
||||
m.Push("index", i)
|
||||
m.Push("count", len(list))
|
||||
m.Push("value", kit.Format(list))
|
||||
}
|
||||
}
|
||||
m.StatusTimeCount()
|
||||
}},
|
||||
MISS: {Name: "miss name auto create", Help: "资料", Meta: kit.Dict("_trans", kit.Dict("name", "姓名")), Action: ice.MergeAction(map[string]*ice.Action{
|
||||
mdb.CREATE: {Name: "create name 照片 性别 年龄 身高 体重 籍贯 户口 学历 学校 职业 公司 年薪 资产 家境", Help: "添加"},
|
||||
}, mdb.HashAction()), Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
||||
|
@ -91,6 +91,8 @@ func init() {
|
||||
m.Cmd(mdb.RENDER, mdb.CREATE, k, m.Prefix(k))
|
||||
}
|
||||
LoadPlug(m, GO)
|
||||
LoadPlug(m, MOD)
|
||||
LoadPlug(m, PROTO)
|
||||
}},
|
||||
GODOC: {Name: GODOC, Help: "文档", Action: ice.MergeAction(map[string]*ice.Action{
|
||||
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) {
|
||||
@ -137,7 +139,7 @@ func init() {
|
||||
PREFIX, kit.Dict("//", COMMENT),
|
||||
PREPARE, kit.Dict(
|
||||
KEYWORD, kit.Simple(
|
||||
"module", "require", "replace", "=>",
|
||||
"go", "module", "require", "replace", "=>",
|
||||
),
|
||||
), KEYWORD, kit.Dict(),
|
||||
))},
|
||||
@ -149,13 +151,14 @@ func init() {
|
||||
"package", "import", "type", "struct", "interface", "const", "var", "func",
|
||||
"if", "else", "for", "range", "break", "continue",
|
||||
"switch", "case", "default", "fallthrough",
|
||||
"go", "select", "defer", "return",
|
||||
"go", "select", "defer", "return", "panic", "recover",
|
||||
),
|
||||
DATATYPE, kit.Simple(
|
||||
"int", "int32", "int64", "float64",
|
||||
"string", "byte", "bool", "error", "chan", "map",
|
||||
),
|
||||
FUNCTION, kit.Simple(
|
||||
"init", "main", "print",
|
||||
"new", "make", "len", "cap", "copy", "append", "delete", "msg", "m",
|
||||
),
|
||||
CONSTANT, kit.Simple(
|
||||
|
@ -17,6 +17,7 @@ func _inner_exec(m *ice.Message, ext, file, dir string, arg ...string) {
|
||||
if !m.Right(dir, file) {
|
||||
return // 没有权限
|
||||
}
|
||||
defer m.StatusTime()
|
||||
if m.Cmdy(mdb.ENGINE, ext, file, dir, arg); m.Result() != "" {
|
||||
return // 执行成功
|
||||
}
|
||||
@ -47,7 +48,10 @@ func LoadPlug(m *ice.Message, language string) {
|
||||
|
||||
func PlugAction(fields ...string) map[string]*ice.Action {
|
||||
return ice.SelectAction(map[string]*ice.Action{
|
||||
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) { m.Echo(m.Config(PLUG)) }},
|
||||
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Debug("what %v", m.Config(PLUG))
|
||||
m.Echo(m.Config(PLUG))
|
||||
}},
|
||||
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) { m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1])) }},
|
||||
}, fields...)
|
||||
}
|
||||
@ -72,9 +76,7 @@ const INNER = "inner"
|
||||
|
||||
func init() {
|
||||
Index.Merge(&ice.Context{Commands: map[string]*ice.Command{
|
||||
INNER: {Name: "inner path=src/@key file=main.go line=1 auto", Help: "源代码", Meta: kit.Dict(
|
||||
ice.DisplayLocal(""),
|
||||
), Action: ice.MergeAction(map[string]*ice.Action{
|
||||
INNER: {Name: "inner path=src/@key file=main.go line=1 auto", Help: "源代码", Meta: kit.Dict(ice.DisplayLocal("")), Action: ice.MergeAction(map[string]*ice.Action{
|
||||
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]))))
|
||||
@ -82,18 +84,17 @@ func init() {
|
||||
m.Set(ice.MSG_STATUS)
|
||||
}},
|
||||
mdb.SEARCH: {Name: "search", Help: "搜索", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Option(cli.CMD_DIR, kit.Path(arg[2]))
|
||||
m.Option(nfs.DIR_ROOT, arg[2])
|
||||
m.Option(cli.CMD_DIR, kit.Path(arg[2]))
|
||||
m.Cmdy(mdb.SEARCH, arg[0], arg[1], arg[2])
|
||||
m.Cmd(FAVOR, arg[1], ice.OptionFields("")).Table(func(index int, value map[string]string, head []string) {
|
||||
p := path.Join(value[nfs.PATH], value[nfs.FILE])
|
||||
if strings.HasPrefix(p, m.Option(nfs.PATH)) {
|
||||
if p := path.Join(value[nfs.PATH], value[nfs.FILE]); strings.HasPrefix(p, m.Option(nfs.PATH)) {
|
||||
m.Push(nfs.FILE, strings.TrimPrefix(p, m.Option(nfs.PATH)))
|
||||
m.Push(nfs.LINE, value[nfs.LINE])
|
||||
m.Push(mdb.TEXT, value[mdb.TEXT])
|
||||
}
|
||||
})
|
||||
if m.StatusTimeCount("index", 0); m.Length() == 0 {
|
||||
if m.StatusTimeCount(mdb.INDEX, 0); m.Length() == 0 {
|
||||
m.Cmdy(INNER, nfs.GREP, arg[1])
|
||||
}
|
||||
}},
|
||||
@ -104,7 +105,7 @@ func init() {
|
||||
}},
|
||||
nfs.GREP: {Name: "grep", Help: "搜索", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Cmdy(nfs.GREP, m.Option(nfs.PATH), arg[0])
|
||||
m.StatusTimeCount("index", 0)
|
||||
m.StatusTimeCount(mdb.INDEX, 0)
|
||||
}},
|
||||
cli.MAKE: {Name: "make", Help: "构建", Hand: func(m *ice.Message, arg ...string) {
|
||||
msg := m.Cmd(cli.SYSTEM, cli.MAKE, arg)
|
||||
@ -129,12 +130,10 @@ func init() {
|
||||
case nfs.PATH:
|
||||
m.Cmdy(nfs.DIR, arg[1:], "path,size,time").ProcessAgain()
|
||||
case nfs.FILE:
|
||||
m.Option(nfs.DIR_ROOT, m.Option(nfs.PATH))
|
||||
m.Cmdy(nfs.DIR, ice.PWD, "path,size,time").ProcessAgain()
|
||||
m.Cmdy(nfs.DIR, ice.PWD, "path,size,time", kit.Dict(nfs.DIR_ROOT, m.Option(nfs.PATH))).ProcessAgain()
|
||||
case "url":
|
||||
m.Option(nfs.DIR_DEEP, ice.TRUE)
|
||||
m.Option(nfs.DIR_ROOT, "usr/volcanos/plugin/local/code/")
|
||||
m.Cmdy(nfs.DIR, ice.PWD, "path,size,time").ProcessAgain()
|
||||
m.Cmdy(nfs.DIR, ice.PWD, "path,size,time", kit.Dict(nfs.DIR_DEEP, ice.TRUE)).ProcessAgain()
|
||||
default:
|
||||
m.Cmdy(FAVOR, mdb.INPUTS, arg)
|
||||
}
|
||||
@ -149,12 +148,15 @@ func init() {
|
||||
}
|
||||
if len(arg) < 2 {
|
||||
nfs.Dir(m, nfs.PATH)
|
||||
m.Set(ice.MSG_STATUS)
|
||||
return
|
||||
}
|
||||
m.Option("exts", "inner/search.js?a=1,inner/favor.js")
|
||||
arg[1] = kit.Split(arg[1])[0]
|
||||
_inner_list(m, kit.Ext(arg[1]), arg[1], arg[0])
|
||||
if m.IsErrNotFound() {
|
||||
m.SetResult()
|
||||
m.Echo("")
|
||||
}
|
||||
m.Set(ice.MSG_STATUS)
|
||||
}},
|
||||
}, Configs: map[string]*ice.Config{
|
||||
|
@ -14,9 +14,7 @@ const VIMER = "vimer"
|
||||
|
||||
func init() {
|
||||
Index.Merge(&ice.Context{Commands: map[string]*ice.Command{
|
||||
VIMER: {Name: "vimer path=src/ file=main.go line=1 refresh:button=auto save", Help: "编辑器", Meta: kit.Dict(
|
||||
ice.DisplayLocal("", INNER),
|
||||
), Action: map[string]*ice.Action{
|
||||
VIMER: {Name: "vimer path=src/ file=main.go line=1 auto", Help: "编辑器", Meta: kit.Dict(ice.DisplayLocal("", INNER)), Action: map[string]*ice.Action{
|
||||
nfs.SAVE: {Name: "save type file path", Help: "保存", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Cmdy(nfs.SAVE, path.Join(m.Option(nfs.PATH), m.Option(nfs.FILE)))
|
||||
}},
|
||||
|
Loading…
x
Reference in New Issue
Block a user