1
0
mirror of https://shylinux.com/x/icebergs synced 2025-04-28 18:22:02 +08:00

add go.proto

This commit is contained in:
harveyshao 2021-06-03 23:59:37 +08:00
parent c05480905c
commit bc17b540bf
3 changed files with 44 additions and 19 deletions

View File

@ -9,7 +9,6 @@ import (
"unsafe" "unsafe"
"github.com/kr/pty" "github.com/kr/pty"
ice "github.com/shylinux/icebergs" ice "github.com/shylinux/icebergs"
"github.com/shylinux/icebergs/base/cli" "github.com/shylinux/icebergs/base/cli"
"github.com/shylinux/icebergs/base/mdb" "github.com/shylinux/icebergs/base/mdb"

View File

@ -33,10 +33,12 @@ func init() {
m.Cmdy(mdb.DELETE, FAVOR, "", mdb.HASH, kit.MDB_TOPIC, m.Option(kit.MDB_TOPIC)) m.Cmdy(mdb.DELETE, FAVOR, "", mdb.HASH, kit.MDB_TOPIC, m.Option(kit.MDB_TOPIC))
}}, }},
mdb.EXPORT: {Name: "export", Help: "导出", Hand: func(m *ice.Message, arg ...string) { mdb.EXPORT: {Name: "export", Help: "导出", Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(mdb.EXPORT, FAVOR, "", mdb.HASH) m.Option(mdb.FIELDS, "topic,id,time,type,name,text,path,file,line")
m.Cmdy(mdb.EXPORT, FAVOR, "", mdb.ZONE)
}}, }},
mdb.IMPORT: {Name: "import", Help: "导入", Hand: func(m *ice.Message, arg ...string) { mdb.IMPORT: {Name: "import", Help: "导入", Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(mdb.IMPORT, FAVOR, "", mdb.HASH) m.Option(mdb.FIELDS, kit.MDB_TOPIC)
m.Cmdy(mdb.IMPORT, FAVOR, "", mdb.ZONE)
}}, }},
mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) { mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) {
switch arg[0] { switch arg[0] {

View File

@ -71,29 +71,26 @@ const GO = "go"
const DOC = "godoc" const DOC = "godoc"
const MOD = "mod" const MOD = "mod"
const SUM = "sum" const SUM = "sum"
const PROTO = "proto"
const PLUG = "plug"
func init() { func init() {
Index.Register(&ice.Context{Name: GO, Help: "后端", Index.Register(&ice.Context{Name: GO, Help: "后端",
Commands: map[string]*ice.Command{ Commands: map[string]*ice.Command{
ice.CTX_INIT: {Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) { ice.CTX_INIT: {Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
m.Cmd(mdb.PLUGIN, mdb.CREATE, GO, m.Prefix(GO))
m.Cmd(mdb.RENDER, mdb.CREATE, GO, m.Prefix(GO))
m.Cmd(mdb.ENGINE, mdb.CREATE, GO, m.Prefix(GO)) m.Cmd(mdb.ENGINE, mdb.CREATE, GO, m.Prefix(GO))
m.Cmd(mdb.SEARCH, mdb.CREATE, GO, m.Prefix(GO)) m.Cmd(mdb.SEARCH, mdb.CREATE, GO, m.Prefix(GO))
m.Cmd(mdb.PLUGIN, mdb.CREATE, DOC, m.Prefix(DOC))
m.Cmd(mdb.RENDER, mdb.CREATE, DOC, m.Prefix(DOC))
m.Cmd(mdb.SEARCH, mdb.CREATE, DOC, m.Prefix(GO)) m.Cmd(mdb.SEARCH, mdb.CREATE, DOC, m.Prefix(GO))
m.Cmd(mdb.PLUGIN, mdb.CREATE, MOD, m.Prefix(MOD)) for k := range c.Configs {
m.Cmd(mdb.RENDER, mdb.CREATE, MOD, m.Prefix(MOD)) m.Cmd(mdb.PLUGIN, mdb.CREATE, k, m.Prefix(k))
m.Cmd(mdb.RENDER, mdb.CREATE, k, m.Prefix(k))
m.Cmd(mdb.PLUGIN, mdb.CREATE, SUM, m.Prefix(SUM)) }
m.Cmd(mdb.RENDER, mdb.CREATE, SUM, m.Prefix(SUM))
}}, }},
SUM: {Name: SUM, Help: "版本", Action: map[string]*ice.Action{ SUM: {Name: SUM, Help: "版本", Action: map[string]*ice.Action{
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) { mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) {
m.Echo(m.Conf(MOD, "meta.plug")) m.Echo(m.Conf(MOD, kit.Keym(PLUG)))
}}, }},
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) { mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1])) m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1]))
@ -101,7 +98,15 @@ func init() {
}}, }},
MOD: {Name: MOD, Help: "模块", Action: map[string]*ice.Action{ MOD: {Name: MOD, Help: "模块", Action: map[string]*ice.Action{
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) { mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) {
m.Echo(m.Conf(MOD, "meta.plug")) m.Echo(m.Conf(MOD, kit.Keym(PLUG)))
}},
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1]))
}},
}},
PROTO: {Name: PROTO, Help: "协议", Action: map[string]*ice.Action{
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) {
m.Echo(m.Conf(PROTO, kit.Keym(PLUG)))
}}, }},
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) { mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1])) m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1]))
@ -109,7 +114,7 @@ func init() {
}}, }},
DOC: {Name: DOC, Help: "文档", Action: map[string]*ice.Action{ DOC: {Name: DOC, Help: "文档", Action: map[string]*ice.Action{
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) { mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) {
m.Echo(m.Conf(GO, "meta.plug")) m.Echo(m.Conf(GO, kit.Keym(PLUG)))
}}, }},
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) { mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) {
m.Option(cli.CMD_DIR, arg[2]) m.Option(cli.CMD_DIR, arg[2])
@ -118,7 +123,7 @@ func init() {
}}, }},
GO: {Name: GO, Help: "后端", Action: map[string]*ice.Action{ GO: {Name: GO, Help: "后端", Action: map[string]*ice.Action{
mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) { mdb.PLUGIN: {Hand: func(m *ice.Message, arg ...string) {
m.Echo(m.Conf(GO, "meta.plug")) m.Echo(m.Conf(GO, kit.Keym(PLUG)))
}}, }},
mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) { mdb.RENDER: {Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1])) m.Cmdy(nfs.CAT, path.Join(arg[2], arg[1]))
@ -144,8 +149,27 @@ func init() {
}}, }},
}, },
Configs: map[string]*ice.Config{ Configs: map[string]*ice.Config{
PROTO: {Name: PROTO, Help: "协议", Value: kit.Data(
PLUG, kit.Dict(
PREFIX, kit.Dict(
"//", COMMENT,
),
KEYWORD, kit.Dict(
"syntax", KEYWORD,
"package", KEYWORD,
"import", KEYWORD,
"option", KEYWORD,
"service", KEYWORD,
"message", KEYWORD,
"string", DATATYPE,
"int64", DATATYPE,
"int32", DATATYPE,
),
),
)},
MOD: {Name: MOD, Help: "模块", Value: kit.Data( MOD: {Name: MOD, Help: "模块", Value: kit.Data(
"plug", kit.Dict( PLUG, kit.Dict(
PREFIX, kit.Dict( PREFIX, kit.Dict(
"//", COMMENT, "//", COMMENT,
), ),
@ -158,7 +182,7 @@ func init() {
), ),
)}, )},
GO: {Name: GO, Help: "后端", Value: kit.Data( GO: {Name: GO, Help: "后端", Value: kit.Data(
"plug", kit.Dict( PLUG, kit.Dict(
SPLIT, kit.Dict( SPLIT, kit.Dict(
"space", "\t ", "space", "\t ",
"operator", "{[(&.,:;!|<>)]}", "operator", "{[(&.,:;!|<>)]}",