1
0
mirror of https://shylinux.com/x/icebergs synced 2025-04-26 09:34:05 +08:00
This commit is contained in:
harveyshao 2021-06-12 18:30:10 +08:00
parent e0ff004a87
commit 56e9ae881a
5 changed files with 59 additions and 76 deletions

View File

@ -83,6 +83,7 @@ func init() {
"go", "true", "vim", "true", "js", "true", "go", "true", "vim", "true", "js", "true",
"conf", "true", "json", "true", "conf", "true", "json", "true",
"makefile", "true", "makefile", "true",
"yml", "true",
), ),
)}, )},
}, },

View File

@ -1,17 +1,17 @@
package code package code
import ( import (
ice "github.com/shylinux/icebergs"
"github.com/shylinux/icebergs/base/cli"
"github.com/shylinux/icebergs/base/mdb"
"github.com/shylinux/icebergs/base/nfs"
kit "github.com/shylinux/toolkits"
"bufio" "bufio"
"os" "os"
"path" "path"
"strings" "strings"
"time" "time"
ice "github.com/shylinux/icebergs"
"github.com/shylinux/icebergs/base/cli"
"github.com/shylinux/icebergs/base/mdb"
"github.com/shylinux/icebergs/base/nfs"
kit "github.com/shylinux/toolkits"
) )
func _go_find(m *ice.Message, key string) { func _go_find(m *ice.Message, key string) {
@ -87,6 +87,7 @@ func init() {
m.Cmd(mdb.PLUGIN, mdb.CREATE, k, m.Prefix(k)) m.Cmd(mdb.PLUGIN, mdb.CREATE, k, m.Prefix(k))
m.Cmd(mdb.RENDER, mdb.CREATE, k, m.Prefix(k)) m.Cmd(mdb.RENDER, mdb.CREATE, k, m.Prefix(k))
} }
LoadPlug(m, GO)
}}, }},
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) {
@ -154,18 +155,15 @@ func init() {
PREFIX, kit.Dict( PREFIX, kit.Dict(
"//", COMMENT, "//", COMMENT,
), ),
KEYWORD, kit.Dict( "_keyword", kit.Dict(
"syntax", KEYWORD, KEYWORD, kit.Simple(
"package", KEYWORD, "syntax", "option", "package", "import", "service", "message",
"import", KEYWORD, ),
"option", KEYWORD, DATATYPE, kit.Simple(
"service", KEYWORD, "string", "int64", "int32",
"message", KEYWORD, ),
"string", DATATYPE,
"int64", DATATYPE,
"int32", DATATYPE,
), ),
KEYWORD, kit.Dict(),
), ),
)}, )},
MOD: {Name: MOD, Help: "模块", Value: kit.Data( MOD: {Name: MOD, Help: "模块", Value: kit.Data(
@ -173,12 +171,12 @@ func init() {
PREFIX, kit.Dict( PREFIX, kit.Dict(
"//", COMMENT, "//", COMMENT,
), ),
KEYWORD, kit.Dict( "_keyword", kit.Dict(
"module", KEYWORD, KEYWORD, kit.Simple(
"require", KEYWORD, "module", "require", "replace", "=>",
"replace", KEYWORD, ),
"=>", KEYWORD,
), ),
KEYWORD, kit.Dict(),
), ),
)}, )},
GO: {Name: GO, Help: "后端", Value: kit.Data( GO: {Name: GO, Help: "后端", Value: kit.Data(
@ -190,59 +188,27 @@ func init() {
PREFIX, kit.Dict( PREFIX, kit.Dict(
"//", COMMENT, "//", COMMENT,
"/*", COMMENT, "/*", COMMENT,
"*", COMMENT, "* ", COMMENT,
), ),
KEYWORD, kit.Dict( "_keyword", kit.Dict(
"package", KEYWORD, KEYWORD, kit.Simple(
"import", KEYWORD, "package", "import", "type", "struct", "interface", "const", "var", "func",
"const", KEYWORD, "if", "else", "for", "range", "break", "continue",
"func", KEYWORD, "switch", "case", "default", "fallthrough",
"var", KEYWORD, "go", "select", "defer", "return",
"type", KEYWORD, ),
"struct", KEYWORD, DATATYPE, kit.Simple(
"interface", KEYWORD, "int", "int32", "int64", "float64",
"string", "byte", "bool", "error", "chan", "map",
"if", KEYWORD, ),
"else", KEYWORD, FUNCTION, kit.Simple(
"for", KEYWORD, "len", "cap", "copy", "append", "msg", "m",
"range", KEYWORD, ),
"break", KEYWORD, STRING, kit.Simple(
"continue", KEYWORD, "false", "true", "nil", "-1", "0", "1", "2",
"switch", KEYWORD, ),
"case", KEYWORD,
"default", KEYWORD,
"fallthrough", KEYWORD,
"go", KEYWORD,
"select", KEYWORD,
"return", KEYWORD,
"defer", KEYWORD,
"map", DATATYPE,
"chan", DATATYPE,
"string", DATATYPE,
"error", DATATYPE,
"bool", DATATYPE,
"byte", DATATYPE,
"int", DATATYPE,
"int64", DATATYPE,
"float64", DATATYPE,
"len", FUNCTION,
"cap", FUNCTION,
"copy", FUNCTION,
"append", FUNCTION,
"msg", FUNCTION,
"m", FUNCTION,
"false", STRING,
"true", STRING,
"nil", STRING,
"-1", STRING,
"0", STRING,
"1", STRING,
"2", STRING,
), ),
KEYWORD, kit.Dict(),
), ),
)}, )},
}, },

