Compare commits
2 Commits
fab605ff21
...
928a1db13c
Author | SHA1 | Date | |
---|---|---|---|
928a1db13c | |||
eccc80ad16 |
@ -22,17 +22,18 @@ function shell.interactive()
|
||||
local shenv = setmetatable({}, {__index=shindex})
|
||||
local run = true
|
||||
while run do
|
||||
io.write(string.format("%s:%s> ",os.getenv("HOSTNAME") or "localhost",(os.getenv("PWD") or _VERSION)))
|
||||
io.write(string.format("\27[32m%s:%s>\27[0m ",os.getenv("HOSTNAME") or "localhost",(os.getenv("PWD") or _VERSION)))
|
||||
local input = io.read()
|
||||
if input:sub(1,1) == "=" then
|
||||
input = "return "..input:sub(2)
|
||||
end
|
||||
local f, r = load(input, "shell", "t", shenv)
|
||||
if not f then
|
||||
print(r)
|
||||
print("\27[31m"..r)
|
||||
else
|
||||
local rt = {pcall(f)}
|
||||
local rs = table.remove(rt,1)
|
||||
if not rs then io.write("\27[31m") end
|
||||
for k,v in pairs(rt) do
|
||||
print(formatValue(v))
|
||||
end
|
||||
|
@ -31,6 +31,8 @@ function vt100emu(gpu) -- takes GPU component proxy *gpu* and returns a function
|
||||
cx = 1
|
||||
elseif cc == "\27" then -- escape
|
||||
mode = "e"
|
||||
elseif cc == "\t" then
|
||||
cx = 8*((cx+9)//8)
|
||||
elseif string.byte(cc) > 31 and string.byte(cc) < 127 then -- printable, I guess
|
||||
gpu.set(cx, cy, cc)
|
||||
cx = cx + 1
|
||||
|
Loading…
Reference in New Issue
Block a user