From 9d685ab7856188b66d9f70ce9a8aa064c4eaaf94 Mon Sep 17 00:00:00 2001 From: TorchedSammy <38820196+TorchedSammy@users.noreply.github.com> Date: Fri, 31 Dec 2021 13:25:53 -0400 Subject: [PATCH] feat: add hilbish.greeting --- .hilbishrc.lua | 3 +-- hilbish.go | 8 ++++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.hilbishrc.lua b/.hilbishrc.lua index f7d85aa..ec3f2e0 100644 --- a/.hilbishrc.lua +++ b/.hilbishrc.lua @@ -8,8 +8,7 @@ function doPrompt(fail) )) end -print(lunacolors.format('Welcome to {magenta}Hilbish{reset}, {cyan}' .. hilbish.user -.. '{reset}.\n' .. 'The nice lil shell for {blue}Lua{reset} fanatics!\n')) +print(lunacolors.format(hilbish.greeting)) doPrompt() diff --git a/hilbish.go b/hilbish.go index b9f3877..291c9b2 100644 --- a/hilbish.go +++ b/hilbish.go @@ -23,11 +23,18 @@ var exports = map[string]lua.LGFunction { "read": hlread, } +var greeting string + func hilbishLoader(L *lua.LState) int { mod := L.SetFuncs(L.NewTable(), exports) host, _ := os.Hostname() username := curuser.Username + + greeting = `Welcome to {magenta}Hilbish{reset}, {cyan}` + curuser.Username + `{reset}. +The nice lil shell for {blue}Lua{reset} fanatics! +` + if runtime.GOOS == "windows" { username = strings.Split(username, "\\")[1] // for some reason Username includes the hostname on windows } @@ -39,6 +46,7 @@ func hilbishLoader(L *lua.LState) int { util.SetField(L, mod, "dataDir", lua.LString(dataDir), "Directory for Hilbish's data files") util.SetField(L, mod, "interactive", lua.LBool(interactive), "If this is an interactive shell") util.SetField(L, mod, "login", lua.LBool(interactive), "Whether this is a login shell") + util.SetField(L, mod, "greeting", lua.LString(greeting), "Hilbish's welcome message for interactive shells. It has Lunacolors formatting.") util.Document(L, mod, "Hilbish's core API, containing submodules and functions which relate to the shell itself.") // hilbish.userDir table