mirror of https://github.com/Hilbis/Hilbish
64 lines
2.8 KiB
Plaintext
64 lines
2.8 KiB
Plaintext
alias(cmd, orig) > Sets an alias of `cmd` to `orig`
|
|
|
|
appendPath(dir) > Appends `dir` to $PATH
|
|
|
|
complete(scope, cb) > Registers a completion handler for `scope`.
|
|
A `scope` is currently only expected to be `command.<cmd>`,
|
|
replacing <cmd> with the name of the command (for example `command.git`).
|
|
`cb` must be a function that returns a table of "completion groups."
|
|
A completion group is a table with the keys `items` and `type`.
|
|
`items` being a table of items and `type` being the display type of
|
|
`grid` (the normal file completion display) or `list` (with a description)
|
|
|
|
cwd() > Returns the current directory of the shell
|
|
|
|
exec(cmd) > Replaces running hilbish with `cmd`
|
|
|
|
goro(fn) > Puts `fn` in a goroutine
|
|
|
|
highlighter(cb) > Sets the highlighter function. This is mainly for syntax hightlighting, but in
|
|
reality could set the input of the prompt to display anything. The callback
|
|
is passed the current line as typed and is expected to return a line that will
|
|
be used to display in the line.
|
|
|
|
hinter(cb) > Sets the hinter function. This will be called on every key insert to determine
|
|
what text to use as an inline hint. The callback is passed 2 arguments:
|
|
the current line and the position. It is expected to return a string
|
|
which will be used for the hint.
|
|
|
|
inputMode(mode) > Sets the input mode for Hilbish's line reader. Accepts either emacs or vim
|
|
|
|
interval(cb, time) > Runs the `cb` function every `time` milliseconds.
|
|
Returns a `timer` object (see `doc timers`).
|
|
|
|
multiprompt(str) > Changes the continued line prompt to `str`
|
|
|
|
prependPath(dir) > Prepends `dir` to $PATH
|
|
|
|
prompt(str, typ?) > Changes the shell prompt to `str`
|
|
There are a few verbs that can be used in the prompt text.
|
|
These will be formatted and replaced with the appropriate values.
|
|
`%d` - Current working directory
|
|
`%u` - Name of current user
|
|
`%h` - Hostname of device
|
|
|
|
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, returnOut) -> exitCode, stdout, stderr > Runs `cmd` in Hilbish's sh interpreter.
|
|
If returnOut is true, the outputs of `cmd` will be returned as the 2nd and
|
|
3rd values instead of being outputted to the terminal.
|
|
|
|
runnerMode(mode) > Sets the execution/runner mode for interactive Hilbish. This determines whether
|
|
Hilbish wll try to run input as Lua and/or sh or only do one of either.
|
|
Accepted values for mode are hybrid (the default), hybridRev (sh first then Lua),
|
|
sh, and lua. It also accepts a function, to which if it is passed one
|
|
will call it to execute user input instead.
|
|
|
|
timeout(cb, time) > Runs the `cb` function after `time` in milliseconds
|
|
Returns a `timer` object (see `doc timers`).
|
|
|
|
which(binName) > Searches for an executable called `binName` in the directories of $PATH
|
|
|