mirror of https://github.com/Hilbis/Hilbish
1.5 KiB
1.5 KiB
title | description | layout | menu | ||||
---|---|---|---|---|---|---|---|
Module commander | library for custom commands | doc |
|
Introduction
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, the Commander library exists. This is like a very simple wrapper that works with Hilbish for writing commands. Example:
local commander = require 'commander'
commander.register('hello', function(args, sinks)
sinks.out:writeln 'Hello world!'
end)
In this example, a command with the name of hello
is created
that will print Hello world!
to output. One question you may
have is: What is the sinks
parameter?
The sinks
parameter is a table with 3 keys: in
, out
,
and err
. The values of these is a Sink.
in
is the standard input. You can read from this sink to get user input. (This is currently unimplemented.)out
is standard output. This is usually where text meant for output should go.err
is standard error. This sink is for writing errors, as the name would suggest.
Functions
commander.deregister(name)
Deregisters any command registered with name
Parameters
This function has no parameters.
commander.register(name, cb)
Register a command with name
that runs cb
when ran
Parameters
This function has no parameters.