diff --git a/base/ctx/command.go b/base/ctx/command.go index f7b50f89..5cca4a55 100644 --- a/base/ctx/command.go +++ b/base/ctx/command.go @@ -184,7 +184,7 @@ func GetFileCmd(dir string) string { } func GetCmdHelp(m *ice.Message, cmds string) (file string) { file = strings.TrimPrefix(FileURI(kit.ExtChange(GetCmdFile(m, cmds), nfs.SHY)), "/require/") - if !nfs.Exists(m, path.Join(nfs.SRC_DOCUMENT, "commands", strings.TrimPrefix(file, "usr/icebergs/")), func(p string) { file = p }) { + if !nfs.Exists(m, path.Join(nfs.USR_LEARNING_PORTAL, "commands", strings.TrimPrefix(file, "usr/icebergs/")), func(p string) { file = p }) { kit.If(!nfs.Exists(m, file), func() { file = "" }) } return diff --git a/base/nfs/dir.go b/base/nfs/dir.go index 3d5ef23a..69a080d9 100644 --- a/base/nfs/dir.go +++ b/base/nfs/dir.go @@ -143,24 +143,24 @@ const ( VAR = "var/" USR = "usr/" - USR_PORTAL = ice.USR_PORTAL - USR_PUBLISH = ice.USR_PUBLISH - USR_ICEBERGS = ice.USR_ICEBERGS - USR_LOCAL_WORK = ice.USR_LOCAL_WORK - USR_LOCAL = ice.USR_LOCAL - SRC_DOCUMENT = ice.SRC_DOCUMENT - SRC_TEMPLATE = ice.SRC_TEMPLATE - USR_PACKAGE = "usr/package.json" - USR_MODULES = "usr/node_modules/" - REQUIRE_MODULES = "/require/modules/" - REQUIRE_SRC = "/require/src/" - REQUIRE_USR = "/require/usr/" - REQUIRE = "/require/" - VOLCANOS = "/volcanos/" - INTSHELL = "/intshell/" - SHARE_LOCAL = "/share/local/" - PATHNAME = "pathname" - FILENAME = "filename" + USR_PORTAL = ice.USR_PORTAL + USR_PUBLISH = ice.USR_PUBLISH + USR_ICEBERGS = ice.USR_ICEBERGS + USR_LOCAL_WORK = ice.USR_LOCAL_WORK + USR_LOCAL = ice.USR_LOCAL + SRC_TEMPLATE = ice.SRC_TEMPLATE + USR_LEARNING_PORTAL = "usr/learning/portal/" + USR_PACKAGE = "usr/package.json" + USR_MODULES = "usr/node_modules/" + REQUIRE_MODULES = "/require/modules/" + REQUIRE_SRC = "/require/src/" + REQUIRE_USR = "/require/usr/" + REQUIRE = "/require/" + VOLCANOS = "/volcanos/" + INTSHELL = "/intshell/" + SHARE_LOCAL = "/share/local/" + PATHNAME = "pathname" + FILENAME = "filename" USR_ICONS_AVATAR = "usr/icons/avatar.jpg" USR_ICONS_CONTEXTS = "usr/icons/contexts.png" diff --git a/base/nfs/document.go b/base/nfs/document.go index 838515e1..9532d5c4 100644 --- a/base/nfs/document.go +++ b/base/nfs/document.go @@ -36,7 +36,7 @@ var DocumentText = func(m *ice.Message, p string) string { return m.Cmdx(CAT, DocumentPath(m, path.Base(p))) } var DocumentPath = func(m *ice.Message, arg ...string) string { - if p := path.Join(ice.SRC_DOCUMENT, m.PrefixKey(), path.Join(arg...)); Exists(m, p) { + if p := path.Join(USR_LEARNING_PORTAL, m.PrefixKey(), path.Join(arg...)); Exists(m, p) { return p } else { return p diff --git a/base/web/spide.go b/base/web/spide.go index 6d31349f..f5641562 100644 --- a/base/web/spide.go +++ b/base/web/spide.go @@ -277,7 +277,7 @@ func init() { } } nfs.DocumentPath = func(m *ice.Message, arg ...string) string { - if p := path.Join(ice.SRC_DOCUMENT, m.PrefixKey(), path.Join(arg...)); nfs.Exists(m, p) { + if p := path.Join(nfs.USR_LEARNING_PORTAL, m.PrefixKey(), path.Join(arg...)); nfs.Exists(m, p) { return p + kit.Select("", nfs.PS, len(arg) == 0) } else { return path.Join(path.Dir(ctx.GetCmdFile(m, m.PrefixKey())), path.Join(arg...)) + kit.Select("", nfs.PS, len(arg) == 0) diff --git a/conf.go b/conf.go index 18283606..d3a123f5 100644 --- a/conf.go +++ b/conf.go @@ -142,40 +142,40 @@ const ( // DIR VAR_LOG_BOOT_LOG = "var/log/boot.log" VAR_LOG_ICE_PID = "var/log/ice.pid" - VAR_LOG = "var/log/" - VAR_TMP = "var/tmp/" - VAR_CONF = "var/conf/" - VAR_DATA = "var/data/" - VAR_FILE = "var/file/" - VAR_PROXY = "var/proxy/" - VAR_TRASH = "var/trash/" - BIN_ICE_BIN = "bin/ice.bin" - ETC_INIT_SHY = "etc/init.shy" - ETC_LOCAL_SHY = "etc/local.shy" - ETC_EXIT_SHY = "etc/exit.shy" - ETC_MISS_SH = "etc/miss.sh" - ETC_PATH = "etc/path" - SRC_MAIN_SH = "src/main.sh" - SRC_MAIN_SHY = "src/main.shy" - SRC_MAIN_HTML = "src/main.html" - SRC_MAIN_ICO = "src/main.ico" - SRC_MAIN_CSS = "src/main.css" - SRC_MAIN_JS = "src/main.js" - SRC_MAIN_GO = "src/main.go" - SRC_WEBVIEW_GO = "src/webview.go" - SRC_VERSION_GO = "src/version.go" - SRC_BINPACK_GO = "src/binpack.go" - SRC_DOCUMENT = "src/document/" - SRC_TEMPLATE = "src/template/" - SRC_SCRIPT = "src/script/" - USR_SCRIPT = "usr/script/" - README_MD = "README.md" - MAKEFILE = "Makefile" - LICENSE = "LICENSE" - GO_MOD = "go.mod" - GO_SUM = "go.sum" - ICE_BIN = "ice.bin" - CAN_PLUGIN = "can._plugin" + VAR_LOG = "var/log/" + VAR_TMP = "var/tmp/" + VAR_CONF = "var/conf/" + VAR_DATA = "var/data/" + VAR_FILE = "var/file/" + VAR_PROXY = "var/proxy/" + VAR_TRASH = "var/trash/" + BIN_ICE_BIN = "bin/ice.bin" + ETC_INIT_SHY = "etc/init.shy" + ETC_LOCAL_SHY = "etc/local.shy" + ETC_EXIT_SHY = "etc/exit.shy" + ETC_MISS_SH = "etc/miss.sh" + ETC_PATH = "etc/path" + SRC_MAIN_SH = "src/main.sh" + SRC_MAIN_SHY = "src/main.shy" + SRC_MAIN_HTML = "src/main.html" + SRC_MAIN_ICO = "src/main.ico" + SRC_MAIN_CSS = "src/main.css" + SRC_MAIN_JS = "src/main.js" + SRC_MAIN_GO = "src/main.go" + SRC_WEBVIEW_GO = "src/webview.go" + SRC_VERSION_GO = "src/version.go" + SRC_BINPACK_GO = "src/binpack.go" + SRC_BINPACK_USR_GO = "src/binpack_usr.go" + SRC_TEMPLATE = "src/template/" + SRC_SCRIPT = "src/script/" + USR_SCRIPT = "usr/script/" + README_MD = "README.md" + MAKEFILE = "Makefile" + LICENSE = "LICENSE" + GO_MOD = "go.mod" + GO_SUM = "go.sum" + ICE_BIN = "ice.bin" + CAN_PLUGIN = "can._plugin" ) const ( // MSG MSG_CMDS = "cmds" diff --git a/core/code/autogen.go b/core/code/autogen.go index 94694f3c..e695520f 100644 --- a/core/code/autogen.go +++ b/core/code/autogen.go @@ -66,8 +66,10 @@ func _autogen_version(m *ice.Message) string { defer m.Cmd(REPOS, ADD, kit.Dict(nfs.REPOS, path.Base(mod), nfs.FILE, nfs.SRC)) } m.Cmd(nfs.DEFS, ".gitignore", nfs.Template(m, "gitignore")) + m.Cmd(nfs.DEFS, ice.SRC_BINPACK_USR_GO, nfs.Template(m, ice.SRC_BINPACK_GO)) m.Cmd(nfs.DEFS, ice.SRC_BINPACK_GO, nfs.Template(m, ice.SRC_BINPACK_GO)) m.Cmd(nfs.SAVE, ice.SRC_VERSION_GO, kit.Format(nfs.Template(m, ice.SRC_VERSION_GO), _autogen_gits(m))) + m.Cmdy(nfs.DIR, ice.SRC_BINPACK_USR_GO) m.Cmdy(nfs.DIR, ice.SRC_BINPACK_GO) m.Cmdy(nfs.DIR, ice.SRC_VERSION_GO) m.Cmdy(nfs.DIR, ice.SRC_MAIN_GO) @@ -163,3 +165,6 @@ func init() { }}, }) } +func isReleaseContexts(m *ice.Message) bool { + return nfs.Exists(m, ice.USR_RELEASE) && nfs.Exists(m, ice.USR_VOLCANOS) && nfs.Exists(m, ice.USR_INTSHELL) && ice.Info.Make.Module == "shylinux.com/x/contexts" +} diff --git a/core/code/binpack.go b/core/code/binpack.go index faa8239a..b7daf738 100644 --- a/core/code/binpack.go +++ b/core/code/binpack.go @@ -24,7 +24,7 @@ func _binpack_file(m *ice.Message, w io.Writer, arg ...string) { return } switch arg[0] { - case ice.GO_MOD, ice.GO_SUM, ice.SRC_VERSION_GO, ice.SRC_BINPACK_GO: + case ice.GO_MOD, ice.GO_SUM, ice.SRC_VERSION_GO, ice.SRC_BINPACK_GO, ice.SRC_BINPACK_USR_GO: return case ice.ETC_LOCAL_SHY: fmt.Fprintf(w, " \"%s\": \"%s\",\n", kit.Select(arg[0], arg, 1), "") @@ -39,10 +39,12 @@ func _binpack_file(m *ice.Message, w io.Writer, arg ...string) { } } func _binpack_dir(m *ice.Message, w io.Writer, dir string) { - nfs.DirDeepAll(m, dir, nfs.PWD, func(value ice.Maps) { _binpack_file(m, w, path.Join(dir, value[nfs.PATH])) }) + if nfs.Exists(m, dir) { + nfs.DirDeepAll(m, dir, nfs.PWD, func(value ice.Maps) { _binpack_file(m, w, path.Join(dir, value[nfs.PATH])) }) + } } -func _binpack_all(m *ice.Message) { - w, p, e := nfs.CreateFile(m, ice.SRC_BINPACK_GO) +func _binpack_usr(m *ice.Message) { + w, p, e := nfs.CreateFile(m, ice.SRC_BINPACK_USR_GO) m.Assert(e) defer w.Close() defer m.Echo(p) @@ -50,14 +52,9 @@ func _binpack_all(m *ice.Message) { defer fmt.Fprintln(w, nfs.Template(m, "binpack_end.go")) defer fmt.Fprint(w, lex.TB) nfs.OptionFiles(m, nfs.DiskFile) - kit.If(isReleaseContexts(m), func() { - kit.For([]string{ice.USR_VOLCANOS, ice.USR_INTSHELL}, func(p string) { _binpack_dir(m, w, p) }) + kit.For([]string{ice.USR_VOLCANOS, nfs.USR_LEARNING_PORTAL, ice.USR_INTSHELL}, func(p string) { + _binpack_dir(m, w, p) }) - kit.For([]string{ice.SRC}, func(p string) { _binpack_dir(m, w, p) }) - kit.For([]string{ - ice.ETC_MISS_SH, ice.ETC_INIT_SHY, ice.ETC_LOCAL_SHY, ice.ETC_EXIT_SHY, ice.ETC_PATH, - ice.README_MD, ice.MAKEFILE, ice.LICENSE, ice.GO_MOD, ice.GO_SUM, - }, func(p string) { _binpack_file(m, w, p) }) list, cache := map[string]string{}, GoCache(m) for k := range ice.Info.File { switch ls := kit.Split(k, nfs.PS); ls[1] { @@ -72,7 +69,7 @@ func _binpack_all(m *ice.Message) { for _, k := range kit.SortedKey(list) { v := kit.Select(k, list[k]) m.Cmd(nfs.DIR, nfs.PWD, nfs.PATH, kit.Dict(nfs.DIR_ROOT, v, nfs.DIR_REG, kit.ExtReg(kit.Split(mdb.Config(m, lex.EXTREG))...))).Table(func(value ice.Maps) { - kit.If(isReleaseContexts(m), func() { _binpack_file(m, w, kit.Path(v, value[nfs.PATH]), path.Join(k, value[nfs.PATH])) }) + _binpack_file(m, w, kit.Path(v, value[nfs.PATH]), path.Join(k, value[nfs.PATH])) }) } mdb.HashSelects(m).Sort(nfs.PATH).Table(func(value ice.Maps) { @@ -82,7 +79,30 @@ func _binpack_all(m *ice.Message) { _binpack_file(m, w, value[nfs.PATH]) } }) - kit.If(isReleaseContexts(m), func() { m.Option(nfs.DIR_REG, kit.ExtReg(nfs.SHY)); _binpack_dir(m, w, ice.USR_RELEASE) }) + _binpack_dir(m.Options(nfs.DIR_REG, kit.ExtReg(nfs.SHY)), w, ice.USR_RELEASE) +} + +func _binpack_src(m *ice.Message) { + w, p, e := nfs.CreateFile(m, ice.SRC_BINPACK_GO) + m.Assert(e) + defer w.Close() + defer m.Echo(p) + fmt.Fprintln(w, nfs.Template(m, ice.SRC_BINPACK_GO)) + defer fmt.Fprintln(w, nfs.Template(m, "binpack_end.go")) + defer fmt.Fprint(w, lex.TB) + nfs.OptionFiles(m, nfs.DiskFile) + kit.For([]string{ice.SRC}, func(p string) { _binpack_dir(m, w, p) }) + kit.For([]string{ + ice.ETC_MISS_SH, ice.ETC_INIT_SHY, ice.ETC_LOCAL_SHY, ice.ETC_EXIT_SHY, ice.ETC_PATH, + ice.README_MD, ice.MAKEFILE, ice.LICENSE, ice.GO_MOD, ice.GO_SUM, + }, func(p string) { _binpack_file(m, w, p) }) + mdb.HashSelects(m).Sort(nfs.PATH).Table(func(value ice.Maps) { + if strings.HasSuffix(value[nfs.PATH], nfs.PS) { + _binpack_dir(m, w, value[nfs.PATH]) + } else { + _binpack_file(m, w, value[nfs.PATH]) + } + }) } const BINPACK = "binpack" @@ -90,7 +110,10 @@ const BINPACK = "binpack" func init() { Index.MergeCommands(ice.Commands{ BINPACK: {Name: "binpack path auto create insert", Help: "打包", Actions: ice.MergeActions(ice.Actions{ - mdb.CREATE: {Name: "create path", Hand: func(m *ice.Message, arg ...string) { _binpack_all(m) }}, + mdb.CREATE: {Name: "create path", Hand: func(m *ice.Message, arg ...string) { + _binpack_usr(m.Spawn()) + _binpack_src(m) + }}, mdb.INSERT: {Name: "insert path*", Hand: func(m *ice.Message, arg ...string) { mdb.HashCreate(m) }}, }, mdb.HashAction(mdb.SHORT, nfs.PATH, mdb.FIELD, "time,path", lex.EXTREG, "sh,shy,py,js,css,html,png,jpg"))}, }) @@ -102,6 +125,3 @@ func GoCache(m *ice.Message) string { func() string { return ice.USR_REQUIRE }, ) } -func isReleaseContexts(m *ice.Message) bool { - return nfs.Exists(m, ice.USR_RELEASE) && nfs.Exists(m, ice.USR_VOLCANOS) && nfs.Exists(m, ice.USR_INTSHELL) && ice.Info.Make.Module == "shylinux.com/x/contexts" -} diff --git a/core/code/compile.go b/core/code/compile.go index 7dd5e075..c53eeb1d 100644 --- a/core/code/compile.go +++ b/core/code/compile.go @@ -120,7 +120,7 @@ func init() { m.Options(cli.CMD_ENV, env).Cmd(AUTOGEN, VERSION) _compile_get(m, main) defer m.StatusTime(VERSION, strings.TrimPrefix(GoVersion(m), "go version")) - if msg := GoBuild(m.Spawn(), file, main, ice.SRC_VERSION_GO, ice.SRC_BINPACK_GO); !cli.IsSuccess(msg) { + if msg := GoBuild(m.Spawn(), file, main, ice.SRC_VERSION_GO, ice.SRC_BINPACK_GO, ice.SRC_BINPACK_USR_GO); !cli.IsSuccess(msg) { m.Copy(msg) } else { m.Logs(nfs.SAVE, nfs.TARGET, file, nfs.SOURCE, main) diff --git a/core/code/xterm.go b/core/code/xterm.go index fbe95e61..80f3be80 100644 --- a/core/code/xterm.go +++ b/core/code/xterm.go @@ -129,7 +129,7 @@ func init() { if h := kit.Select(m.Option(mdb.HASH), arg, 0); h == "" { cli.OpenCmds(m, "cd "+kit.Path("")) } else { - cli.OpenCmds(m, m.Cmdv("", h, mdb.TYPE)) + cli.OpenCmds(m, "cd "+kit.Path("")+"; "+m.Cmdv("", h, mdb.TYPE)) } m.ProcessHold() }}, @@ -154,9 +154,7 @@ func init() { }) }}, web.DREAM_TABLES: {Hand: func(m *ice.Message, arg ...string) { m.PushButton(kit.Dict(m.CommandKey(), "终端")) }}, - web.DREAM_ACTION: {Hand: func(m *ice.Message, arg ...string) { - web.DreamProcess(m, cli.Shell(m), arg...) - }}, + web.DREAM_ACTION: {Hand: func(m *ice.Message, arg ...string) { web.DreamProcess(m, cli.Shell(m), arg...) }}, }, chat.FavorAction(), ctx.ProcessAction(), mdb.HashAction(mdb.FIELD, "time,hash,type,name,text,path")), Hand: func(m *ice.Message, arg ...string) { if mdb.HashSelect(m, arg...); len(arg) == 0 { if web.IsLocalHost(m) { @@ -166,7 +164,7 @@ func init() { } } else { kit.If(m.Length() == 0, func() { arg[0] = m.Cmdx("", mdb.CREATE, arg); mdb.HashSelect(m, arg[0]) }) - m.Push(mdb.HASH, arg[0]) + m.Push(mdb.HASH, arg[0]).Action(ice.APP) ctx.DisplayLocal(m, "") } }}, diff --git a/core/wiki/portal.go b/core/wiki/portal.go index c2cb1597..1ce4e482 100644 --- a/core/wiki/portal.go +++ b/core/wiki/portal.go @@ -44,12 +44,12 @@ func _portal_commands(m *ice.Message, arg ...string) { kit.If(mod != BASE, func() { cmd = strings.TrimPrefix(cmd, "web.") }) if !strings.HasPrefix(cmd, last) { last = strings.Split(cmd, nfs.PT)[0] - if p := path.Join(nfs.SRC_DOCUMENT, path.Join(arg...), mod, last); nfs.Exists(m, p) { + if p := path.Join(nfs.USR_LEARNING_PORTAL, path.Join(arg...), mod, last); nfs.Exists(m, p) { text = append(text, kit.Format(" %s %s/", last, last)) } } cmd = strings.TrimPrefix(cmd, last+nfs.PT) - if p := path.Join(nfs.SRC_DOCUMENT, path.Join(arg...), mod, last, strings.Replace(cmd, nfs.PT, nfs.PS, -1)+".shy"); nfs.Exists(m, p) { + if p := path.Join(nfs.USR_LEARNING_PORTAL, path.Join(arg...), mod, last, strings.Replace(cmd, nfs.PT, nfs.PS, -1)+".shy"); nfs.Exists(m, p) { text = append(text, kit.Format(" %s %s.shy", cmd, cmd)) } else if p, ok := help[last+nfs.PT+cmd]; ok { text = append(text, kit.Format(" %s %s", cmd, strings.TrimPrefix(ctx.FileURI(p), "/require/"))) @@ -57,7 +57,7 @@ func _portal_commands(m *ice.Message, arg ...string) { } } text = append(text, "`") - m.Cmd(nfs.SAVE, path.Join(nfs.SRC_DOCUMENT, path.Join(arg...), INDEX_SHY), strings.Join(text, lex.NL)) + m.Cmd(nfs.SAVE, path.Join(nfs.USR_LEARNING_PORTAL, path.Join(arg...), INDEX_SHY), strings.Join(text, lex.NL)) } const ( @@ -83,9 +83,9 @@ func init() { web.DREAM_TABLES: {Hand: func(m *ice.Message, arg ...string) { m.PushButton(kit.Dict(PORTAL, "官网")) }}, web.DREAM_ACTION: {Hand: func(m *ice.Message, arg ...string) { web.DreamProcess(m, nil, arg...) }}, }, aaa.WhiteAction("")), Hand: func(m *ice.Message, arg ...string) { - if m.Push(HEADER, m.Cmdx(WORD, path.Join(nfs.SRC_DOCUMENT, INDEX_SHY))); len(arg) > 0 { + if m.Push(HEADER, m.Cmdx(WORD, path.Join(nfs.USR_LEARNING_PORTAL, INDEX_SHY))); len(arg) > 0 { kit.If(path.Join(arg...) == "commands", func() { _portal_commands(m, arg...) }) - m.Push(NAV, m.Cmdx(WORD, path.Join(nfs.SRC_DOCUMENT, path.Join(arg...), INDEX_SHY))) + m.Push(NAV, m.Cmdx(WORD, path.Join(nfs.USR_LEARNING_PORTAL, path.Join(arg...), INDEX_SHY))) } m.Display("") }}, diff --git a/core/wiki/portal.js b/core/wiki/portal.js index df323762..8a58a1a1 100644 --- a/core/wiki/portal.js +++ b/core/wiki/portal.js @@ -36,8 +36,8 @@ Volcanos(chat.ONIMPORT, { can.page.Select(can, target, html.DIV_ITEM, function(target) { target != event.target && can.page.ClassList.del(can, target, html.SELECT) }) item.list && item.list.length > 0 || can.onaction.route(event, can, item.meta.link) }, target, can.page.ClassList.has(can, target.parentNode, html.HEADER)? function(target, item) { - item.meta.link == nfs.SRC_DOCUMENT+can.db.current && can.onappend.style(can, html.SELECT, target) - }: function(target, item) { can.db.nav[can.base.trimPrefix(item.meta.link, nfs.SRC_DOCUMENT)] = target + item.meta.link == nfs.USR_LEARNING_PORTAL+can.db.current && can.onappend.style(can, html.SELECT, target) + }: function(target, item) { can.db.nav[can.base.trimPrefix(item.meta.link, nfs.USR_LEARNING_PORTAL)] = target location.hash || item.list && item.list.length > 0 || link || (link = can.onaction.route({}, can, item.meta.link, true)) }) }, @@ -45,7 +45,7 @@ Volcanos(chat.ONIMPORT, { target.onclick = function(event) { can.onaction.route(event, can, item.route) } }, content: function(can, file) { - can.runActionCommand(event, web.WIKI_WORD, [(can.base.beginWith(file, nfs.USR, nfs.SRC)? "": nfs.SRC_DOCUMENT+can.db.current)+file], function(msg) { can.ui.main.innerHTML = msg.Result(), can.onmotion.clear(can, can.ui.aside) + can.runActionCommand(event, web.WIKI_WORD, [(can.base.beginWith(file, nfs.USR, nfs.SRC)? "": nfs.USR_LEARNING_PORTAL+can.db.current)+file], function(msg) { can.ui.main.innerHTML = msg.Result(), can.onmotion.clear(can, can.ui.aside) can.onimport._content(can, can.ui.main, function(target, meta) { meta.type == wiki.TITLE && can.onappend.style(can, meta.name, target._menu = can.onimport.item(can, {name: meta.text}, function(event) { target.scrollIntoView() }, function() {}, can.ui.aside)) }), can.onmotion.select(can, can.ui.aside, html.DIV_ITEM, 0) @@ -64,7 +64,7 @@ Volcanos(chat.ONIMPORT, { }, [""]) Volcanos(chat.ONACTION, { route: function(event, can, route, internal) { - var link = can.base.trimPrefix(route||"", nfs.SRC_DOCUMENT); if (!link || link == can.db.current) { return } + var link = can.base.trimPrefix(route||"", nfs.USR_LEARNING_PORTAL); if (!link || link == can.db.current) { return } if (!internal) { var params = ""; (can.misc.Search(can, log.DEBUG) == ice.TRUE && (params = "?debug=true")) if (link == nfs.PS) { return can.isCmdMode()? can.user.jumps(can.db.prefix+params): (can.Option(nfs.PATH, ""), can.Update()) } if (can.base.beginWith(link, web.HTTP, nfs.PS)) { return can.user.opens(link) } diff --git a/core/wiki/word.go b/core/wiki/word.go index 564f11f4..3decd1d3 100644 --- a/core/wiki/word.go +++ b/core/wiki/word.go @@ -54,12 +54,12 @@ func init() { _wiki_list(msg, nfs.SRC) _wiki_list(msg, nfs.USR_ICEBERGS) msg.Table(func(value ice.Maps) { - if !kit.HasPrefix(value[nfs.PATH], nfs.SRC_TEMPLATE, nfs.SRC_DOCUMENT) { + if !kit.HasPrefix(value[nfs.PATH], nfs.SRC_TEMPLATE, nfs.USR_LEARNING_PORTAL) { m.Push("", value, kit.Split("path,size,time")) } }) web.PushPodCmd(m.Spawn(), "").Table(func(value ice.Maps) { - if !kit.HasPrefix(value[nfs.PATH], nfs.SRC_TEMPLATE, nfs.SRC_DOCUMENT) { + if !kit.HasPrefix(value[nfs.PATH], nfs.SRC_TEMPLATE, nfs.USR_LEARNING_PORTAL) { value[nfs.PATH] = value[web.SPACE] + nfs.DF + value[nfs.PATH] m.Push("", value, kit.Split("path,size,time")) } @@ -76,7 +76,7 @@ func init() { web.DREAM_TABLES: {Hand: func(m *ice.Message, arg ...string) { m.PushButton(kit.Dict(m.CommandKey(), "文档")) }}, web.DREAM_ACTION: {Hand: func(m *ice.Message, arg ...string) { web.DreamProcess(m, nil, arg...) }}, }, WikiAction("", nfs.SHY), mdb.HashAction(mdb.SHORT, nfs.PATH, mdb.FIELD, "time,path")), Hand: func(m *ice.Message, arg ...string) { - if len(arg) > 0 && !strings.HasPrefix(arg[0], nfs.SRC_DOCUMENT) { + if len(arg) > 0 && !strings.HasPrefix(arg[0], nfs.USR_LEARNING_PORTAL) { mdb.HashCreate(m.Spawn(), nfs.PATH, arg[0]) } if len(arg) > 0 && strings.Contains(arg[0], nfs.DF) { diff --git a/misc/git/repos.go b/misc/git/repos.go index b5352de7..404182d6 100644 --- a/misc/git/repos.go +++ b/misc/git/repos.go @@ -232,7 +232,7 @@ func _repos_status(m *ice.Message, p string, repos *git.Repository) error { return err } for k, v := range status { - if kit.IsIn(k, ice.SRC_VERSION_GO, ice.SRC_BINPACK_GO, ice.ETC_LOCAL_SHY) { + if kit.IsIn(k, ice.SRC_VERSION_GO, ice.SRC_BINPACK_GO, ice.SRC_BINPACK_USR_GO, ice.ETC_LOCAL_SHY) { continue } else if kit.IsIn(kit.Ext(k), "swp", "swo") || kit.HasPrefix(k, nfs.BIN, nfs.VAR, nfs.USR) && !strings.HasPrefix(k, ice.USR_LOCAL_EXPORT) { continue