Select Git revision
-
Kevin Lyda authored
Also fixed editor colours.
Kevin Lyda authoredAlso fixed editor colours.
command.go 61.83 KiB
// Package repl implements the main event loop.
package repl
import "git.lyda.ie/kevin/bulletin/dclish"
var commands = dclish.Commands{
"ADD": {
Description: `Adds a message to the specified folder. A file can be specified which
contains the message. Otherwise, BULLETIN will prompt for the text.
BULLETIN will ask for an expiration date and a header to contain the
topic of the message.
Format:
ADD [file-name]`,
MaxArgs: 1,
Action: ActionAdd,
Flags: dclish.Flags{
"/ALL": {
Description: ` This option is restricted to privileged users. It is used in
conjunction with the /BROADCAST qualifier. If specified, all terminals
are sent the message. Otherwise, only users are sent the message.`,
},
"/BELL": {
Description: ` This option is restricted to privileged users. It is used in
conjunction with the /BROADCAST qualifier. If specified, the bell is
rung on the terminals when the message is broadcasted.`,
},
"/BROADCAST": {
Description: ` This option is restricted to privileged users and SYSTEM folders. If
specified, a message is both stored and broadcasted to all users
logged in at the time. If the folder is remote, a message will be
broadcast on all nodes which are connected to that folder, unless
/LOCAL is specified. A node which does not have BULLCP running cannot
have a message broadcasted to it, (even though it is able to create a
remote folder).
See also /ALL and /BELL.`,
},
"/EDIT": {
Description: `/[NO]EDIT
Determines whether or not the editor is invoked to edit the message
you are adding. /EDIT is the default.`,
Default: "true",
},
"/EXPIRATION": {
Description: `/EXPIRATION=time
Specifies the time at which the message is to expire. Either absolute
time: dd-mmm-yyyy, or delta time: dddd can be used.`,
OptArg: true,
},
"/EXTRACT": {
Description: ` Specifies that the text of the previously read message should be
included at the beginning of the new message. The previous message
must be in the same folder. This qualifier is valid only when used
with /EDIT. The text is indented with > at the beginning of each line.
This can be suppressed with /NOINDENT.`,
},
"/FOLDER": {
Description: `/FOLDER=(foldername,[...])
Specifies the foldername into which the message is to be added. Does
not change the current selected folder.
You can specify logical names which translate to one or more folder
names. I.e. $ DEFINE ALL_FOLDERS "VAX1,VAX2,VAX3", and then specify
ALL_FOLDERS after /FOLDER=. Note that the quotation marks are required.`,
OptArg: true,
},