From 0564ff7b9525c0dfc779fdc98f308bcdf7f77fbb Mon Sep 17 00:00:00 2001 From: sammy-ette Date: Sun, 15 Jun 2025 16:28:35 +0000 Subject: [PATCH] deploy: 15578b10b812fc92b47774a589f722843013f5b7 --- .../midnight-edition/docs/api/bait/index.html | 2 +- .../docs/api/commander/index.html | 2 +- .../midnight-edition/docs/api/fs/index.html | 2 +- .../docs/api/hilbish/hilbish.abbr/index.html | 21 ++++++ .../api/hilbish/hilbish.aliases/index.html | 2 +- .../api/hilbish/hilbish.completion/index.html | 2 +- .../api/hilbish/hilbish.editor/index.html | 26 +++---- .../api/hilbish/hilbish.history/index.html | 2 +- .../docs/api/hilbish/hilbish.jobs/index.html | 2 +- .../api/hilbish/hilbish.messages/index.html | 28 ++++++++ .../api/hilbish/hilbish.module/index.html | 2 +- .../docs/api/hilbish/hilbish.os/index.html | 2 +- .../api/hilbish/hilbish.runner/index.html | 49 ++++++++++--- .../api/hilbish/hilbish.timers/index.html | 2 +- .../api/hilbish/hilbish.userdir/index.html | 2 +- .../docs/api/hilbish/index.html | 69 +++++++++++-------- .../docs/api/hilbish/index.xml | 6 +- versions/midnight-edition/docs/api/index.html | 2 +- versions/midnight-edition/docs/api/index.xml | 6 +- .../docs/api/snail/index.html | 17 +++++ .../docs/api/terminal/index.html | 2 +- .../docs/completions/index.html | 32 ++++++++- versions/midnight-edition/docs/faq/index.html | 2 +- .../midnight-edition/docs/features/index.html | 2 +- .../docs/features/notifications/index.html | 2 +- .../docs/features/opts/index.html | 7 +- .../docs/features/runner-mode/index.html | 9 +-- .../docs/getting-started/index.html | 33 +++++++-- .../docs/hooks/command/index.html | 2 +- .../docs/hooks/hilbish/index.html | 12 +++- .../midnight-edition/docs/hooks/index.html | 2 +- .../docs/hooks/signal/index.html | 2 +- versions/midnight-edition/docs/index.html | 2 +- .../docs/lunacolors/index.html | 13 ++-- .../docs/nature/dirs/index.html | 28 ++++---- .../docs/nature/doc/index.html | 18 +++++ .../midnight-edition/docs/nature/index.html | 2 +- .../midnight-edition/docs/nature/index.xml | 13 +--- .../docs/vim-mode/actions/index.html | 2 +- .../midnight-edition/docs/vim-mode/index.html | 2 +- versions/midnight-edition/index.xml | 25 +++---- versions/midnight-edition/sitemap.xml | 2 +- 42 files changed, 316 insertions(+), 144 deletions(-) create mode 100644 versions/midnight-edition/docs/api/hilbish/hilbish.abbr/index.html create mode 100644 versions/midnight-edition/docs/api/hilbish/hilbish.messages/index.html create mode 100644 versions/midnight-edition/docs/api/snail/index.html create mode 100644 versions/midnight-edition/docs/nature/doc/index.html diff --git a/versions/midnight-edition/docs/api/bait/index.html b/versions/midnight-edition/docs/api/bait/index.html index 024049a6..7898506f 100644 --- a/versions/midnight-edition/docs/api/bait/index.html +++ b/versions/midnight-edition/docs/api/bait/index.html @@ -1,7 +1,7 @@ Module bait — Hilbish

Module bait

the event emitter

Introduction +

Module bait

the event emitter

Introduction

Bait is the event emitter for Hilbish. Much like Node.js and its events system, many actions in Hilbish emit events. Unlike Node.js, Hilbish events are global. So make sure to diff --git a/versions/midnight-edition/docs/api/commander/index.html b/versions/midnight-edition/docs/api/commander/index.html index e4fa3a28..8cf2bca1 100644 --- a/versions/midnight-edition/docs/api/commander/index.html +++ b/versions/midnight-edition/docs/api/commander/index.html @@ -1,7 +1,7 @@ Module commander — Hilbish

Module commander

library for custom commands

Introduction +

Module commander

library for custom commands

Introduction

Commander is the library which handles Hilbish commands. This makes the user able to add Lua-written commands to their shell without making a separate script in a bin folder. Instead, you may simply use the Commander diff --git a/versions/midnight-edition/docs/api/fs/index.html b/versions/midnight-edition/docs/api/fs/index.html index 4432fcbc..6aa31d37 100644 --- a/versions/midnight-edition/docs/api/fs/index.html +++ b/versions/midnight-edition/docs/api/fs/index.html @@ -1,7 +1,7 @@ Module fs — Hilbish

Module fs

filesystem interaction and functionality library

Introduction +

Module fs

filesystem interaction and functionality library

Introduction

The fs module provides filesystem functions to Hilbish. While Lua’s standard library has some I/O functions, they’re missing a lot of the basics. The fs library offers more functions and will work on any operating system Hilbish does.

Functions diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/index.html new file mode 100644 index 00000000..55b1b626 --- /dev/null +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/index.html @@ -0,0 +1,21 @@ +Module hilbish.abbr — Hilbish +

Module hilbish.abbr

command line abbreviations

Introduction +

The abbr module manages Hilbish abbreviations. These are words that can be replaced +with longer command line strings when entered. +As an example, git push can be abbreviated to gp. When the user types +gp into the command line, after hitting space or enter, it will expand to git push. +Abbreviations can be used as an alternative to aliases. They are saved entirely in the history +Instead of the aliased form of the same command.

Functions +

remove(abbr)Removes the named abbr.
add(abbr, expandedfunction, opts)

hilbish.abbr.add(abbr, expanded|function, opts) +

Adds an abbreviation. The abbr is the abbreviation itself, +while expanded is what the abbreviation should expand to. +It can be either a function or a string. If it is a function, it will expand to what +the function returns. +opts is a table that accepts 1 key: anywhere. +opts.anywhere defines whether the abbr expands anywhere in the command line or not, +whereas the default behavior is only at the beginning of the line

Parameters +

abbr string

expanded|function string

opts table


hilbish.abbr.remove(abbr) +

Removes the named abbr.

Parameters +

abbr string

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/index.html index e540170a..d0805b47 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/index.html @@ -1,7 +1,7 @@ Module hilbish.aliases — Hilbish

Module hilbish.aliases

command aliasing

Introduction +

Module hilbish.aliases

command aliasing

Introduction

The alias interface deals with all command aliases in Hilbish.

Functions

add(alias, cmd)This is an alias (ha) for the hilbish.alias function.
delete(name)Removes an alias.
list() -> table[string, string]Get a table of all aliases, with string keys as the alias and the value as the command.
resolve(alias) -> string?Resolves an alias to its original command. Will thrown an error if the alias doesn’t exist.

hilbish.aliases.add(alias, cmd) diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.completion/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.completion/index.html index 18149a0e..eb103dfe 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.completion/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.completion/index.html @@ -1,7 +1,7 @@ Module hilbish.completion — Hilbish

Module hilbish.completion

tab completions

Introduction +

Module hilbish.completion

tab completions

Introduction

The completions interface deals with tab completions.

Functions

bins(query, ctx, fields) -> entries (table), prefix (string)Return binaries/executables based on the provided parameters.
call(name, query, ctx, fields) -> completionGroups (table), prefix (string)Calls a completer function. This is mainly used to call a command completer, which will have a name
files(query, ctx, fields) -> entries (table), prefix (string)Returns file matches based on the provided parameters.
handler(line, pos)This function contains the general completion handler for Hilbish. This function handles

