Compare commits

...

6 Commits

Author SHA1 Message Date
sammyette 2f816c33cd
fix: revert "chore: update deps"
This reverts commit e06765abc3.
broke builds
2021-10-30 23:08:29 -04:00
sammyette 9b66547803
docs: change urls to use new org name 2021-10-30 20:03:59 -04:00
sammyette e06765abc3
chore: update deps 2021-10-30 20:01:07 -04:00
sammyette 2073752e7e
chore: merge from dev 2021-10-30 19:57:50 -04:00
sammyette 84ec3d085d
feat: add hilbish.read function
`hilbish.read` will read input from the user, using
hilbish's line editor library (hilbiline or readline)
2021-10-30 19:53:42 -04:00
sammyette 97a6e4baf2
feat: add hilbish.interactive and hilbish.login vars
these are to check from lua if hilbish is running an interactive or
login session
2021-10-30 19:44:40 -04:00
3 changed files with 30 additions and 4 deletions

View File

@ -10,8 +10,8 @@ a contribution. Be sure to read through it.
Use GitHub Issues to report any bugs or to request any features
that may be useful to *anyone* else.
Check [currently open issues](https://github.com/Hilbis/Hilbish/issues)
and [closed ones](https://github.com/Hilbis/Hilbish/issues?q=is%3Aissue+is%3Aclosed) to make sure someone else hasn't already made the issue.
Check [currently open issues](https://github.com/Rosettea/Hilbish/issues)
and [closed ones](https://github.com/Rosettea/Hilbish/issues?q=is%3Aissue+is%3Aclosed) to make sure someone else hasn't already made the issue.
For bug reports, be sure to include:
- Hilbish Version (`hilbish -v`)
@ -40,8 +40,8 @@ your commits correctly.
4. Finally, make the pull request to the **dev** branch.
## Finding Issues to Contribute to
You can check out the [help wanted](https://github.com/Hilbis/Hilbish/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22+)
You can check out the [help wanted](https://github.com/Rosettea/Hilbish/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22+)
labels to figure out what we need your help working on.
The [up for grabs](https://github.com/Hilbis/Hilbish/issues?q=is%3Aissue+is%3Aopen+label%3A%22up+for+grabs%22+) labeled issues are low hanging fruit that should be
The [up for grabs](https://github.com/Rosettea/Hilbish/issues?q=is%3Aissue+is%3Aopen+label%3A%22up+for+grabs%22+) labeled issues are low hanging fruit that should be
easy for anyone. You can use this to get started on contributing!

View File

@ -2,5 +2,9 @@ cwd() > Returns the current directory of the shell
flag(f) > Checks if the `f` flag has been passed to Hilbish.
read(prompt) -> input? > Read input from the user, using Hilbish's line editor/input reader.
This is a separate instance from the one Hilbish actually uses.
Returns `input`, will be nil if ctrl + d is pressed, or an error occurs (which shouldn't happen)
run(cmd) > Runs `cmd` in Hilbish's sh interpreter

View File

@ -19,6 +19,7 @@ var exports = map[string]lua.LGFunction {
"run": hlrun,
"flag": hlflag,
"cwd": hlcwd,
"read": hlread,
}
func HilbishLoader(L *lua.LState) int {
@ -36,6 +37,8 @@ func HilbishLoader(L *lua.LState) int {
L.SetField(mod, "host", lua.LString(host))
L.SetField(mod, "home", lua.LString(homedir))
L.SetField(mod, "dataDir", lua.LString(dataDir))
L.SetField(mod, "interactive", lua.LBool(interactive))
L.SetField(mod, "login", lua.LBool(interactive))
xdg := L.NewTable()
L.SetField(xdg, "config", lua.LString(confDir))
@ -92,3 +95,22 @@ func getenv(key, fallback string) string {
}
return value
}
// read(prompt) -> input?
// Read input from the user, using Hilbish's line editor/input reader.
// This is a separate instance from the one Hilbish actually uses.
// Returns `input`, will be nil if ctrl + d is pressed, or an error occurs (which shouldn't happen)
func hlread(L *lua.LState) int {
luaprompt := L.CheckString(1)
lualr := NewLineReader(luaprompt)
input, err := lualr.Read()
if err != nil {
L.Push(lua.LNil)
return 1
}
L.Push(lua.LString(input))
return 1
}