mirror of
https://github.com/Hilbis/Hilbish
synced 2025-04-21 21:13:22 +00:00
Compare commits
3 Commits
69dc1ecbd1
...
1912bd1600
Author | SHA1 | Date | |
---|---|---|---|
1912bd1600 | |||
0e4b95d9b9 | |||
a24bca3258 |
9
main.go
9
main.go
@ -6,6 +6,7 @@ import (
|
||||
"fmt"
|
||||
"io"
|
||||
"os"
|
||||
"os/exec"
|
||||
"os/user"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
@ -115,7 +116,13 @@ func main() {
|
||||
|
||||
// Set $SHELL if the user wants to
|
||||
if *setshflag {
|
||||
os.Setenv("SHELL", os.Args[0])
|
||||
os.Setenv("SHELL", "hilbish")
|
||||
|
||||
path, err := exec.LookPath("hilbish")
|
||||
if err == nil {
|
||||
os.Setenv("SHELL", path)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
lr = newLineReader("", false)
|
||||
|
10
nature/env.lua
Normal file
10
nature/env.lua
Normal file
@ -0,0 +1,10 @@
|
||||
env = {}
|
||||
|
||||
setmetatable(env, {
|
||||
__index = function(_, k)
|
||||
return os.getenv(k)
|
||||
end,
|
||||
__newindex = function(_, k, v)
|
||||
os.setenv(k, tostring(v))
|
||||
end
|
||||
})
|
@ -24,6 +24,7 @@ require 'nature.opts'
|
||||
require 'nature.vim'
|
||||
require 'nature.runner'
|
||||
require 'nature.hummingbird'
|
||||
require 'nature.env'
|
||||
|
||||
local shlvl = tonumber(os.getenv 'SHLVL')
|
||||
if shlvl ~= nil then
|
||||
@ -32,36 +33,6 @@ else
|
||||
os.setenv('SHLVL', '0')
|
||||
end
|
||||
|
||||
do
|
||||
local virt_G = { }
|
||||
|
||||
setmetatable(_G, {
|
||||
__index = function (_, key)
|
||||
local got_virt = virt_G[key]
|
||||
if got_virt ~= nil then
|
||||
return got_virt
|
||||
end
|
||||
|
||||
if type(key) == 'string' then
|
||||
virt_G[key] = os.getenv(key)
|
||||
end
|
||||
return virt_G[key]
|
||||
end,
|
||||
|
||||
__newindex = function (_, key, value)
|
||||
if type(value) == 'string' then
|
||||
os.setenv(key, value)
|
||||
virt_G[key] = value
|
||||
else
|
||||
if type(virt_G[key]) == 'string' then
|
||||
os.setenv(key, '')
|
||||
end
|
||||
virt_G[key] = value
|
||||
end
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
||||
do
|
||||
local startSearchPath = hilbish.userDir.data .. '/hilbish/start/?/init.lua;'
|
||||
.. hilbish.userDir.data .. '/hilbish/start/?.lua'
|
||||
|
Loading…
x
Reference in New Issue
Block a user