hilbish.completion.bins(query, ctx, fields) -> entries (table), prefix (string)

Return binaries/executables based on the provided parameters.
This function is meant to be used as a helper in a command completion handler.

Parameters diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.editor/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.editor/index.html index c75362f2..53bb039d 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.editor/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.editor/index.html @@ -1,17 +1,19 @@ Module hilbish.editor — Hilbish

Module hilbish.editor

interactions for Hilbish's line reader

Introduction +

Module hilbish.editor

interactions for Hilbish's line reader

Introduction

The hilbish.editor interface provides functions to directly interact with the line editor in use.

Functions -

getLine() -> stringReturns the current input line.
getVimRegister(register) -> stringReturns the text that is at the register.
insert(text)Inserts text into the Hilbish command line.
getChar() -> stringReads a keystroke from the user. This is in a format of something like Ctrl-L.
setVimRegister(register, text)Sets the vim register at register to hold the passed text.

hilbish.editor.getLine() -> string -

Returns the current input line.

Parameters -

This function has no parameters.


hilbish.editor.getVimRegister(register) -> string -

Returns the text that is at the register.

Parameters -

string register


hilbish.editor.insert(text) -

Inserts text into the Hilbish command line.

Parameters -

string text


hilbish.editor.getChar() -> string -

Reads a keystroke from the user. This is in a format of something like Ctrl-L.

Parameters -

This function has no parameters.


hilbish.editor.setVimRegister(register, text) -

Sets the vim register at register to hold the passed text.

Parameters -

string text

\ No newline at end of file +
deleteByAmount(amount)Deletes characters in the line by the given amount.
getLine() -> stringReturns the current input line.
getVimRegister(register) -> stringReturns the text that is at the register.
insert(text)Inserts text into the Hilbish command line.
getChar() -> stringReads a keystroke from the user. This is in a format of something like Ctrl-L.
setVimRegister(register, text)Sets the vim register at register to hold the passed text.

hilbish.editor.deleteByAmount(amount) +

Deletes characters in the line by the given amount.

Parameters +

number amount


hilbish.editor.getLine() -> string +

Returns the current input line.

Parameters +

This function has no parameters.


hilbish.editor.getVimRegister(register) -> string +

Returns the text that is at the register.

Parameters +

string register


hilbish.editor.insert(text) +

Inserts text into the Hilbish command line.

Parameters +

string text


hilbish.editor.getChar() -> string +

Reads a keystroke from the user. This is in a format of something like Ctrl-L.

Parameters +

This function has no parameters.


hilbish.editor.setVimRegister(register, text) +

Sets the vim register at register to hold the passed text.

Parameters +

string register

string text

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.history/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.history/index.html index e2822e81..02977b4e 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.history/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.history/index.html @@ -1,7 +1,7 @@ Module hilbish.history — Hilbish

Module hilbish.history

command history

Introduction +

Module hilbish.history

command history

Introduction

The history interface deals with command history. This includes the ability to override functions to change the main method of saving history.

Functions diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/index.html index 8966fde6..056190ba 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/index.html @@ -1,7 +1,7 @@ Module hilbish.jobs — Hilbish

Module hilbish.jobs

background job management

Introduction +

Module hilbish.jobs

background job management

Introduction

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.

Functions

add(cmdstr, args, execPath)Creates a new job. This function does not run the job. This function is intended to be
all() -> table[@Job]Returns a table of all job objects.
disown(id)Disowns a job. This simply deletes it from the list of jobs without stopping it.
get(id) -> @JobGet a job object via its ID.
last() -> @JobReturns the last added job to the table.

hilbish.jobs.add(cmdstr, args, execPath) diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.messages/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.messages/index.html new file mode 100644 index 00000000..20dadb0c --- /dev/null +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.messages/index.html @@ -0,0 +1,28 @@ +Module hilbish.messages — Hilbish +

Module hilbish.messages

simplistic message passing

Introduction +

The messages interface defines a way for Hilbish-integrated commands, +user config and other tasks to send notifications to alert the user.z +The hilbish.message type is a table with the following keys: +title (string): A title for the message notification. +text (string): The contents of the message. +channel (string): States the origin of the message, hilbish.* is reserved for Hilbish tasks. +summary (string): A short summary of the text. +icon (string): Unicode (preferably standard emoji) icon for the message notification +read (boolean): Whether the full message has been read or not.

Functions +

unreadCount()Returns the amount of unread messages.
send(message)Sends a message.
readAll()Marks all messages as read.
read(idx)Marks a message at idx as read.
delete(idx)Deletes the message at idx.
clear()Deletes all messages.
all()Returns all messages.

hilbish.messages.all() +

Returns all messages.

Parameters +

This function has no parameters.


hilbish.messages.clear() +

Deletes all messages.

Parameters +

This function has no parameters.


hilbish.messages.delete(idx) +

Deletes the message at idx.

Parameters +

idx number


hilbish.messages.read(idx) +

Marks a message at idx as read.

Parameters +

idx number


hilbish.messages.readAll() +

Marks all messages as read.

Parameters +

This function has no parameters.


hilbish.messages.send(message) +

Sends a message.

Parameters +

message hilbish.message


hilbish.messages.unreadCount() +

Returns the amount of unread messages.

Parameters +

This function has no parameters.

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.module/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.module/index.html index c742c9a5..8a55a610 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.module/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.module/index.html @@ -1,7 +1,7 @@ Module hilbish.module — Hilbish

Module hilbish.module

native module loading

Introduction +

Module hilbish.module

native module loading

Introduction

