diff --git a/golibs/fs/fs.go b/golibs/fs/fs.go index 4b521f0..0545c9a 100644 --- a/golibs/fs/fs.go +++ b/golibs/fs/fs.go @@ -21,25 +21,9 @@ func LuaErr(L *lua.LState, code int) { } var exports = map[string]lua.LGFunction{ - "cd": cd, - "mkdir": mkdir, - "stat": stat, - "appendpath": appendpath, -} - -func appendpath(L *lua.LState) int { - path := L.ToString(1) - - os.Setenv("PATH", os.Getenv("PATH")+":"+path) - // cmd := exec.Command("export PATH=" + os.Getenv("PATH") + ":" + path) - // shell.execCommand("export PATH=" + os.Getenv("PATH") + ":" + path) - - // fmt.Println(cmd.String()) - // err := cmd.Run() - // if err != nil { - // LuaErr(L, 1) - // } - return 0 + "cd": cd, + "mkdir": mkdir, + "stat": stat, } func cd(L *lua.LState) int { diff --git a/lua.go b/lua.go index a1060fe..573bb6c 100644 --- a/lua.go +++ b/lua.go @@ -27,6 +27,7 @@ func LuaInit(confpath string) { l.SetGlobal("prompt", l.NewFunction(hshprompt)) l.SetGlobal("multiprompt", l.NewFunction(hshmlprompt)) l.SetGlobal("alias", l.NewFunction(hshalias)) + l.SetGlobal("appendpath", l.NewFunction(hsappendpath)) // Add fs module to Lua l.PreloadModule("fs", lfs.Loader) @@ -99,3 +100,11 @@ func hshalias(L *lua.LState) int { return 1 } + +func hsappendpath(L *lua.LState) int { + path := L.ToString(1) + + os.Setenv("PATH", os.Getenv("PATH")+":"+path) + + return 0 +}