From fbf24e1100734c3b17b3b73df7b0dd669e50ac89 Mon Sep 17 00:00:00 2001 From: shaoying Date: Mon, 22 Feb 2021 08:08:08 +0800 Subject: [PATCH] opt autogen --- base/mdb/mdb.go | 1 + core/code/autogen.go | 17 +++++++++++++---- core/code/compile.go | 1 + 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/base/mdb/mdb.go b/base/mdb/mdb.go index 23ea0362..96ad1ea1 100644 --- a/base/mdb/mdb.go +++ b/base/mdb/mdb.go @@ -411,6 +411,7 @@ const ( IMPORT = "import" PRUNES = "prunes" INPUTS = "inputs" + SCRIPT = "script" COMMIT = "commit" SOURCE = "source" ) diff --git a/core/code/autogen.go b/core/code/autogen.go index 55bd2351..877e43e9 100644 --- a/core/code/autogen.go +++ b/core/code/autogen.go @@ -5,8 +5,10 @@ import ( "github.com/shylinux/icebergs/base/cli" "github.com/shylinux/icebergs/base/mdb" "github.com/shylinux/icebergs/base/nfs" + "github.com/shylinux/icebergs/base/web" kit "github.com/shylinux/toolkits" + "os" "path" "strings" ) @@ -71,7 +73,7 @@ const AUTOGEN = "autogen" func init() { Index.Merge(&ice.Context{ Commands: map[string]*ice.Command{ - AUTOGEN: {Name: "autogen path auto create binpack", Help: "生成", Action: map[string]*ice.Action{ + AUTOGEN: {Name: "autogen path auto create binpack script", Help: "生成", Action: map[string]*ice.Action{ mdb.CREATE: {Name: "create main=src/main.go@key name=hi@key from=usr/icebergs/misc/bash/bash.go@key", Help: "模块", Hand: func(m *ice.Message, arg ...string) { if p := path.Join("src", m.Option("name"), m.Option("name")+".shy"); !kit.FileExists(p) { _autogen_script(m, p) @@ -85,9 +87,6 @@ func init() { m.Cmdy(cli.SYSTEM, "make") m.Option(ice.MSG_PROCESS, ice.PROCESS_INNER) }}, - BINPACK: {Name: "binpack", Help: "打包", Hand: func(m *ice.Message, arg ...string) { - m.Cmdy(BINPACK, mdb.CREATE) - }}, mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) { switch arg[0] { case "main": @@ -103,6 +102,16 @@ func init() { m.RenameAppend("path", arg[0]) } }}, + BINPACK: {Name: "binpack", Help: "打包", Hand: func(m *ice.Message, arg ...string) { + m.Cmdy(BINPACK, mdb.CREATE) + }}, + mdb.SCRIPT: {Name: "script", Help: "脚本", Hand: func(m *ice.Message, arg ...string) { + miss := "etc/miss.sh" + if _, e := os.Stat(miss); os.IsNotExist(e) { + m.Cmd(nfs.SAVE, miss, m.Conf(web.DREAM, "meta.miss")) + } + m.Echo(miss) + }}, }, Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) { if m.Option(nfs.DIR_ROOT, "src"); len(arg) == 0 || strings.HasSuffix(arg[0], "/") { m.Cmdy(nfs.DIR, kit.Select("./", arg, 0)) diff --git a/core/code/compile.go b/core/code/compile.go index e77f5937..3ab9a725 100644 --- a/core/code/compile.go +++ b/core/code/compile.go @@ -28,6 +28,7 @@ func init() { Commands: map[string]*ice.Command{ COMPILE: {Name: "compile arch=amd64,386,arm os=linux,darwin,windows src=src/main.go@key 执行:button", Help: "编译", Action: map[string]*ice.Action{ mdb.INPUTS: {Name: "inputs", Help: "补全", Hand: func(m *ice.Message, arg ...string) { + m.Option(nfs.DIR_REG, `.*\.go$`) m.Cmdy(nfs.DIR, "src", "path,size,time") m.Sort(kit.MDB_PATH) }},