diff --git a/versions/merge/docs/api/bait/index.html b/versions/merge/docs/api/bait/index.html index 868c1fc..6a0b3d7 100644 --- a/versions/merge/docs/api/bait/index.html +++ b/versions/merge/docs/api/bait/index.html @@ -1,7 +1,7 @@
the event emitter
the event emitter
Bait is the event emitter for Hilbish. Why name it bait? Why not. It throws hooks that you can catch. This is what you will use if you want to listen in on hooks to know when certain things have diff --git a/versions/merge/docs/api/commander/index.html b/versions/merge/docs/api/commander/index.html index 8586293..68aaac5 100644 --- a/versions/merge/docs/api/commander/index.html +++ b/versions/merge/docs/api/commander/index.html @@ -1,7 +1,7 @@
library for custom commands
library for custom commands
Commander is a library for writing custom commands in Lua. In order to make it easier to write commands for Hilbish, not require separate scripts and to be able to use in a config, diff --git a/versions/merge/docs/api/fs/index.html b/versions/merge/docs/api/fs/index.html index 10da7d2..02bb8ee 100644 --- a/versions/merge/docs/api/fs/index.html +++ b/versions/merge/docs/api/fs/index.html @@ -1,7 +1,7 @@
filesystem interaction and functionality library
filesystem interaction and functionality library
The fs module provides easy and simple access to filesystem functions and other things, and acts an addition to the Lua standard library’s I/O and filesystem functions.
command aliasing
command aliasing
The alias interface deals with all command aliases in Hilbish.
This is an alias (ha) for the hilbish.alias
function.
tab completions
tab completions
The completions interface deals with tab completions.
Calls a completer function. This is mainly used to call diff --git a/versions/merge/docs/api/hilbish/hilbish.editor/index.html b/versions/merge/docs/api/hilbish/hilbish.editor/index.html index 7c7bf90..e2236ed 100644 --- a/versions/merge/docs/api/hilbish/hilbish.editor/index.html +++ b/versions/merge/docs/api/hilbish/hilbish.editor/index.html @@ -1,7 +1,7 @@
interactions for Hilbish's line reader
interactions for Hilbish's line reader
The hilbish.editor interface provides functions to directly interact with the line editor in use.
command history
command history
The history interface deals with command history. This includes the ability to override functions to change the main method of saving history.
background job management
background job management
Manage interactive jobs in Hilbish via Lua.
Jobs are the name of background tasks/commands. A job can be started via interactive usage or with the functions defined below for use in external runners.
native module loading
The hilbish.module interface provides a function +to load Hilbish plugins/modules. +Hilbish modules are Go-written plugins (see https://pkg.go.dev/plugin +) +that are used to add functionality to Hilbish that cannot be written +n Lua for any reason.
To make a valid native module, the Go plugin
+has to export a Loader function with a signature like so:
+func(*rt.Runtime) rt.Value
+rt
in this case refers to the Runtime type at
+https://pkg.go.dev/github.com/arnodel/golua@master/runtime#Runtime
+Hilbish uses this package as its Lua runtime. You will need to read
+it to use it for a native plugin.
Loads a module at the designated path
.
+It will throw if any error occurs.
OS Info
OS Info
The os
interface provides simple text information properties about
the current OS on the systen. This mainly includes the name and
version.
interactive command runner customization
interactive command runner customization
The runner interface contains functions that allow the user to change how Hilbish interprets interactive input. Users can add and change the default runner for interactive input to any diff --git a/versions/merge/docs/api/hilbish/hilbish.timers/index.html b/versions/merge/docs/api/hilbish/hilbish.timers/index.html index 96ebe46..69b7ec0 100644 --- a/versions/merge/docs/api/hilbish/hilbish.timers/index.html +++ b/versions/merge/docs/api/hilbish/hilbish.timers/index.html @@ -1,7 +1,7 @@
timeout and interval API
timeout and interval API
If you ever want to run a piece of code on a timed interval, or want to wait a few seconds, you don’t have to rely on timing tricks, as Hilbish has a timer API to set intervals and timeouts.
These are the simple functions hilbish.interval
and hilbish.timeout
(doc
diff --git a/versions/merge/docs/api/hilbish/hilbish.userdir/index.html b/versions/merge/docs/api/hilbish/hilbish.userdir/index.html
index 64c7468..5ebc6ba 100644
--- a/versions/merge/docs/api/hilbish/hilbish.userdir/index.html
+++ b/versions/merge/docs/api/hilbish/hilbish.userdir/index.html
@@ -1,7 +1,7 @@
user-related directories
user-related directories
This interface just contains properties to know about certain user directories. It is equivalent to XDG on Linux and gets the user’s preferred directories for configs and data.
the core Hilbish API
the core Hilbish API
The Hilbish module includes the core API, containing interfaces and functions which directly relate to shell functionality.
ver
: The version of Hilbishuser
: Username of the userhost
: Hostname of the machinedataDir
: Directory for Hilbish data files, including the docs and default modulesinteractive
: Is Hilbish in an interactive shell?login
: Is Hilbish the login shell?vimMode
: Current Vim input mode of Hilbish (will be nil if not in Vim input mode)exitCode
: xit code of the last executed commandver
: The version of HilbishgoVersion
: The version of Go that Hilbish was compiled withuser
: Username of the userhost
: Hostname of the machinedataDir
: Directory for Hilbish data files, including the docs and default modulesinteractive
: Is Hilbish in an interactive shell?login
: Is Hilbish the login shell?vimMode
: Current Vim input mode of Hilbish (will be nil if not in Vim input mode)exitCode
: xit code of the last executed commandSets an alias of cmd
to orig
Appends dir
to $PATH
Welcome to the API documentation for Hilbish. This documents Lua functions +
Welcome to the API documentation for Hilbish. This documents Lua functions provided by Hilbish.
low level terminal library
low level terminal library
The terminal library is a simple and lower level library for certain terminal interactions.
Restores the last saved state of the terminal
Last updated Dec 20, 2022
Last updated Dec 20, 2022
No, it is not. POSIX compliance is a non-goal. Perhaps in the future, someone would be able to write a native plugin to support shell scripting (which would be against it’s main goal, but ….)
Last updated Apr 14, 2023
Hilbish has a wide range of features to enhance the user’s experience +
Last updated Apr 14, 2023
Hilbish has a wide range of features to enhance the user’s experience new ones are always being added. If there is something missing here or something you would like to see, please start a discussion or comment on any existing ones which match your request.
Last updated Jul 10, 2023
Get notified of shell actions.
Hilbish features a simple notification system which can be +
Last updated Jul 10, 2023
Get notified of shell actions.
Hilbish features a simple notification system which can be
used by other plugins and parts of the shell to notify the user
of various actions. This is used via the hilbish.message
interface.
A message
is defined as a table with the following properties:
icon
: A unicode/emoji icon for the notification.title
: The title of the messagetext
: Message text/bodychannel
: The source of the message. This should be a
unique and easily readable text identifier.summary
: A short summary of the notification and message.
diff --git a/versions/merge/docs/features/runner-mode/index.html b/versions/merge/docs/features/runner-mode/index.html
index 0f4088b..8191ed8 100644
--- a/versions/merge/docs/features/runner-mode/index.html
+++ b/versions/merge/docs/features/runner-mode/index.html
@@ -1,7 +1,7 @@
Last updated Apr 14, 2023
Customize the interactive script/command runner.
Hilbish allows you to change how interactive text can be interpreted. +
Last updated Apr 14, 2023
Customize the interactive script/command runner.
Hilbish allows you to change how interactive text can be interpreted. This is mainly due to the fact that the default method Hilbish uses is that it runs Lua first and then falls back to shell script.
In some cases, someone might want to switch to just shell script to avoid it while interactive but still have a Lua config, or go full Lua to use diff --git a/versions/merge/docs/getting-started/index.html b/versions/merge/docs/getting-started/index.html index 53ff90b..a035043 100644 --- a/versions/merge/docs/getting-started/index.html +++ b/versions/merge/docs/getting-started/index.html @@ -3,7 +3,7 @@ Setting as Default Login shell There are a few ways to make Hilbish your default Setting as Default Login shell There are a few ways to make Hilbish your default shell. A simple way is to make it your user/login shell." name=description>
Last updated Apr 14, 2023
To start Hilbish, open a terminal. If Hilbish has been installed and is not the +
Last updated Apr 14, 2023
To start Hilbish, open a terminal. If Hilbish has been installed and is not the
default shell, you can simply run hilbish
to start it. This will launch
a normal interactive session.
To exit, you can either run the exit
command or hit Ctrl+D.
Last updated Dec 20, 2022
Hilbish is a hyper-extensible shell mainly intended for interactive use. +
Last updated Dec 20, 2022
Hilbish is a hyper-extensible shell mainly intended for interactive use. To enhance the interactive experience, Hilbish comes with a wide range of features and sane defaults, including a nice looking prompt, advanced completion menus and history search.
Here documents some of the features of Hilbish and the Lua API.