diff --git a/.hilbishrc.lua b/.hilbishrc.lua index 249f97e..483b172 100644 --- a/.hilbishrc.lua +++ b/.hilbishrc.lua @@ -25,6 +25,7 @@ local function doNotifyPrompt() end doPrompt() +--[[ bait.catch('command.preexec', function() running = true @@ -47,3 +48,4 @@ end) bait.catch('hilbish.notification', function(notif) doNotifyPrompt() end) +]]-- diff --git a/api.go b/api.go index 697b523..6dc4beb 100644 --- a/api.go +++ b/api.go @@ -51,7 +51,9 @@ func hilbishLoader(mlr *moonlight.Runtime) moonlight.Value { "hinter": {hlhinter, 1, false}, "multiprompt": {hlmultiprompt, 1, false}, "prependPath": {hlprependPath, 1, false}, + */ "prompt": {hlprompt, 1, true}, + /* "inputMode": {hlinputMode, 1, false}, "interval": {hlinterval, 2, false}, "read": {hlread, 1, false}, @@ -80,6 +82,7 @@ func hilbishLoader(mlr *moonlight.Runtime) moonlight.Value { hshMod.SetField("interactive", moonlight.BoolValue(interactive)) hshMod.SetField("login", moonlight.BoolValue(login)) hshMod.SetField("exitCode", moonlight.IntValue(0)) + hshMod.SetField("midnightEdition", moonlight.BoolValue(moonlight.IsMidnight())) //util.SetField(rtm, mod, "vimMode", rt.NilValue) // hilbish.userDir table @@ -130,8 +133,10 @@ func hilbishLoader(mlr *moonlight.Runtime) moonlight.Value { //mod.Set(rt.StringValue("version"), rt.TableValue(versionModule)) // very meta - //moduleModule := moduleLoader(mlr) - //hshMod.SetField("module", moonlight.TableValue(moduleModule)) + if moonlight.IsMidnight() { + moduleModule := moduleLoader(mlr) + hshMod.SetField("module", moonlight.TableValue(moduleModule)) + } return moonlight.TableValue(hshMod) } diff --git a/moonlight/value_clua.go b/moonlight/value_clua.go index c611457..52b44fa 100644 --- a/moonlight/value_clua.go +++ b/moonlight/value_clua.go @@ -41,7 +41,7 @@ func TableValue(t *Table) Value { } func FunctionValue(f Callable) Value { - return NilValue + return Value{iface: f} } func AsValue(i interface{}) Value { diff --git a/nature/init.lua b/nature/init.lua index a0579d7..a90b540 100644 --- a/nature/init.lua +++ b/nature/init.lua @@ -1,22 +1,25 @@ -- Prelude initializes everything else for our shell +--[[ local _ = require 'succulent' -- Function additions local bait = require 'bait' -local fs = require 'fs' +--local fs = require 'fs' package.path = package.path .. ';' .. hilbish.dataDir .. '/?/init.lua' .. ';' .. hilbish.dataDir .. '/?/?.lua' .. ";" .. hilbish.dataDir .. '/?.lua' -hilbish.module.paths = '?.so;?/?.so;' -.. hilbish.userDir.data .. 'hilbish/libs/?/?.so' -.. ";" .. hilbish.userDir.data .. 'hilbish/libs/?.so' +if not hilbish.midnightEdition then + hilbish.module.paths = '?.so;?/?.so;' + .. hilbish.userDir.data .. 'hilbish/libs/?/?.so' + .. ";" .. hilbish.userDir.data .. 'hilbish/libs/?.so' -table.insert(package.searchers, function(module) - local path = package.searchpath(module, hilbish.module.paths) - if not path then return nil end + table.insert(package.searchers, function(module) + local path = package.searchpath(module, hilbish.module.paths) + if not path then return nil end - -- it didnt work normally, idk - return function() return hilbish.module.load(path) end, path -end) + -- it didnt work normally, idk + return function() return hilbish.module.load(path) end, path + end) +end require 'nature.commands' require 'nature.completions' @@ -90,3 +93,4 @@ end) bait.catch('command.not-executable', function(cmd) print(string.format('hilbish: %s: not executable', cmd)) end) +]]--