mirror of https://github.com/Hilbis/Hilbish
1.3 KiB
1.3 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
deregister(name)
Deregisters any command registered with name
register(name, cb)
Register a command with name
that runs cb
when ran