The hilbish.module interface provides a function to load Hilbish plugins/modules. Hilbish modules are Go-written plugins (see https://pkg.go.dev/plugin diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.os/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.os/index.html index a81c472e..f6520e2e 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.os/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.os/index.html @@ -1,7 +1,7 @@ Module hilbish.os — Hilbish

Module hilbish.os

operating system info

Introduction +

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.runner/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.runner/index.html index b7f64439..237832ba 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.runner/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.runner/index.html @@ -1,7 +1,7 @@ Module hilbish.runner — Hilbish

Module hilbish.runner

interactive command runner customization

Introduction +

Module hilbish.runner

interactive command runner customization

Introduction

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 @@ -9,9 +9,12 @@ language or script of their choosing. A good example is using it to write command in Fennel.

Runners are functions that evaluate user input. The default runners in Hilbish can run shell script and Lua code.

A runner is passed the input and has to return a table with these values. All are not required, only the useful ones the runner needs to return. -(So if there isn’t an error, just omit err.)

  • exitCode (number): A numerical code to indicate the exit result.
  • input (string): The user input. This will be used to add -to the history.
  • err (string): A string to indicate an interal error for the runner. -It can be set to a few special values for Hilbish to throw the right hooks and have a better looking message:

[command]: not-found will throw a command.not-found hook based on what [command] is.

[command]: not-executable will throw a command.not-executable hook.

  • continue (boolean): Whether to prompt the user for more input.

Here is a simple example of a fennel runner. It falls back to +(So if there isn’t an error, just omit err.)

  • exitCode (number): Exit code of the command
  • input (string): The text input of the user. This is used by Hilbish to append extra input, in case +more is requested.
  • err (string): A string that represents an error from the runner. +This should only be set when, for example, there is a syntax error. +It can be set to a few special values for Hilbish to throw the right +hooks and have a better looking message.
    • \<command>: not-found will throw a command.not-found hook +based on what \<command> is.
    • \<command>: not-executable will throw a command.not-executable hook.
  • continue (boolean): Whether Hilbish should prompt the user for no input
  • newline (boolean): Whether a newline should be added at the end of input.

Here is a simple example of a fennel runner. It falls back to shell script if fennel eval has an error.

 1local fennel = require 'fennel'
  2
  3hilbish.runnerMode(function(input)
@@ -25,10 +28,34 @@ shell script if fennel eval has an error.

11	return hilbish.runner.sh(input)
 12end)
 

Functions -

setMode(cb)This is the same as the hilbish.runnerMode function.
lua(cmd)Evaluates cmd as Lua input. This is the same as using dofile
sh(cmd)Runs a command in Hilbish’s shell script interpreter.

hilbish.runner.setMode(cb) -

This is the same as the hilbish.runnerMode function.
It takes a callback, which will be used to execute all interactive input.
In normal cases, neither callbacks should be overrided by the user,
as the higher level functions listed below this will handle it.

Parameters -

function cb


hilbish.runner.lua(cmd) -

Evaluates cmd as Lua input. This is the same as using dofile
or load, but is appropriated for the runner interface.

Parameters -

string cmd


hilbish.runner.sh(cmd) -

Runs a command in Hilbish’s shell script interpreter.
This is the equivalent of using source.

Parameters -

string cmd

\ No newline at end of file +

lua(cmd)Evaluates cmd as Lua input. This is the same as using dofile
sh()nil
setMode(mode)NOTE: This function is deprecated and will be removed in 3.0
setCurrent(name)Sets Hilbish’s runner mode by name.
set(name, runner)Sets a runner by name. The difference between this function and
run(input, priv)Runs input with the currently set Hilbish runner.
getCurrent()Returns the current runner by name.
get(name)Get a runner by name.
exec(cmd, runnerName)Executes cmd with a runner.
add(name, runner)Adds a runner to the table of available runners.

hilbish.runner.lua(cmd) +

Evaluates cmd as Lua input. This is the same as using dofile
or load, but is appropriated for the runner interface.

Parameters +

string cmd


hilbish.runner.add(name, runner) +

Adds a runner to the table of available runners. +If runner is a table, it must have the run function in it.

Parameters +

name string
Name of the runner

runner function|table


hilbish.runner.exec(cmd, runnerName) +

Executes cmd with a runner. +If runnerName is not specified, it uses the default Hilbish runner.

Parameters +

cmd string

runnerName string?


hilbish.runner.get(name) +

Get a runner by name.

Parameters +

name string
Name of the runner to retrieve.


hilbish.runner.getCurrent() +

Returns the current runner by name.

Parameters +

This function has no parameters.


hilbish.runner.run(input, priv) +

Runs input with the currently set Hilbish runner. +This method is how Hilbish executes commands. +priv is an optional boolean used to state if the input should be saved to history.

Parameters +

input string

priv bool


hilbish.runner.set(name, runner) +

Sets a runner by name. The difference between this function and +add, is set will not check if the named runner exists. +The runner table must have the run function in it.

Parameters +

name string

runner table


hilbish.runner.setCurrent(name) +

Sets Hilbish’s runner mode by name.

Parameters +

name string


hilbish.runner.setMode(mode) +

NOTE: This function is deprecated and will be removed in 3.0 +Use hilbish.runner.setCurrent instead. +This is the same as the hilbish.runnerMode function. +It takes a callback, which will be used to execute all interactive input. +Or a string which names the runner mode to use.

Parameters +

mode string|function


hilbish.runner.sh() +

Parameters +

This function has no parameters.

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/hilbish/hilbish.timers/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.timers/index.html index 15e40201..66f3cf34 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.timers/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.timers/index.html @@ -1,7 +1,7 @@ Module hilbish.timers — Hilbish

Module hilbish.timers

timeout and interval API

Introduction +

Module hilbish.timers

timeout and interval API

Introduction

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/midnight-edition/docs/api/hilbish/hilbish.userdir/index.html b/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/index.html index 0891e1c8..0d3b3aab 100644 --- a/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/index.html +++ b/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/index.html @@ -1,7 +1,7 @@ Module hilbish.userDir — Hilbish

Module hilbish.userDir

user-related directories

Introduction +

Module hilbish.userDir

user-related directories

Introduction

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.

Static module fields diff --git a/versions/midnight-edition/docs/api/hilbish/index.html b/versions/midnight-edition/docs/api/hilbish/index.html index 5de02689..585708cf 100644 --- a/versions/midnight-edition/docs/api/hilbish/index.html +++ b/versions/midnight-edition/docs/api/hilbish/index.html @@ -1,10 +1,10 @@ Module hilbish — Hilbish

Module hilbish

the core Hilbish API

Introduction +

Module hilbish

the core Hilbish API

Introduction

The Hilbish module includes the core API, containing interfaces and functions which directly relate to shell functionality.

Functions -

alias(cmd, orig)Sets an alias, with a name of cmd to another command.
appendPath(dir)Appends the provided dir to the command path ($PATH)
complete(scope, cb)Registers a completion handler for the specified scope.
cwd() -> stringReturns the current directory of the shell.
exec(cmd)Replaces the currently running Hilbish instance with the supplied command.
goro(fn)Puts fn in a Goroutine.
highlighter(line)Line highlighter handler.
hinter(line, pos)The command line hint handler. It gets called on every key insert to
inputMode(mode)Sets the input mode for Hilbish’s line reader.
interval(cb, time) -> @TimerRuns the cb function every specified amount of time.
multiprompt(str)Changes the text prompt when Hilbish asks for more input.
prependPath(dir)Prepends dir to $PATH.
prompt(str, typ)Changes the shell prompt to the provided string.
read(prompt) -> input (string)Read input from the user, using Hilbish’s line editor/input reader.
run(cmd, streams) -> exitCode (number), stdout (string), stderr (string)Runs cmd in Hilbish’s shell script interpreter.
runnerMode(mode)Sets the execution/runner mode for interactive Hilbish.
timeout(cb, time) -> @TimerExecuted the cb function after a period of time.
which(name) -> stringChecks if name is a valid command.

Static module fields +

alias(cmd, orig)Sets an alias, with a name of cmd to another command.
appendPath(dir)Appends the provided dir to the command path ($PATH)
complete(scope, cb)Registers a completion handler for the specified scope.
cwd() -> stringReturns the current directory of the shell.
exec(cmd)Replaces the currently running Hilbish instance with the supplied command.
goro(fn)Puts fn in a Goroutine.
highlighter(line)Line highlighter handler.
hinter(line, pos)The command line hint handler. It gets called on every key insert to
inputMode(mode)Sets the input mode for Hilbish’s line reader.
interval(cb, time) -> @TimerRuns the cb function every specified amount of time.
multiprompt(str)Changes the text prompt when Hilbish asks for more input.
prependPath(dir)Prepends dir to $PATH.
prompt(str, typ)Changes the shell prompt to the provided string.
read(prompt) -> input (string)Read input from the user, using Hilbish’s line editor/input reader.
timeout(cb, time) -> @TimerExecuted the cb function after a period of time.
which(name) -> stringChecks if name is a valid command.
runnerMode(mode)Sets the execution/runner mode for interactive Hilbish.
run(cmd, streams)Runs cmd in Hilbish’s shell script interpreter.

Static module fields

verThe version of Hilbish
goVersionThe version of Go that Hilbish was compiled with
userUsername of the user
hostHostname of the machine
dataDirDirectory for Hilbish data files, including the docs and default modules
interactiveIs Hilbish in an interactive shell?
loginIs Hilbish the login shell?
vimModeCurrent Vim input mode of Hilbish (will be nil if not in Vim input mode)
exitCodeExit code of the last executed command

hilbish.alias(cmd, orig)

Sets an alias, with a name of cmd to another command.

Parameters

string cmd
Name of the alias

string orig
Command that will be aliased

Example @@ -105,34 +105,13 @@ interfaces and functions which directly relate to shell functionality.

5-- prompt: user@hostname: ~/directory $


hilbish.read(prompt) -> input (string)

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.

Parameters -

string prompt?
Text to print before input, can be empty.


hilbish.run(cmd, streams) -> exitCode (number), stdout (string), stderr (string) -

Runs cmd in Hilbish’s shell script interpreter.
The streams parameter specifies the output and input streams the command should use.
For example, to write command output to a sink.
As a table, the caller can directly specify the standard output, error, and input
streams of the command with the table keys out, err, and input respectively.
As a boolean, it specifies whether the command should use standard output or return its output streams.

Parameters -

string cmd

table|boolean streams

Example -
 1
- 2// This code is the same as `ls -l | wc -l`
- 3local fs = require 'fs'
- 4local pr, pw = fs.pipe()
- 5hilbish.run('ls -l', {
- 6	stdout = pw,
- 7	stderr = pw,
- 8})
- 9
-10pw:close()
-11
-12hilbish.run('wc -l', {
-13	stdin = pr
-14})
-

hilbish.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.
Read about runner mode -for more information.

Parameters -

string|function mode


hilbish.timeout(cb, time) -> Timer -

Executed the cb function after a period of time.
This creates a Timer that starts ticking immediately.

Parameters -

function cb

number time
Time to run in milliseconds.


hilbish.which(name) -> string -

Checks if name is a valid command.
Will return the path of the binary, or a basename if it’s a commander.

Parameters -

string name

Types +

string prompt?
Text to print before input, can be empty.


hilbish.timeout(cb, time) -> Timer +

Executed the cb function after a period of time.
This creates a Timer that starts ticking immediately.

Parameters +

function cb

number time
Time to run in milliseconds.


hilbish.which(name) -> string +

Checks if name is a valid command.
Will return the path of the binary, or a basename if it’s a commander.

Parameters +

string name

Types


Sink -

A sink is a structure that has input and/or output to/from -a desination.

Methods +

A sink is a structure that has input and/or output to/from a desination.

Methods

autoFlush(auto)

Sets/toggles the option of automatically flushing output. A call with no argument will toggle the value.

flush() @@ -140,4 +119,34 @@ A call with no argument will toggle the value.

flu

Reads a liine of input from the sink.

readAll() -> string

Reads all input from the sink.

write(str)

Writes data to a sink.

writeln(str) -

Writes data to a sink with a newline at the end.

\ No newline at end of file +

Writes data to a sink with a newline at the end.


hilbish.run(cmd, streams) +

Runs cmd in Hilbish’s shell script interpreter. +The streams parameter specifies the output and input streams the command should use. +For example, to write command output to a sink. +As a table, the caller can directly specify the standard output, error, and input +streams of the command with the table keys out, err, and input respectively. +As a boolean, it specifies whether the command should use standard output or return its output streams.

Parameters +

cmd string

streams table|boolean

Example +
 1-- This code is the same as `ls -l | wc -l`
+ 2local fs = require 'fs'
+ 3local pr, pw = fs.pipe()
+ 4hilbish.run('ls -l', {
+ 5	stdout = pw,
+ 6	stderr = pw,
+ 7})
+ 8pw:close()
+ 9hilbish.run('wc -l', {
+10	stdin = pr
+11})
+

hilbish.runnerMode(mode) +

Sets the execution/runner mode for interactive Hilbish. +NOTE: This function is deprecated and will be removed in 3.0 +Use hilbish.runner.setCurrent instead. +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. +Read about runner mode +for more information.

Parameters +

mode string|function

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/hilbish/index.xml b/versions/midnight-edition/docs/api/hilbish/index.xml index 23f5720b..f8b81e05 100644 --- a/versions/midnight-edition/docs/api/hilbish/index.xml +++ b/versions/midnight-edition/docs/api/hilbish/index.xml @@ -1,10 +1,10 @@ -Module hilbish on Hilbishhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/Recent content in Module hilbish on HilbishHugo -- gohugo.ioen-usModule hilbish.aliaseshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Introduction The alias interface deals with all command aliases in Hilbish. +Module hilbish on Hilbishhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/Recent content in Module hilbish on HilbishHugo -- gohugo.ioen-usModule hilbish.abbrhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/Introduction The abbr module manages Hilbish abbreviations. These are words that can be replaced with longer command line strings when entered. As an example, git push can be abbreviated to gp. When the user types gp into the command line, after hitting space or enter, it will expand to git push. Abbreviations can be used as an alternative to aliases. They are saved entirely in the history Instead of the aliased form of the same command.Module hilbish.aliaseshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Introduction The alias interface deals with all command aliases in Hilbish. Functions add(alias, cmd) This is an alias (ha) for the hilbish.alias function. delete(name) Removes an alias. list() -&gt; table[string, string] Get a table of all aliases, with string keys as the alias and the value as the command. resolve(alias) -&gt; string? Resolves an alias to its original command. Will thrown an error if the alias doesn&rsquo;t exist. hilbish.aliases.add(alias, cmd) This is an alias (ha) for the hilbish.Module hilbish.completionhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.completion/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.completion/Introduction The completions interface deals with tab completions. Functions bins(query, ctx, fields) -&gt; entries (table), prefix (string) Return binaries/executables based on the provided parameters. call(name, query, ctx, fields) -&gt; completionGroups (table), prefix (string) Calls a completer function. This is mainly used to call a command completer, which will have a name files(query, ctx, fields) -&gt; entries (table), prefix (string) Returns file matches based on the provided parameters. handler(line, pos) This function contains the general completion handler for Hilbish.Module hilbish.editorhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.editor/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.editor/Introduction The hilbish.editor interface provides functions to directly interact with the line editor in use. -Functions getLine() -&gt; string Returns the current input line. getVimRegister(register) -&gt; string Returns the text that is at the register. insert(text) Inserts text into the Hilbish command line. getChar() -&gt; string Reads a keystroke from the user. This is in a format of something like Ctrl-L. setVimRegister(register, text) Sets the vim register at register to hold the passed text.Module hilbish.historyhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Introduction The history interface deals with command history. This includes the ability to override functions to change the main method of saving history. +Functions deleteByAmount(amount) Deletes characters in the line by the given amount. getLine() -&gt; string Returns the current input line. getVimRegister(register) -&gt; string Returns the text that is at the register. insert(text) Inserts text into the Hilbish command line. getChar() -&gt; string Reads a keystroke from the user. This is in a format of something like Ctrl-L.Module hilbish.historyhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Introduction The history interface deals with command history. This includes the ability to override functions to change the main method of saving history. Functions add(cmd) Adds a command to the history. all() -&gt; table Retrieves all history as a table. clear() Deletes all commands from the history. get(index) Retrieves a command from the history based on the index. size() -&gt; number Returns the amount of commands in the history. hilbish.Module hilbish.jobshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/Introduction 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. -Functions add(cmdstr, args, execPath) Creates a new job. This function does not run the job. This function is intended to be all() -&gt; table[@Job] Returns a table of all job objects. disown(id) Disowns a job. This simply deletes it from the list of jobs without stopping it.Module hilbish.modulehttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Introduction 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 in Lua for any reason. +Functions add(cmdstr, args, execPath) Creates a new job. This function does not run the job. This function is intended to be all() -&gt; table[@Job] Returns a table of all job objects. disown(id) Disowns a job. This simply deletes it from the list of jobs without stopping it.Module hilbish.messageshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.messages/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.messages/Introduction The messages interface defines a way for Hilbish-integrated commands, user config and other tasks to send notifications to alert the user.z The hilbish.message type is a table with the following keys: title (string): A title for the message notification. text (string): The contents of the message. channel (string): States the origin of the message, hilbish.* is reserved for Hilbish tasks. summary (string): A short summary of the text. icon (string): Unicode (preferably standard emoji) icon for the message notification read (boolean): Whether the full message has been read or not.Module hilbish.modulehttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Introduction 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 in Lua for any reason. Note that you don&rsquo;t ever need to use the load function that is here as modules can be loaded with a require call like Lua C modules, and the search paths can be changed with the paths property here.Module hilbish.oshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.os/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.os/ Introduction Provides simple text information properties about the current operating system. This mainly includes the name and version. Static module fields family Family name of the current OS name Pretty name of the current OS version Version of the current OSModule hilbish.runnerhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.runner/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.runner/Introduction 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 language or script of their choosing. A good example is using it to write command in Fennel. Runners are functions that evaluate user input. The default runners in Hilbish can run shell script and Lua code. diff --git a/versions/midnight-edition/docs/api/index.html b/versions/midnight-edition/docs/api/index.html index b809db8e..f5c13e80 100644 --- a/versions/midnight-edition/docs/api/index.html +++ b/versions/midnight-edition/docs/api/index.html @@ -1,5 +1,5 @@ API — Hilbish

API

Welcome to the API documentation for Hilbish. This documents Lua functions +

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/index.xml b/versions/midnight-edition/docs/api/index.xml index 3b95dbba..015e59a9 100644 --- a/versions/midnight-edition/docs/api/index.xml +++ b/versions/midnight-edition/docs/api/index.xml @@ -1,6 +1,10 @@ API on Hilbishhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/Recent content in API on HilbishHugo -- gohugo.ioen-usModule baithttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/bait/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/bait/Introduction Bait is the event emitter for Hilbish. Much like Node.js and its events system, many actions in Hilbish emit events. Unlike Node.js, Hilbish events are global. So make sure to pick a unique name! Usage of the Bait module consists of userstanding event-driven architecture, but it&rsquo;s pretty simple: If you want to act on a certain event, you can catch it. You can act on events via callback functions.Module commanderhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/commander/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/commander/Introduction Commander is the library which handles Hilbish commands. This makes the user able to add Lua-written commands to their shell without making a separate script in a bin folder. Instead, you may simply use the Commander library in your Hilbish config. 1local commander = require &#39;commander&#39; 2 3commander.register(&#39;hello&#39;, function(args, sinks) 4 sinks.out:writeln &#39;Hello world!&#39; 5end) In this example, a command with the name of hello is created that will print Hello world!Module fshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/Introduction The fs module provides filesystem functions to Hilbish. While Lua&rsquo;s standard library has some I/O functions, they&rsquo;re missing a lot of the basics. The fs library offers more functions and will work on any operating system Hilbish does. -Functions abs(path) -&gt; string Returns an absolute version of the path. basename(path) -&gt; string Returns the &ldquo;basename,&rdquo; or the last part of the provided path. If path is empty, cd(dir) Changes Hilbish&rsquo;s directory to dir.Module terminalhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Introduction The terminal library is a simple and lower level library for certain terminal interactions. +Functions abs(path) -&gt; string Returns an absolute version of the path. basename(path) -&gt; string Returns the &ldquo;basename,&rdquo; or the last part of the provided path. If path is empty, cd(dir) Changes Hilbish&rsquo;s directory to dir.Module snailhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/snail/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/snail/Introduction The snail library houses Hilbish&rsquo;s Lua wrapper of its shell script interpreter. It&rsquo;s not very useful other than running shell scripts, which can be done with other Hilbish functions. +Functions new() -&gt; @Snail Creates a new Snail instance. snail.new() -> Snail Creates a new Snail instance. +Parameters This function has no parameters. +Types Snail A Snail is a shell script interpreter instance. +Methods dir(path) Changes the directory of the snail instance.Module terminalhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Introduction The terminal library is a simple and lower level library for certain terminal interactions. Functions restoreState() Restores the last saved state of the terminal saveState() Saves the current state of the terminal. setRaw() Puts the terminal into raw mode. size() Gets the dimensions of the terminal. Returns a table with width and height terminal.restoreState() Restores the last saved state of the terminal Parameters This function has no parameters. \ No newline at end of file diff --git a/versions/midnight-edition/docs/api/snail/index.html b/versions/midnight-edition/docs/api/snail/index.html new file mode 100644 index 00000000..f3382100 --- /dev/null +++ b/versions/midnight-edition/docs/api/snail/index.html @@ -0,0 +1,17 @@ +Module snail — Hilbish +

Module snail

shell script interpreter library

Introduction +

The snail library houses Hilbish’s Lua wrapper of its shell script interpreter. +It’s not very useful other than running shell scripts, which can be done with other +Hilbish functions.

Functions +

new() -> @SnailCreates a new Snail instance.

snail.new() -> Snail +

Creates a new Snail instance.

Parameters +

This function has no parameters.

Types +


Snail +

A Snail is a shell script interpreter instance.

Methods +

dir(path) +

Changes the directory of the snail instance. +The interpreter keeps its set directory even when the Hilbish process changes +directory, so this should be called on the hilbish.cd hook.

run(command, streams) +

Runs a shell command. Works the same as hilbish.run, but only accepts a table of streams.

\ No newline at end of file diff --git a/versions/midnight-edition/docs/api/terminal/index.html b/versions/midnight-edition/docs/api/terminal/index.html index f14e115e..cf679a25 100644 --- a/versions/midnight-edition/docs/api/terminal/index.html +++ b/versions/midnight-edition/docs/api/terminal/index.html @@ -1,7 +1,7 @@ Module terminal — Hilbish

Module terminal

low level terminal library

Introduction +

Module terminal

low level terminal library

Introduction

The terminal library is a simple and lower level library for certain terminal interactions.

Functions

restoreState()Restores the last saved state of the terminal
saveState()Saves the current state of the terminal.
setRaw()Puts the terminal into raw mode.
size()Gets the dimensions of the terminal. Returns a table with width and height

terminal.restoreState()

Restores the last saved state of the terminal

Parameters diff --git a/versions/midnight-edition/docs/completions/index.html b/versions/midnight-edition/docs/completions/index.html index 046817b2..5898efd3 100644 --- a/versions/midnight-edition/docs/completions/index.html +++ b/versions/midnight-edition/docs/completions/index.html @@ -1,7 +1,7 @@ Completions — Hilbish

Completions

Tab completion for commands.

Completions for commands can be created with the hilbish.complete +

Completions

Tab completion for commands.

Completions for commands can be created with the hilbish.complete function. See the link for how to use it.

To create completions for a command is simple. The callback will be passed 3 parameters:

table notification
The notification. The properties are defined in the link above.


hilbish.cd +

Sent when the current directory of the shell is changed (via interactive means.) +If you are implementing a custom command that changes the directory of the shell, +you must throw this hook manually for correctness.

Variables +

string path
Absolute path of the directory that was changed to.

string oldPath
Absolute path of the directory Hilbish was in.


hilbish.vimAction +

Sent when the user does a “vim action,” being something like yanking or pasting text. +See doc vim-mode actions for more info.

Variables +

string actionName
Absolute path of the directory that was changed to.

table args
Table of args relating to the Vim action.


\ No newline at end of file diff --git a/versions/midnight-edition/docs/hooks/index.html b/versions/midnight-edition/docs/hooks/index.html index 450b6cd8..855dc775 100644 --- a/versions/midnight-edition/docs/hooks/index.html +++ b/versions/midnight-edition/docs/hooks/index.html @@ -1,6 +1,6 @@ Signals — Hilbish

Signals

Signals are global events emitted with the Bait +

\ No newline at end of file diff --git a/versions/midnight-edition/docs/hooks/signal/index.html b/versions/midnight-edition/docs/hooks/signal/index.html index 0de368b0..08e7a291 100644 --- a/versions/midnight-edition/docs/hooks/signal/index.html +++ b/versions/midnight-edition/docs/hooks/signal/index.html @@ -15,7 +15,7 @@ signal.sigusr2 Thrown when SIGUSR2 is sent to Hilbish. Variables This signal returns no variables." name=description>

Signal

signal.sigint +

Signal

signal.sigint

Thrown when Hilbish receive the SIGINT signal, aka when Ctrl-C is pressed.

Variables

This signal returns no variables.


signal.resize diff --git a/versions/midnight-edition/docs/index.html b/versions/midnight-edition/docs/index.html index 09b84596..c567a418 100644 --- a/versions/midnight-edition/docs/index.html +++ b/versions/midnight-edition/docs/index.html @@ -3,7 +3,7 @@ Here documents some of the features of Hilbish and the Lua API." property="og:de Here documents some of the features of Hilbish and the Lua API." name=description>

Introduction

Last updated Dec 26, 2023

Hilbish is a hyper-extensible shell mainly intended for interactive use. +

Introduction

Last updated Dec 26, 2023

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.

\ No newline at end of file diff --git a/versions/midnight-edition/docs/lunacolors/index.html b/versions/midnight-edition/docs/lunacolors/index.html index b5b286a7..9c6ac6da 100644 --- a/versions/midnight-edition/docs/lunacolors/index.html +++ b/versions/midnight-edition/docs/lunacolors/index.html @@ -5,16 +5,15 @@ For simple usage, a single color or style is enough. For example, you can just u In other usage, you may want to use a format string instead of having multiple nested functions for different styles." name=description>

Lunacolors

Lunacolors is an ANSI color/styling library for Lua. It is included +

Lunacolors

Lunacolors is an ANSI color/styling library for Lua. It is included by default in standard Hilbish distributions to provide easy styling for things like prompts and text.

For simple usage, a single color or style is enough. For example, you can just use lunacolors.blue 'Hello world' and that’ll return blue text which you can print. This includes styles like bold, underline, etc.

In other usage, you may want to use a format string instead of having multiple nested functions for different styles. This is where the format -function comes in. You can used named keywords to style a section of text.

The list of arguments are: -Colors:

  • black
  • red
  • green
  • yellow
  • blue
  • magenta
  • cyan
  • white -Styles:
  • bold
  • dim
  • italic
  • underline
  • invert

For the colors, there are background and bright variants. The background -color variants have a suffix of Bg and bright has a prefix of bright. -Note that appropriate camel casing has to be applied to them. So bright -blue would be brightBlue and background cyan would be cyanBg.

\ No newline at end of file +function comes in. You can used named keywords to style a section of text.

The list of arguments are:
Colors:

  • black
  • red
  • green
  • yellow
  • blue
  • magenta
  • cyan
  • white

Styles:

  • reset
  • bold
  • dim
  • italic
  • underline
  • invert

For the colors, there are background and bright variants. Background color +variants have a Bg suffix, while bright variants use the bright prefix. +These can also be combined. Note that appropriate camel casing must be applied. +For example, bright blue would be written as brightBlue, a cyan background as +cyanBg, and combining them would result in brightBlueBg.

\ No newline at end of file diff --git a/versions/midnight-edition/docs/nature/dirs/index.html b/versions/midnight-edition/docs/nature/dirs/index.html index 03b88350..268cbb74 100644 --- a/versions/midnight-edition/docs/nature/dirs/index.html +++ b/versions/midnight-edition/docs/nature/dirs/index.html @@ -1,14 +1,18 @@ -Module dirs — Hilbish +Module dirs — Hilbish

Module dirs

No description.


dirs.setOld(d) -

Sets the old directory string.

Parameters -

d string


dirs.push() -

Add d to the recent directories list.

Parameters -

This function has no parameters.


dirs.peak(num) -

Look at num amount of recent directories, starting from the latest.

Parameters -

num number


dirs.pop(num) -

Remove the specified amount of dirs from the recent directories list.

Parameters -

num number


dirs.recent(idx) -

Get entry from recent directories list based on index.

Parameters -

idx number

\ No newline at end of file +

Module dirs

internal directory management

Introduction +

The dirs module defines a small set of functions to store and manage +directories.

Functions +

setOld(d)Sets the old directory string.
recent(idx)Get entry from recent directories list based on index.
push(dir)Add dir to the recent directories list.
pop(num)Remove the specified amount of dirs from the recent directories list.
peak(num)Look at num amount of recent directories, starting from the latest.

dirs.peak(num) +

Look at num amount of recent directories, starting from the latest. +This returns a table of recent directories, up to the num amount.

Parameters +

num number


dirs.pop(num) +

Remove the specified amount of dirs from the recent directories list.

Parameters +

num number


dirs.push(dir) +

Add dir to the recent directories list.

Parameters +

dir string


dirs.recent(idx) +

Get entry from recent directories list based on index.

Parameters +

idx number


dirs.setOld(d) +

Sets the old directory string.

Parameters +

d string

\ No newline at end of file diff --git a/versions/midnight-edition/docs/nature/doc/index.html b/versions/midnight-edition/docs/nature/doc/index.html new file mode 100644 index 00000000..cc9ec625 --- /dev/null +++ b/versions/midnight-edition/docs/nature/doc/index.html @@ -0,0 +1,18 @@ +Module doc — Hilbish +

Module doc

command-line doc rendering

Introduction +

The doc module contains a small set of functions +used by the Greenhouse pager to render parts of the documentation pages. +This is only documented for the sake of it. It’s only intended use +is by the Greenhouse pager.

Functions +

renderInfoBlock(type, text)Renders an info block. An info block is a block of text with
renderCodeBlock(text)Assembles and renders a code block. This returns
highlight(text)Performs basic Lua code highlighting.

doc.highlight(text) +

Performs basic Lua code highlighting.

Parameters +

text string
Code/text to do highlighting on.


doc.renderCodeBlock(text) +

Assembles and renders a code block. This returns +the supplied text based on the number of command line columns, +and styles it to resemble a code block.

Parameters +

text string


doc.renderInfoBlock(type, text) +

Renders an info block. An info block is a block of text with +an icon and styled text block.

Parameters +

type string
Type of info block. The only one specially styled is the warning.

text string

\ No newline at end of file diff --git a/versions/midnight-edition/docs/nature/index.html b/versions/midnight-edition/docs/nature/index.html index 59b15dc7..9e0155f8 100644 --- a/versions/midnight-edition/docs/nature/index.html +++ b/versions/midnight-edition/docs/nature/index.html @@ -5,7 +5,7 @@ Hilbish’s Lua core module is called nature. It runs after Hilbish’s Nature Modules Currently, nature provides 1 intended public module: nature.dirs. It is a simple API for managing recent directories and old current working directory." name=description>

Nature

A bit after creation, we have the outside nature. Little plants, seeds, +

Nature

A bit after creation, we have the outside nature. Little plants, seeds, growing to their final phase: a full plant. A lot of Hilbish itself is written in Go, but there are parts made in Lua, being most builtins (doc, cd, cdr), completions, and other things.

Hilbish’s Lua core module is called nature. diff --git a/versions/midnight-edition/docs/nature/index.xml b/versions/midnight-edition/docs/nature/index.xml index 3fcb6e85..86880a37 100644 --- a/versions/midnight-edition/docs/nature/index.xml +++ b/versions/midnight-edition/docs/nature/index.xml @@ -1,10 +1,3 @@ -Nature on Hilbishhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/Recent content in Nature on HilbishHugo -- gohugo.ioen-usModule dirshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/dirs.setOld(d) Sets the old directory string. -Parameters d string -dirs.push() Add d to the recent directories list. -Parameters This function has no parameters. -dirs.peak(num) Look at num amount of recent directories, starting from the latest. -Parameters num number -dirs.pop(num) Remove the specified amount of dirs from the recent directories list. -Parameters num number -dirs.recent(idx) Get entry from recent directories list based on index. -Parameters idx number \ No newline at end of file +Nature on Hilbishhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/Recent content in Nature on HilbishHugo -- gohugo.ioen-usModule dirshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/Introduction The dirs module defines a small set of functions to store and manage directories. +Functions setOld(d) Sets the old directory string. recent(idx) Get entry from recent directories list based on index. push(dir) Add dir to the recent directories list. pop(num) Remove the specified amount of dirs from the recent directories list. peak(num) Look at num amount of recent directories, starting from the latest. dirs.peak(num) Look at num amount of recent directories, starting from the latest.Module dochttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/doc/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/doc/Introduction The doc module contains a small set of functions used by the Greenhouse pager to render parts of the documentation pages. This is only documented for the sake of it. It&rsquo;s only intended use is by the Greenhouse pager. +Functions renderInfoBlock(type, text) Renders an info block. An info block is a block of text with renderCodeBlock(text) Assembles and renders a code block. This returns highlight(text) Performs basic Lua code highlighting. \ No newline at end of file diff --git a/versions/midnight-edition/docs/vim-mode/actions/index.html b/versions/midnight-edition/docs/vim-mode/actions/index.html index 3f84de7d..a501f8e1 100644 --- a/versions/midnight-edition/docs/vim-mode/actions/index.html +++ b/versions/midnight-edition/docs/vim-mode/actions/index.html @@ -5,7 +5,7 @@ The hilbish.vimAction hook is thrown whenever a Vim action occurs. It passes 2 a Here is documentation for what the table of args will hold for an appropriate Vim action." name=description>

Actions

Vim actions are essentially just when a user uses a Vim keybind. +

Actions

Vim actions are essentially just when a user uses a Vim keybind. Things like yanking and pasting are Vim actions. This is not an “offical Vim thing,” just a Hilbish thing.

The hilbish.vimAction hook is thrown whenever a Vim action occurs. It passes 2 arguments: the action name, and an array (table) of args diff --git a/versions/midnight-edition/docs/vim-mode/index.html b/versions/midnight-edition/docs/vim-mode/index.html index b055a393..701b120c 100644 --- a/versions/midnight-edition/docs/vim-mode/index.html +++ b/versions/midnight-edition/docs/vim-mode/index.html @@ -3,5 +3,5 @@ This is documentation for everything relating to it." property="og:description"> This is documentation for everything relating to it." name=description>

Vim Mode

Hilbish has a Vim binding input mode accessible for use. +

\ No newline at end of file diff --git a/versions/midnight-edition/index.xml b/versions/midnight-edition/index.xml index f27c33c9..c39b35b7 100644 --- a/versions/midnight-edition/index.xml +++ b/versions/midnight-edition/index.xml @@ -45,23 +45,16 @@ hilbish.cancel Sent when the user cancels their command input with Ctrl-CModule baithttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/bait/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/bait/Introduction Bait is the event emitter for Hilbish. Much like Node.js and its events system, many actions in Hilbish emit events. Unlike Node.js, Hilbish events are global. So make sure to pick a unique name! Usage of the Bait module consists of userstanding event-driven architecture, but it&rsquo;s pretty simple: If you want to act on a certain event, you can catch it. You can act on events via callback functions.Module commanderhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/commander/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/commander/Introduction Commander is the library which handles Hilbish commands. This makes the user able to add Lua-written commands to their shell without making a separate script in a bin folder. Instead, you may simply use the Commander library in your Hilbish config. -1local commander = require &#39;commander&#39; 2 3commander.register(&#39;hello&#39;, function(args, sinks) 4 sinks.out:writeln &#39;Hello world!&#39; 5end) In this example, a command with the name of hello is created that will print Hello world!Module dirshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/dirs.setOld(d) Sets the old directory string. -Parameters d string -dirs.push() Add d to the recent directories list. -Parameters This function has no parameters. -dirs.peak(num) Look at num amount of recent directories, starting from the latest. -Parameters num number -dirs.pop(num) Remove the specified amount of dirs from the recent directories list. -Parameters num number -dirs.recent(idx) Get entry from recent directories list based on index. -Parameters idx numberModule fshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/Introduction The fs module provides filesystem functions to Hilbish. While Lua&rsquo;s standard library has some I/O functions, they&rsquo;re missing a lot of the basics. The fs library offers more functions and will work on any operating system Hilbish does. -Functions abs(path) -&gt; string Returns an absolute version of the path. basename(path) -&gt; string Returns the &ldquo;basename,&rdquo; or the last part of the provided path. If path is empty, cd(dir) Changes Hilbish&rsquo;s directory to dir.Module hilbish.aliaseshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Introduction The alias interface deals with all command aliases in Hilbish. +1local commander = require &#39;commander&#39; 2 3commander.register(&#39;hello&#39;, function(args, sinks) 4 sinks.out:writeln &#39;Hello world!&#39; 5end) In this example, a command with the name of hello is created that will print Hello world!Module dirshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/Introduction The dirs module defines a small set of functions to store and manage directories. +Functions setOld(d) Sets the old directory string. recent(idx) Get entry from recent directories list based on index. push(dir) Add dir to the recent directories list. pop(num) Remove the specified amount of dirs from the recent directories list. peak(num) Look at num amount of recent directories, starting from the latest. dirs.peak(num) Look at num amount of recent directories, starting from the latest.Module dochttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/doc/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/doc/Introduction The doc module contains a small set of functions used by the Greenhouse pager to render parts of the documentation pages. This is only documented for the sake of it. It&rsquo;s only intended use is by the Greenhouse pager. +Functions renderInfoBlock(type, text) Renders an info block. An info block is a block of text with renderCodeBlock(text) Assembles and renders a code block. This returns highlight(text) Performs basic Lua code highlighting.Module fshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/Introduction The fs module provides filesystem functions to Hilbish. While Lua&rsquo;s standard library has some I/O functions, they&rsquo;re missing a lot of the basics. The fs library offers more functions and will work on any operating system Hilbish does. +Functions abs(path) -&gt; string Returns an absolute version of the path. basename(path) -&gt; string Returns the &ldquo;basename,&rdquo; or the last part of the provided path. If path is empty, cd(dir) Changes Hilbish&rsquo;s directory to dir.Module hilbish.abbrhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/Introduction The abbr module manages Hilbish abbreviations. These are words that can be replaced with longer command line strings when entered. As an example, git push can be abbreviated to gp. When the user types gp into the command line, after hitting space or enter, it will expand to git push. Abbreviations can be used as an alternative to aliases. They are saved entirely in the history Instead of the aliased form of the same command.Module hilbish.aliaseshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/Introduction The alias interface deals with all command aliases in Hilbish. Functions add(alias, cmd) This is an alias (ha) for the hilbish.alias function. delete(name) Removes an alias. list() -&gt; table[string, string] Get a table of all aliases, with string keys as the alias and the value as the command. resolve(alias) -&gt; string? Resolves an alias to its original command. Will thrown an error if the alias doesn&rsquo;t exist. hilbish.aliases.add(alias, cmd) This is an alias (ha) for the hilbish.Module hilbish.completionhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.completion/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.completion/Introduction The completions interface deals with tab completions. Functions bins(query, ctx, fields) -&gt; entries (table), prefix (string) Return binaries/executables based on the provided parameters. call(name, query, ctx, fields) -&gt; completionGroups (table), prefix (string) Calls a completer function. This is mainly used to call a command completer, which will have a name files(query, ctx, fields) -&gt; entries (table), prefix (string) Returns file matches based on the provided parameters. handler(line, pos) This function contains the general completion handler for Hilbish.Module hilbish.editorhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.editor/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.editor/Introduction The hilbish.editor interface provides functions to directly interact with the line editor in use. -Functions getLine() -&gt; string Returns the current input line. getVimRegister(register) -&gt; string Returns the text that is at the register. insert(text) Inserts text into the Hilbish command line. getChar() -&gt; string Reads a keystroke from the user. This is in a format of something like Ctrl-L. setVimRegister(register, text) Sets the vim register at register to hold the passed text.Module hilbish.historyhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Introduction The history interface deals with command history. This includes the ability to override functions to change the main method of saving history. +Functions deleteByAmount(amount) Deletes characters in the line by the given amount. getLine() -&gt; string Returns the current input line. getVimRegister(register) -&gt; string Returns the text that is at the register. insert(text) Inserts text into the Hilbish command line. getChar() -&gt; string Reads a keystroke from the user. This is in a format of something like Ctrl-L.Module hilbish.historyhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/Introduction The history interface deals with command history. This includes the ability to override functions to change the main method of saving history. Functions add(cmd) Adds a command to the history. all() -&gt; table Retrieves all history as a table. clear() Deletes all commands from the history. get(index) Retrieves a command from the history based on the index. size() -&gt; number Returns the amount of commands in the history. hilbish.Module hilbish.jobshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/Introduction 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. -Functions add(cmdstr, args, execPath) Creates a new job. This function does not run the job. This function is intended to be all() -&gt; table[@Job] Returns a table of all job objects. disown(id) Disowns a job. This simply deletes it from the list of jobs without stopping it.Module hilbish.modulehttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Introduction 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 in Lua for any reason. +Functions add(cmdstr, args, execPath) Creates a new job. This function does not run the job. This function is intended to be all() -&gt; table[@Job] Returns a table of all job objects. disown(id) Disowns a job. This simply deletes it from the list of jobs without stopping it.Module hilbish.messageshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.messages/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.messages/Introduction The messages interface defines a way for Hilbish-integrated commands, user config and other tasks to send notifications to alert the user.z The hilbish.message type is a table with the following keys: title (string): A title for the message notification. text (string): The contents of the message. channel (string): States the origin of the message, hilbish.* is reserved for Hilbish tasks. summary (string): A short summary of the text. icon (string): Unicode (preferably standard emoji) icon for the message notification read (boolean): Whether the full message has been read or not.Module hilbish.modulehttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/Introduction 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 in Lua for any reason. Note that you don&rsquo;t ever need to use the load function that is here as modules can be loaded with a require call like Lua C modules, and the search paths can be changed with the paths property here.Module hilbish.oshttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.os/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.os/ Introduction Provides simple text information properties about the current operating system. This mainly includes the name and version. Static module fields family Family name of the current OS name Pretty name of the current OS version Version of the current OSModule hilbish.runnerhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.runner/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.runner/Introduction 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 language or script of their choosing. A good example is using it to write command in Fennel. Runners are functions that evaluate user input. The default runners in Hilbish can run shell script and Lua code. @@ -69,7 +62,11 @@ A runner is passed the input and has to return a table with these values.Module hilbish.userDirhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/ Introduction This interface just contains properties to know about certain user directories. It is equivalent to XDG on Linux and gets the user&rsquo;s preferred directories for configs and data. -Static module fields config The user&rsquo;s config directory data The user&rsquo;s directory for program dataModule terminalhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Introduction The terminal library is a simple and lower level library for certain terminal interactions. +Static module fields config The user&rsquo;s config directory data The user&rsquo;s directory for program dataModule snailhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/snail/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/snail/Introduction The snail library houses Hilbish&rsquo;s Lua wrapper of its shell script interpreter. It&rsquo;s not very useful other than running shell scripts, which can be done with other Hilbish functions. +Functions new() -&gt; @Snail Creates a new Snail instance. snail.new() -> Snail Creates a new Snail instance. +Parameters This function has no parameters. +Types Snail A Snail is a shell script interpreter instance. +Methods dir(path) Changes the directory of the snail instance.Module terminalhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/Introduction The terminal library is a simple and lower level library for certain terminal interactions. Functions restoreState() Restores the last saved state of the terminal saveState() Saves the current state of the terminal. setRaw() Puts the terminal into raw mode. size() Gets the dimensions of the terminal. Returns a table with width and height terminal.restoreState() Restores the last saved state of the terminal Parameters This function has no parameters.Notificationhttps://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/notifications/Mon, 01 Jan 0001 00:00:00 +0000https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/notifications/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: diff --git a/versions/midnight-edition/sitemap.xml b/versions/midnight-edition/sitemap.xml index c19b55c2..4d69ba69 100644 --- a/versions/midnight-edition/sitemap.xml +++ b/versions/midnight-edition/sitemap.xml @@ -1 +1 @@ -https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/vim-mode/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/vim-mode/actions/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/lunacolors/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/faq/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/getting-started/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/2024-07-20T10:14:16-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.3-release/2024-07-20T10:14:16-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.2-release/2023-12-26T00:13:50-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/improving-this-website/2023-04-14T00:04:52-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.1.2-release/2023-04-10T12:38:30-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.1.1-release/2023-04-01T18:16:13-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.1-release/2023-02-10T17:11:44-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.0-release/2022-12-28T22:27:05-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/2023-12-26T00:13:35-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/job/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/jobs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/timers/https://rosettea.github.io/Hilbish/versions/midnight-edition/categories/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/command/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/completions/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/hilbish/https://rosettea.github.io/Hilbish/versions/midnight-edition/install/2023-04-14T00:04:52-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/bait/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/commander/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.completion/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.editor/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.os/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.runner/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.timers/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/notifications/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/opts/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/runner-mode/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/signal/https://rosettea.github.io/Hilbish/versions/midnight-edition/tags/https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/welcome/2022-12-28T22:27:05-04:00 \ No newline at end of file +https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/vim-mode/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/vim-mode/actions/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/lunacolors/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/faq/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/getting-started/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/2024-07-20T10:14:16-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.3-release/2024-07-20T10:14:16-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.2-release/2023-12-26T00:13:50-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/improving-this-website/2023-04-14T00:04:52-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.1.2-release/2023-04-10T12:38:30-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.1.1-release/2023-04-01T18:16:13-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.1-release/2023-02-10T17:11:44-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/v2.0-release/2022-12-28T22:27:05-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/2023-12-26T00:13:35-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/job/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/jobs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/timers/https://rosettea.github.io/Hilbish/versions/midnight-edition/categories/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/command/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/completions/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/hilbish/https://rosettea.github.io/Hilbish/versions/midnight-edition/install/2023-04-14T00:04:52-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/bait/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/commander/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/dirs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/nature/doc/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/fs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.abbr/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.aliases/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.completion/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.editor/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.history/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.jobs/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.messages/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.module/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.os/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.runner/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.timers/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/hilbish/hilbish.userdir/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/snail/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/api/terminal/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/notifications/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/opts/https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/features/runner-mode/2023-12-25T23:08:29-04:00https://rosettea.github.io/Hilbish/versions/midnight-edition/docs/hooks/signal/https://rosettea.github.io/Hilbish/versions/midnight-edition/tags/https://rosettea.github.io/Hilbish/versions/midnight-edition/blog/welcome/2022-12-28T22:27:05-04:00 \ No newline at end of file