View File

@ -41,6 +41,13 @@ func _inner_show(m *ice.Message, ext, file, dir string, arg ...string) {
m.Set(ice.MSG_APPEND) m.Set(ice.MSG_APPEND)
} }
} }
func LoadPlug(m *ice.Message, language string) {
m.Confm(language, kit.Keym(PLUG, "_keyword"), func(key string, value interface{}) {
for _, v := range kit.Simple(value) {
m.Conf(language, kit.Keym(PLUG, KEYWORD, v), key)
}
})
}
const ( const (
COMMENT = "comment" COMMENT = "comment"
@ -102,9 +109,11 @@ func init() {
"css", "true", "html", "true", "css", "true", "html", "true",
"txt", "true", "url", "true", "txt", "true", "url", "true",
"log", "true", "err", "true", "log", "true", "err", "true",
"yml", "true",
"md", "true", "license", "true", "makefile", "true", "md", "true", "license", "true", "makefile", "true",
"ini", "true", "conf", "true", "toml", "true", "yaml", "true", "ini", "true", "conf", "true", "toml", "true", "yaml", "true",
"sql", "true",
), ),
"plug", kit.Dict( "plug", kit.Dict(
"s", kit.Dict( "s", kit.Dict(
@ -138,6 +147,9 @@ func init() {
"yaml", kit.Dict( "yaml", kit.Dict(
PREFIX, kit.Dict("#", COMMENT), PREFIX, kit.Dict("#", COMMENT),
), ),
"yml", kit.Dict(
PREFIX, kit.Dict("#", COMMENT),
),
"md", kit.Dict(), "md", kit.Dict(),
"makefile", kit.Dict( "makefile", kit.Dict(

View File

@ -247,6 +247,7 @@ func (m *Message) SortTime(key string) { m.Sort(key, "time") }
func (m *Message) SortTimeR(key string) { m.Sort(key, "time_r") } func (m *Message) SortTimeR(key string) { m.Sort(key, "time_r") }
func (m *Message) FormatMeta() string { return m.Format("meta") } func (m *Message) FormatMeta() string { return m.Format("meta") }
func (m *Message) FormatSize() string { return m.Format("size") }
func (m *Message) RenameAppend(from, to string) { func (m *Message) RenameAppend(from, to string) {
for i, v := range m.meta[MSG_APPEND] { for i, v := range m.meta[MSG_APPEND] {
if v == from { if v == from {

View File

@ -140,6 +140,9 @@ func (c *Context) Server() Server {
} }
func (c *Context) Register(s *Context, x Server, name ...string) *Context { func (c *Context) Register(s *Context, x Server, name ...string) *Context {
if s.Name == "" {
s.Name = kit.Split(kit.Split(kit.FileLine(2, 3), ":")[0], "/")[1]
}
for _, n := range name { for _, n := range name {
Name(n, s) Name(n, s)
} }
@ -388,7 +391,7 @@ func (m *Message) Format(key interface{}) string {
case string: case string:
switch key { switch key {
case "cost": case "cost":
return kit.FmtTime(kit.Int64(time.Now().Sub(m.time))) return kit.FmtTime(kit.Int64(time.Since(m.time)))
case "meta": case "meta":
return kit.Format(m.meta) return kit.Format(m.meta)
case "size": case "size":
@ -695,7 +698,7 @@ func (m *Message) cmd(arg ...interface{}) *Message {
// 解析命令 // 解析命令
list := kit.Simple(args...) list := kit.Simple(args...)
if len(list) == 0 && m.Hand == false { if len(list) == 0 && !m.Hand {
list = m.meta[MSG_DETAIL] list = m.meta[MSG_DETAIL]
} }
if len(list) == 0 { if len(list) == 0 {
@ -728,7 +731,7 @@ func (m *Message) cmd(arg ...interface{}) *Message {
} }
// 系统命令 // 系统命令
if m.Warn(m.Hand == false, ErrNotFound, list) { if m.Warn(!m.Hand, ErrNotFound, list) {
return m.Set(MSG_RESULT).Cmd("cli.system", list) return m.Set(MSG_RESULT).Cmd("cli.system", list)
} }
return m return m