Skip to main content
Homepage
Explore
Search or go to…
/
Sign in
Explore
Primary navigation
Project
bulletin
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Collapse sidebar
Snippets
Groups
Projects
Show more breadcrumbs
Personal Projects
bulletin
Commits
59b058aa
Unverified
Commit
59b058aa
authored
6 months ago
by
Kevin Lyda
Browse files
Options
Downloads
Patches
Plain Diff
Enable abbreviated commands
parent
d850e500
Branches
Branches containing commit
Tags
Tags containing commit
No related merge requests found
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
dclish/dclish.go
+17
-3
17 additions, 3 deletions
dclish/dclish.go
repl/command.go
+241
-418
241 additions, 418 deletions
repl/command.go
repl/help.go
+18
-3
18 additions, 3 deletions
repl/help.go
with
276 additions
and
424 deletions
dclish/dclish.go
+
17
−
3
View file @
59b058aa
...
@@ -23,7 +23,6 @@ type Flags map[string]*Flag
...
@@ -23,7 +23,6 @@ type Flags map[string]*Flag
// Command contains the definition of a command, it's flags and subcommands.
// Command contains the definition of a command, it's flags and subcommands.
type
Command
struct
{
type
Command
struct
{
Flags
Flags
Flags
Flags
FlagOrder
[]
string
Args
[]
string
Args
[]
string
MaxArgs
int
MaxArgs
int
MinArgs
int
MinArgs
int
...
@@ -41,8 +40,23 @@ func (c Commands) ParseAndRun(line string) error {
...
@@ -41,8 +40,23 @@ func (c Commands) ParseAndRun(line string) error {
words
:=
strings
.
Fields
(
line
)
words
:=
strings
.
Fields
(
line
)
cmd
,
ok
:=
c
[
strings
.
ToUpper
(
words
[
0
])]
cmd
,
ok
:=
c
[
strings
.
ToUpper
(
words
[
0
])]
if
!
ok
{
if
!
ok
{
wordup
:=
strings
.
ToUpper
(
words
[
0
])
possibles
:=
[]
string
{}
for
word
:=
range
c
{
if
strings
.
HasPrefix
(
word
,
wordup
)
{
possibles
=
append
(
possibles
,
word
)
}
}
switch
len
(
possibles
)
{
case
0
:
fmt
.
Printf
(
"ERROR: Unknown command '%s'
\n
"
,
words
[
0
])
fmt
.
Printf
(
"ERROR: Unknown command '%s'
\n
"
,
words
[
0
])
return
nil
return
nil
case
1
:
cmd
=
c
[
possibles
[
0
]]
default
:
fmt
.
Printf
(
"ERROR: Ambiguous command '%s' (matches %s)
\n
"
,
words
[
0
],
possibles
)
return
nil
}
}
}
if
cmd
.
Action
==
nil
{
if
cmd
.
Action
==
nil
{
fmt
.
Printf
(
"ERROR: Command not implemented:
\n
%s
\n
"
,
cmd
.
Description
)
fmt
.
Printf
(
"ERROR: Command not implemented:
\n
%s
\n
"
,
cmd
.
Description
)
...
...
...
...
This diff is collapsed.
Click to expand it.
repl/command.go
+
241
−
418
View file @
59b058aa
...
@@ -11,20 +11,18 @@ BULLETIN will ask for an expiration date and a header to contain the
...
@@ -11,20 +11,18 @@ BULLETIN will ask for an expiration date and a header to contain the
topic of the message.
topic of the message.
Format:
Format:
ADD [file-name]
ADD [file-name]
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`This option is restricted to privileged users. It is used in conjunction
Description
:
`This option is restricted to privileged users. It is used in conjunction
with the /BROADCAST qualifier. If specified, all terminals are sent the
with the /BROADCAST qualifier. If specified, all terminals are sent the
message. Otherwise, only users are sent the message.
message. Otherwise, only users are sent the message.`
,
`
,
},
},
"/BELL"
:
{
"/BELL"
:
{
Description
:
`This option is restricted to privileged users. It is used in conjunction
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
with the /BROADCAST qualifier. If specified, the bell is rung on the
terminals when the message is broadcasted.
terminals when the message is broadcasted.`
,
`
,
},
},
"/BROADCAST"
:
{
"/BROADCAST"
:
{
Description
:
`This option is restricted to privileged users and SYSTEM folders. If
Description
:
`This option is restricted to privileged users and SYSTEM folders. If
...
@@ -34,38 +32,33 @@ all nodes which are connected to that folder, unless /LOCAL is specified.
...
@@ -34,38 +32,33 @@ all nodes which are connected to that folder, unless /LOCAL is specified.
A node which does not have BULLCP running cannot have a message
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).
broadcasted to it, (even though it is able to create a remote folder).
See also /ALL and /BELL.
See also /ALL and /BELL.`
,
`
,
},
},
"/CLUSTER"
:
{
"/CLUSTER"
:
{
Description
:
`/[NO]CLUSTER
Description
:
`/[NO]CLUSTER
This option specifies that broadcasted messages should be sent to all
This option specifies that broadcasted messages should be sent to all
nodes in the cluster. /CLUSTER is the default.
nodes in the cluster. /CLUSTER is the default.`
,
`
,
},
},
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`/[NO]EDIT
Description
:
`/[NO]EDIT
Determines whether or not the editor is invoked to edit the message
Determines whether or not the editor is invoked to edit the message
you are adding. /EDIT is the default if you have added /EDIT to your
you are adding. /EDIT is the default if you have added /EDIT to your
BULLETIN command line.
BULLETIN command line.`
,
`
,
},
},
"/EXPIRATION"
:
{
"/EXPIRATION"
:
{
Description
:
`/EXPIRATION=time
Description
:
`/EXPIRATION=time
Specifies the time at which the message is to expire. Either absolute
Specifies the time at which the message is to expire. Either absolute
time: [dd-mmm-yyyy] hh:mm:ss, or delta time: dddd [hh:mm:ss] can be
time: [dd-mmm-yyyy] hh:mm:ss, or delta time: dddd [hh:mm:ss] can be
used.
used.`
,
`
,
},
},
"/EXTRACT"
:
{
"/EXTRACT"
:
{
Description
:
`Specifies that the text of the previously read message should be included
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
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
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
text is indented with > at the beginning of each line. This can be
suppressed with /NOINDENT.
suppressed with /NOINDENT.`
,
`
,
},
},
"/FOLDER"
:
{
"/FOLDER"
:
{
Description
:
`/FOLDER=(foldername,[...])
Description
:
`/FOLDER=(foldername,[...])
...
@@ -88,13 +81,11 @@ ALL_FOLDERS after /FOLDER=. Note that the quotation marks are required.
...
@@ -88,13 +81,11 @@ ALL_FOLDERS after /FOLDER=. Note that the quotation marks are required.
When using /FOLDER for remote nodes, proxy logins are used to determine
When using /FOLDER for remote nodes, proxy logins are used to determine
if privileged options are allowed. If they are not allowed, the message
if privileged options are allowed. If they are not allowed, the message
will still be added, but without the privileged settings.
will still be added, but without the privileged settings.`
,
`
,
},
},
"/LOCAL"
:
{
"/LOCAL"
:
{
Description
:
`Specifies that when /BROADCAST is specified for a remote folder, the
Description
:
`Specifies that when /BROADCAST is specified for a remote folder, the
message is broadcasted ONLY on the local node.
message is broadcasted ONLY on the local node.`
,
`
,
},
},
"/NODES"
:
{
"/NODES"
:
{
Description
:
`/NODES=(nodes[,...])
Description
:
`/NODES=(nodes[,...])
...
@@ -112,30 +103,25 @@ more node names. I.e. $ DEFINE ALL_NODES "VAX1,VAX2,VAX3", and then
...
@@ -112,30 +103,25 @@ more node names. I.e. $ DEFINE ALL_NODES "VAX1,VAX2,VAX3", and then
specify /NODES=ALL_NODES. Note that the quotation marks are required.
specify /NODES=ALL_NODES. Note that the quotation marks are required.
NOTE: It is preferable to use /FOLDER instead of /NODE if possible,
NOTE: It is preferable to use /FOLDER instead of /NODE if possible,
since adding messages via /FOLDER is much quicker.
since adding messages via /FOLDER is much quicker.`
,
`
,
},
},
"/NOINDENT"
:
{
"/NOINDENT"
:
{
Description
:
`See /EXTRACT for information on this qualifier.
Description
:
`See /EXTRACT for information on this qualifier.`
,
`
,
},
},
"/NOSIGNATURE"
:
{
"/NOSIGNATURE"
:
{
Description
:
`Specifies to suppress the automatically appended signature, if one exists.
Description
:
`Specifies to suppress the automatically appended signature, if one exists.
Signatures are appended for postings to mailing lists and to responds.
Signatures are appended for postings to mailing lists and to responds.
See the help topic POST Signature_file for signature information.
See the help topic POST Signature_file for signature information.`
,
`
,
},
},
"/PERMANENT"
:
{
"/PERMANENT"
:
{
Description
:
`If specified, message will be a permanent message and will never expire.
Description
:
`If specified, message will be a permanent message and will never expire.
If an expiration limit is set, then permament is not allowed unless
If an expiration limit is set, then permament is not allowed unless
user has privileges.
user has privileges.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=description
Description
:
`/SUBJECT=description
Specifies the subject of the message to be added.
Specifies the subject of the message to be added.`
,
`
,
},
},
"/SHUTDOWN"
:
{
"/SHUTDOWN"
:
{
Description
:
`/SHUTDOWN[=nodename]
Description
:
`/SHUTDOWN[=nodename]
...
@@ -150,21 +136,18 @@ node reboots, you have the option of specifying that node name.
...
@@ -150,21 +136,18 @@ node reboots, you have the option of specifying that node name.
NOTE: If the folder is a remote folder, the message will be deleted
NOTE: If the folder is a remote folder, the message will be deleted
after the remote node reboots, not the node from which the message was
after the remote node reboots, not the node from which the message was
added. The nodename cannot be specified with a remote folder.
added. The nodename cannot be specified with a remote folder.`
,
`
,
},
},
"/SYSTEM"
:
{
"/SYSTEM"
:
{
Description
:
`This option is restricted to privileged users. If specified, message
Description
:
`This option is restricted to privileged users. If specified, message
is both saved in the folder and displayed in full as a system message
is both saved in the folder and displayed in full as a system message
when a user logs in. System messages should be as brief as possible to
when a user logs in. System messages should be as brief as possible to
avoid the possibility that system messages could scroll off the screen.
avoid the possibility that system messages could scroll off the screen.
This option is restricted to SYSTEM folders.
This option is restricted to SYSTEM folders.`
,
`
,
},
},
"/USERNAME"
:
{
"/USERNAME"
:
{
Description
:
`Specifies username to be used at remote DECNET nodes when adding messages
Description
:
`Specifies username to be used at remote DECNET nodes when adding messages
to DECNET nodes via the /NODE qualifier.
to DECNET nodes via the /NODE qualifier.`
,
`
,
},
},
},
},
},
},
...
@@ -181,15 +164,14 @@ to get back to the BULLETN subprocess you already created.
...
@@ -181,15 +164,14 @@ to get back to the BULLETN subprocess you already created.
Format:
Format:
ATTACH [/PARENT] [process-name]
ATTACH [/PARENT] [process-name]
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"Parameters"
:
{
"Parameters"
:
{
Description
:
`process-name
Description
:
`process-name
Indicates the name of the subprocess to which the connection is to
Indicates the name of the subprocess to which the connection is to
be made. Only the /PARENT qualifier or a process-name may be specified.
be made. Only the /PARENT qualifier or a process-name may be specified.
`
,
`
,
},
},
"Qualifiers"
:
{
"Qualifiers"
:
{
...
@@ -198,7 +180,6 @@ to get back to the BULLETN subprocess you already created.
...
@@ -198,7 +180,6 @@ to get back to the BULLETN subprocess you already created.
Allows you to attach to your process' parent process.
Allows you to attach to your process' parent process.
If there is no parent process an error message is printed.
If there is no parent process an error message is printed.
`
,
`
,
},
},
"Examples"
:
{
"Examples"
:
{
...
@@ -220,19 +201,16 @@ to get back to the BULLETN subprocess you already created.
...
@@ -220,19 +201,16 @@ to get back to the BULLETN subprocess you already created.
NOTE
NOTE
You always SPAWN a new process and ATTACH to a process that
You always SPAWN a new process and ATTACH to a process that
already exists.
already exists.`
,
`
,
},
},
},
},
},
},
"BACK"
:
{
"BACK"
:
{
Description
:
`Displays the message preceding the current message.
Description
:
`Displays the message preceding the current message.`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used to read the message. This is
Description
:
`Specifies that the editor is to be used to read the message. This is
useful for scanning a long message.
useful for scanning a long message.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
...
@@ -241,8 +219,7 @@ Specifies that if a message header exists, the header will be shown.
...
@@ -241,8 +219,7 @@ Specifies that if a message header exists, the header will be shown.
If /HEADER or /NOHEADER is specified, the setting will apply for all
If /HEADER or /NOHEADER is specified, the setting will apply for all
further reads in the selected folder. The default is /HEADER for non-
further reads in the selected folder. The default is /HEADER for non-
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
is set for the folder, it will change the default to be /HEADER.
is set for the folder, it will change the default to be /HEADER.`
,
`
,
},
},
},
},
},
},
...
@@ -252,8 +229,7 @@ all users. Users are notified upon logging in that new messages have
...
@@ -252,8 +229,7 @@ all users. Users are notified upon logging in that new messages have
been added, and what the topic of the messages are. Actual reading of
been added, and what the topic of the messages are. Actual reading of
the messages is optional. (See the command SET READNEW for info on
the messages is optional. (See the command SET READNEW for info on
automatic reading.) Messages are automatically deleted when their
automatic reading.) Messages are automatically deleted when their
expiration date has passed.
expiration date has passed.`
,
`
,
},
},
"CHANGE"
:
{
"CHANGE"
:
{
Description
:
`Replaces or modifies existing stored message. This is for changing part
Description
:
`Replaces or modifies existing stored message. This is for changing part
...
@@ -267,45 +243,39 @@ the text, the old message text will be extracted. This can be suppressed
...
@@ -267,45 +243,39 @@ the text, the old message text will be extracted. This can be suppressed
by the qualifier /NEW.
by the qualifier /NEW.
Format:
Format:
CHANGE [file-name]
CHANGE [file-name]
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Makes the changes to all the messages in the folder. Only the expiration
Description
:
`Makes the changes to all the messages in the folder. Only the expiration
date and message headers can be changed if this qualifier is specified.
date and message headers can be changed if this qualifier is specified.`
,
`
,
},
},
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`/[NO]EDIT
Description
:
`/[NO]EDIT
Determines whether or not the editor is invoked to edit the message
Determines whether or not the editor is invoked to edit the message
you are replacing. The old message text is read into the editor unless
you are replacing. The old message text is read into the editor unless
a file-name or /NEW is specified. /EDIT is the default if you have
a file-name or /NEW is specified. /EDIT is the default if you have
added /EDIT to your BULLETIN command line.
added /EDIT to your BULLETIN command line.`
,
`
,
},
},
"/EXPIRATION"
:
{
"/EXPIRATION"
:
{
Description
:
`/EXPIRATION[=time]
Description
:
`/EXPIRATION[=time]
Specifies the time at which the message is to expire. Either absolute
Specifies the time at which the message is to expire. Either absolute
time: [dd-mmm-yyyy] hh:mm:ss, or delta time: dddd [hh:mm:ss] can be
time: [dd-mmm-yyyy] hh:mm:ss, or delta time: dddd [hh:mm:ss] can be
used. If no time is specified, you will be prompted for the time.
used. If no time is specified, you will be prompted for the time.`
,
`
,
},
},
"/GENERAL"
:
{
"/GENERAL"
:
{
Description
:
`Specifies that the message is to be converted from a SYSTEM message to
Description
:
`Specifies that the message is to be converted from a SYSTEM message to
a GENERAL message. This only applies to the GENERAL folder.
a GENERAL message. This only applies to the GENERAL folder.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`Specifies that the message header is to be replaced. You will be
Description
:
`Specifies that the message header is to be replaced. You will be
prompted for the new message description.
prompted for the new message description.`
,
`
,
},
},
"/NEW"
:
{
"/NEW"
:
{
Description
:
`If the editor is to be used for replacing the text of the message,
Description
:
`If the editor is to be used for replacing the text of the message,
NEW specifies not to read in the old message text, and that a totally
NEW specifies not to read in the old message text, and that a totally
new text is to be read in.
new text is to be read in.`
,
`
,
},
},
"/NUMBER"
:
{
"/NUMBER"
:
{
Description
:
`/NUMBER=message_number[-message_number1]
Description
:
`/NUMBER=message_number[-message_number1]
...
@@ -316,32 +286,26 @@ A range of messages can be specified, i.e. /NUMBER=1-5. Only the expiration
...
@@ -316,32 +286,26 @@ A range of messages can be specified, i.e. /NUMBER=1-5. Only the expiration
date and message headers can be changed if a range is specified.
date and message headers can be changed if a range is specified.
The key words CURRENT and LAST can also be specified in the range,
The key words CURRENT and LAST can also be specified in the range,
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.`
,
`
,
},
},
"/PERMANENT"
:
{
"/PERMANENT"
:
{
Description
:
`Specifies that the message is to be made permanent.
Description
:
`Specifies that the message is to be made permanent.`
,
`
,
},
},
"/SHUTDOWN[=nodename]"
:
{
"/SHUTDOWN[=nodename]"
:
{
Description
:
`Specifies that the message is to expire after the next computer
Description
:
`Specifies that the message is to expire after the next computer
shutdown. This option is restricted to SYSTEM folders.
shutdown. This option is restricted to SYSTEM folders.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=description
Description
:
`/SUBJECT=description
Specifies the subject of the message to be added.
Specifies the subject of the message to be added.`
,
`
,
},
},
"/SYSTEM"
:
{
"/SYSTEM"
:
{
Description
:
`Specifies that the message is to be made a SYSTEM message. This is a
Description
:
`Specifies that the message is to be made a SYSTEM message. This is a
privileged command and is restricted to SYSTEM folders.
privileged command and is restricted to SYSTEM folders.`
,
`
,
},
},
"/TEXT"
:
{
"/TEXT"
:
{
Description
:
`Specifies that the message text is to be replaced.
Description
:
`Specifies that the message text is to be replaced.`
,
`
,
},
},
},
},
},
},
...
@@ -358,39 +322,35 @@ copied to. Optionally, a range of messages which are to be copied can be
...
@@ -358,39 +322,35 @@ copied to. Optionally, a range of messages which are to be copied can be
specified following the folder name, i.e. COPY NEWFOLDER 2-5.
specified following the folder name, i.e. COPY NEWFOLDER 2-5.
The key words CURRENT and LAST can also be specified in the range,
The key words CURRENT and LAST can also be specified in the range,
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.`
,
`
,
MinArgs
:
1
,
MaxArgs
:
2
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Specifies to copy all the messages in the old folder.
Description
:
`Specifies to copy all the messages in the old folder.`
,
`
,
},
},
"/GROUPS"
:
{
"/GROUPS"
:
{
Description
:
`/GROUPS=(newsgroup,[...])
Description
:
`/GROUPS=(newsgroup,[...])
Valid only if a NEWS group is selected. Specifies to send the message to
Valid only if a NEWS group is selected. Specifies to send the message to
the specified NEWS group(s) in addition to the selected NEWS group.
the specified NEWS group(s) in addition to the selected NEWS group.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
Valid only if destination folder is a news group. Specifies that header
Valid only if destination folder is a news group. Specifies that header
of message is to be included with the text when the text is copied.
of message is to be included with the text when the text is copied.
The default is /NOHEADER.
The default is /NOHEADER.`
,
`
,
},
},
"/MERGE"
:
{
"/MERGE"
:
{
Description
:
`Specifies that the original date and time of the copied messages are
Description
:
`Specifies that the original date and time of the copied messages are
saved and that the messages are placed in correct chronological order
saved and that the messages are placed in correct chronological order
in the new folder. This operation is lengthy if the new folder is large.
in the new folder. This operation is lengthy if the new folder is large.`
,
`
,
},
},
"/ORIGINAL"
:
{
"/ORIGINAL"
:
{
Description
:
`Specifies that the owner of the copied message will be the original owner
Description
:
`Specifies that the owner of the copied message will be the original owner
of the message. The default is that the copied message will be owned by
of the message. The default is that the copied message will be owned by
the person copying the message.
the person copying the message.`
,
`
,
},
},
},
},
},
},
...
@@ -412,8 +372,9 @@ folder is stored in a file name created with the folder name).
...
@@ -412,8 +372,9 @@ folder is stored in a file name created with the folder name).
NOTE: Creation of folders may be a restricted command if the installer
NOTE: Creation of folders may be a restricted command if the installer
has elected to install it as such. This is done by modifying
has elected to install it as such. This is done by modifying
BULLCOM.CLD.
BULLCOM.CLD.`
,
`
,
MinArgs
:
1
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALWAYS"
:
{
"/ALWAYS"
:
{
Description
:
`Specifies that the folder has the ALWAYS attribute. This causes
Description
:
`Specifies that the folder has the ALWAYS attribute. This causes
...
@@ -423,14 +384,12 @@ just once. Non-SYSTEM message will also be displayed every time (in
...
@@ -423,14 +384,12 @@ just once. Non-SYSTEM message will also be displayed every time (in
whatever mode is selected, i.e. BRIEF, SHOWNEW, or READNEW) until the
whatever mode is selected, i.e. BRIEF, SHOWNEW, or READNEW) until the
user actually reads that message (or a later one). This feature is
user actually reads that message (or a later one). This feature is
meant for messages which are very important, and thus you want to make
meant for messages which are very important, and thus you want to make
sure they are read.
sure they are read.`
,
`
,
},
},
"/BRIEF"
:
{
"/BRIEF"
:
{
Description
:
`Specifies that all users automatically have BRIEF set for this folder.
Description
:
`Specifies that all users automatically have BRIEF set for this folder.
Only a privileged user can use this qualifier. (See HELP SET BRIEF for
Only a privileged user can use this qualifier. (See HELP SET BRIEF for
more information.)
more information.)`
,
`
,
},
},
"/DESCRIPTION"
:
{
"/DESCRIPTION"
:
{
Description
:
`/DESCRIPTION=description
Description
:
`/DESCRIPTION=description
...
@@ -454,8 +413,7 @@ logical name BULL_NEWS_MAILER (it is the same protocol used by the NEWS
...
@@ -454,8 +413,7 @@ logical name BULL_NEWS_MAILER (it is the same protocol used by the NEWS
feature in order to respond to NEWS messages). The default protocol is
feature in order to respond to NEWS messages). The default protocol is
IN%. If desired, you can specify the protocol with the address, i.e.
IN%. If desired, you can specify the protocol with the address, i.e.
INFOVAX MAILING LIST <IN%"INFO-VAX@KL.SRI.COM">
INFOVAX MAILING LIST <IN%"INFO-VAX@KL.SRI.COM">`
,
`
,
},
},
"/ID"
:
{
"/ID"
:
{
Description
:
`Designates that the name specified as the owner name is a rights
Description
:
`Designates that the name specified as the owner name is a rights
...
@@ -464,8 +422,7 @@ assigned to it. Any process which has that identifier assigned to it
...
@@ -464,8 +422,7 @@ assigned to it. Any process which has that identifier assigned to it
will be able to control the folder as if it were the folder's owner.
will be able to control the folder as if it were the folder's owner.
This is used to allow more than one use to control a folder.
This is used to allow more than one use to control a folder.
Note: This feature will not work during remote access to the folder.
Note: This feature will not work during remote access to the folder.`
,
`
,
},
},
"/NODE"
:
{
"/NODE"
:
{
Description
:
`/NODE=node
Description
:
`/NODE=node
...
@@ -492,20 +449,17 @@ messages), or if a user accesses that folder. Thus, if the folder is
...
@@ -492,20 +449,17 @@ messages), or if a user accesses that folder. Thus, if the folder is
located on node A, and the message is added from node B, and a user logs
located on node A, and the message is added from node B, and a user logs
in to node C, the BULLETIN login notification might not notify the user
in to node C, the BULLETIN login notification might not notify the user
of the message. However, if the message is added with /BROADCAST, the
of the message. However, if the message is added with /BROADCAST, the
message will be broadcasted immediately to all nodes.
message will be broadcasted immediately to all nodes.`
,
`
,
},
},
"/NOTIFY"
:
{
"/NOTIFY"
:
{
Description
:
`Specifies that all users automatically have NOTIFY set for this folder.
Description
:
`Specifies that all users automatically have NOTIFY set for this folder.
Only a privileged user can use this qualifier. (See HELP SET NOTIFY for
Only a privileged user can use this qualifier. (See HELP SET NOTIFY for
more information.)
more information.)`
,
`
,
},
},
"/OWNER"
:
{
"/OWNER"
:
{
Description
:
`/OWNER=username
Description
:
`/OWNER=username
Specifies the owner of the folder. This is a privileged command.
Specifies the owner of the folder. This is a privileged command.
See also /ID.
See also /ID.`
,
`
,
},
},
"/PRIVATE"
:
{
"/PRIVATE"
:
{
Description
:
`Specifies that the folder can only be accessed by users who have been
Description
:
`Specifies that the folder can only be accessed by users who have been
...
@@ -514,32 +468,27 @@ and users who are granted access must be entered into the Rights Data Base.
...
@@ -514,32 +468,27 @@ and users who are granted access must be entered into the Rights Data Base.
If the RDB does not exist on your system, a privileged user will have to
If the RDB does not exist on your system, a privileged user will have to
create it. If a user is not in the RDB, this program will automatically
create it. If a user is not in the RDB, this program will automatically
enter the user into it (unless this feature was disabled during the
enter the user into it (unless this feature was disabled during the
compilation of this program). NOTE: See HELP SET ACCESS for more info.
compilation of this program). NOTE: See HELP SET ACCESS for more info.`
,
`
,
},
},
"/READNEW"
:
{
"/READNEW"
:
{
Description
:
`Specifies that all users automatically have READNEW set for this folder.
Description
:
`Specifies that all users automatically have READNEW set for this folder.
Only a privileged user can use this qualifier. (See HELP SET READNEW for
Only a privileged user can use this qualifier. (See HELP SET READNEW for
more information.)
more information.)`
,
`
,
},
},
"/REMOTENAME"
:
{
"/REMOTENAME"
:
{
Description
:
`/REMOTENAME=foldername
Description
:
`/REMOTENAME=foldername
Valid only if /NODE is present, i.e. that the folder is a remote folder.
Valid only if /NODE is present, i.e. that the folder is a remote folder.
Specifies the name of the remote folder name. If not specified, it is
Specifies the name of the remote folder name. If not specified, it is
assumed that the remote name is the same as the local name.
assumed that the remote name is the same as the local name.`
,
`
,
},
},
"/SHOWNEW"
:
{
"/SHOWNEW"
:
{
Description
:
`Specifies that all users automatically have SHOWNEW set for this folder.
Description
:
`Specifies that all users automatically have SHOWNEW set for this folder.
Only a privileged user can use this qualifier. (See HELP SET SHOWNEW for
Only a privileged user can use this qualifier. (See HELP SET SHOWNEW for
more information.)
more information.)`
,
`
,
},
},
"/SEMIPRIVATE"
:
{
"/SEMIPRIVATE"
:
{
Description
:
`Similar to /PRIVATE, except that the folder is restricted only with
Description
:
`Similar to /PRIVATE, except that the folder is restricted only with
respect to adding or modifying messages. All users can read the folder.
respect to adding or modifying messages. All users can read the folder.`
,
`
,
},
},
"/SYSTEM"
:
{
"/SYSTEM"
:
{
Description
:
`Specifies that the folder is a SYSTEM folder. A SYSTEM folder is
Description
:
`Specifies that the folder is a SYSTEM folder. A SYSTEM folder is
...
@@ -547,8 +496,7 @@ allowed to have SYSTEM and SHUTDOWN messages added to it. By default,
...
@@ -547,8 +496,7 @@ allowed to have SYSTEM and SHUTDOWN messages added to it. By default,
the GENERAL folder is a SYSTEM folder. This is a privileged command.
the GENERAL folder is a SYSTEM folder. This is a privileged command.
If this is a remote folder, /SYSTEM cannot be specified unless the
If this is a remote folder, /SYSTEM cannot be specified unless the
folder at the other node is also a SYSTEM folder.
folder at the other node is also a SYSTEM folder.`
,
`
,
},
},
},
},
},
},
...
@@ -559,13 +507,11 @@ of the message again, you can enter the CURRENT command.
...
@@ -559,13 +507,11 @@ of the message again, you can enter the CURRENT command.
Format:
Format:
CURRENT
CURRENT`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used to read the message. This is
Description
:
`Specifies that the editor is to be used to read the message. This is
useful for scanning a long message.
useful for scanning a long message.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
...
@@ -574,8 +520,7 @@ Specifies that if a message header exists, the header will be shown.
...
@@ -574,8 +520,7 @@ Specifies that if a message header exists, the header will be shown.
If /HEADER or /NOHEADER is specified, the setting will apply for all
If /HEADER or /NOHEADER is specified, the setting will apply for all
further reads in the selected folder. The default is /HEADER for non-
further reads in the selected folder. The default is /HEADER for non-
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
is set for the folder, it will change the default to be /HEADER.
is set for the folder, it will change the default to be /HEADER.`
,
`
,
},
},
},
},
},
},
...
@@ -596,18 +541,16 @@ separated by a dash, i.e. DELETE 1-5. However, a range cannot be
...
@@ -596,18 +541,16 @@ separated by a dash, i.e. DELETE 1-5. However, a range cannot be
specified if the folder is remote.
specified if the folder is remote.
The key words CURRENT and LAST can also be specified in the range,
The key words CURRENT and LAST can also be specified in the range,
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Specifies to delete all the messages in the folder. Note: This will
Description
:
`Specifies to delete all the messages in the folder. Note: This will
not work for remote folders. Only one message can be deleted from a
not work for remote folders. Only one message can be deleted from a
remote folder at a time.
remote folder at a time.`
,
`
,
},
},
"/IMMEDIATE"
:
{
"/IMMEDIATE"
:
{
Description
:
`Specifies that the message is to be deleted immediately.
Description
:
`Specifies that the message is to be deleted immediately.`
,
`
,
},
},
"/NODES"
:
{
"/NODES"
:
{
Description
:
`/NODES=(nodes[,...])
Description
:
`/NODES=(nodes[,...])
...
@@ -623,8 +566,7 @@ message that is to be deleted.
...
@@ -623,8 +566,7 @@ message that is to be deleted.
Additionally, you can specify logical names which translate to one or
Additionally, you can specify logical names which translate to one or
more node names. I.e. $ DEFINE ALL_NODES "VAX1,VAX2,VAX3", and then
more node names. I.e. $ DEFINE ALL_NODES "VAX1,VAX2,VAX3", and then
specify /NODES=ALL_NODES. Note that the quotation marks are required.
specify /NODES=ALL_NODES. Note that the quotation marks are required.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=subject
Description
:
`/SUBJECT=subject
...
@@ -634,13 +576,11 @@ node. The DECNET node must be specified with the /NODE qualifier.
...
@@ -634,13 +576,11 @@ node. The DECNET node must be specified with the /NODE qualifier.
The specified subject need not be the exact subject of the message.
The specified subject need not be the exact subject of the message.
It can be a substring of the subject. This is in case you have forgotten
It can be a substring of the subject. This is in case you have forgotten
the exact subject that was specified. Case is not critical either.
the exact subject that was specified. Case is not critical either.
You will be notified if the deletion was successful.
You will be notified if the deletion was successful.`
,
`
,
},
},
"/USERNAME"
:
{
"/USERNAME"
:
{
Description
:
`Specifies username to be used at remote DECNET nodes when deleting messages
Description
:
`Specifies username to be used at remote DECNET nodes when deleting messages
on other DECNET nodes via the /NODE qualifier.
on other DECNET nodes via the /NODE qualifier.`
,
`
,
},
},
},
},
},
},
...
@@ -656,110 +596,94 @@ If a folder is specified, that folder is selected before the directory
...
@@ -656,110 +596,94 @@ If a folder is specified, that folder is selected before the directory
is listed. Unless otherwise specified, listing starts with the first
is listed. Unless otherwise specified, listing starts with the first
newest message. If there are no new messages, listing will start at the
newest message. If there are no new messages, listing will start at the
first message, or if a message has already been read, it will start at
first message, or if a message has already been read, it will start at
that message.
that message.
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Lists all messages. Used if the qualifiers /MARKED, /UNMARKED, /SEEN,
Description
:
`Lists all messages. Used if the qualifiers /MARKED, /UNMARKED, /SEEN,
or /UNSEEN were previously specified.
or /UNSEEN were previously specified.`
,
`
,
},
},
"/DESCRIBE "
:
{
"/DESCRIBE "
:
{
Description
:
`Valid when used with /FOLDERS. Specifies to include description of
Description
:
`Valid when used with /FOLDERS. Specifies to include description of
folder.
folder.`
,
`
,
},
},
"/EXPIRATION"
:
{
"/EXPIRATION"
:
{
Description
:
`Shows the message's expiration date rather than the creation date.
Description
:
`Shows the message's expiration date rather than the creation date.`
,
`
,
},
},
"/END"
:
{
"/END"
:
{
Description
:
`/END=message_number
Description
:
`/END=message_number
Indicates the last message number you want to display.
Indicates the last message number you want to display.`
,
`
,
},
},
"/FOLDERS"
:
{
"/FOLDERS"
:
{
Description
:
`Lists the available message folders. Shows last message date and number
Description
:
`Lists the available message folders. Shows last message date and number
of messages in folder. An asterisk (*) next to foldername indicates
of messages in folder. An asterisk (*) next to foldername indicates
that there are unread messages in that folder. This will not show
that there are unread messages in that folder. This will not show
newsgroups. To see newsgroups, use the NEWS command or DIR/NEWS.
newsgroups. To see newsgroups, use the NEWS command or DIR/NEWS.`
,
`
,
},
},
"/MARKED"
:
{
"/MARKED"
:
{
Description
:
`Lists messages that have been marked (indicated by an asterisk).
Description
:
`Lists messages that have been marked (indicated by an asterisk).
This is equivalent to selecting the folder with /MARKED, i.e. only
This is equivalent to selecting the folder with /MARKED, i.e. only
marked messages will be shown and be able to be read. To see all
marked messages will be shown and be able to be read. To see all
messages, use either /ALL, or reselect the folder.
messages, use either /ALL, or reselect the folder.`
,
`
,
},
},
"/UNMARKED"
:
{
"/UNMARKED"
:
{
Description
:
`Lists messages that have not been marked (marked messages are indicated
Description
:
`Lists messages that have not been marked (marked messages are indicated
by an asterisk). Using /UNMARKED is equivalent to selecting the folder
by an asterisk). Using /UNMARKED is equivalent to selecting the folder
with /UNMARKED, i.e. only unmarked messages will be shown and be able
with /UNMARKED, i.e. only unmarked messages will be shown and be able
to be read. To see all messages, use either /ALL, or reselect the
to be read. To see all messages, use either /ALL, or reselect the
folder.
folder.`
,
`
,
},
},
"/SEEN"
:
{
"/SEEN"
:
{
Description
:
`Lists messages that have been seen (indicated by a greater than sign).
Description
:
`Lists messages that have been seen (indicated by a greater than sign).
Using /SEEN is equivalent to selecting the folder with /SEEN, i.e. only
Using /SEEN is equivalent to selecting the folder with /SEEN, i.e. only
seen messages will be shown and be able to be read. To see all
seen messages will be shown and be able to be read. To see all
messages, use either /ALL, or reselect the folder.
messages, use either /ALL, or reselect the folder.`
,
`
,
},
},
"/UNSEEN"
:
{
"/UNSEEN"
:
{
Description
:
`Lists messages that have not been seen (seen message are indicated by a
Description
:
`Lists messages that have not been seen (seen message are indicated by a
greater than sign). Using /UNSEEN is equivalent to selecting the folder
greater than sign). Using /UNSEEN is equivalent to selecting the folder
with /UNSEEN, i.e. only unseen messages will be shown and be able to be
with /UNSEEN, i.e. only unseen messages will be shown and be able to be
read. To see all messages, use either /ALL, or reselect the folder.
read. To see all messages, use either /ALL, or reselect the folder.`
,
`
,
},
},
"/NEW"
:
{
"/NEW"
:
{
Description
:
`Specifies to start the listing of messages with the first unread
Description
:
`Specifies to start the listing of messages with the first unread
message.
message.`
,
`
,
},
},
"/NEWS"
:
{
"/NEWS"
:
{
Description
:
`Lists the available news groups. This does the same thing as the NEWS
Description
:
`Lists the available news groups. This does the same thing as the NEWS
command. See that command for qualifiers which apply.
command. See that command for qualifiers which apply.`
,
`
,
},
},
"/PRINT"
:
{
"/PRINT"
:
{
Description
:
`Specifies that the text of the messages which are found by the
Description
:
`Specifies that the text of the messages which are found by the
DIRECTORY command are to be printed. All qualifiers which are valid
DIRECTORY command are to be printed. All qualifiers which are valid
for the PRINT command are valid in conjunction with /PRINT. The list
for the PRINT command are valid in conjunction with /PRINT. The list
of messages to be printed will be displayed on the terminal (in
of messages to be printed will be displayed on the terminal (in
nopaging format).
nopaging format).`
,
`
,
},
},
"/REPLY"
:
{
"/REPLY"
:
{
Description
:
`Specifies that only messages which are replies to the current message
Description
:
`Specifies that only messages which are replies to the current message
are to be displayed. This cannot be used in conjunction with /MARKED.
are to be displayed. This cannot be used in conjunction with /MARKED.`
,
`
,
},
},
"/SEARCH"
:
{
"/SEARCH"
:
{
Description
:
`/SEARCH=[string]
Description
:
`/SEARCH=[string]
Specifies that only messages which contain the specified string are
Specifies that only messages which contain the specified string are
to be displayed. This cannot be used in conjunction with /MARKED.
to be displayed. This cannot be used in conjunction with /MARKED.
If no string is specified, the previously specified string is used.
If no string is specified, the previously specified string is used.`
,
`
,
},
},
"/SINCE"
:
{
"/SINCE"
:
{
Description
:
`/SINCE=date
Description
:
`/SINCE=date
Displays a listing of all the messages created on or after the
Displays a listing of all the messages created on or after the
specified date. If no date is specified, the default is TODAY.
specified date. If no date is specified, the default is TODAY.`
,
`
,
},
},
"/START"
:
{
"/START"
:
{
Description
:
`/START=message_number
Description
:
`/START=message_number
Indicates the first message number you want to display. For example,
Indicates the first message number you want to display. For example,
to display all the messages beginning with number three, enter the
to display all the messages beginning with number three, enter the
command line DIRECTORY/START=3. Not valid with /FOLDER.
command line DIRECTORY/START=3. Not valid with /FOLDER.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=[string]
Description
:
`/SUBJECT=[string]
...
@@ -767,19 +691,16 @@ command line DIRECTORY/START=3. Not valid with /FOLDER.
...
@@ -767,19 +691,16 @@ command line DIRECTORY/START=3. Not valid with /FOLDER.
Specifies that only messages which contain the specified string in it's
Specifies that only messages which contain the specified string in it's
subject header are to be displayed. This cannot be used in conjunction
subject header are to be displayed. This cannot be used in conjunction
with /MARKED. If no string is specified, the previously specified string
with /MARKED. If no string is specified, the previously specified string
is used.
is used.`
,
`
,
},
},
},
},
},
},
"EXIT"
:
{
"EXIT"
:
{
Description
:
`Exits the BULLETIN program.
Description
:
`Exits the BULLETIN program.`
,
`
,
Action
:
ActionExit
,
Action
:
ActionExit
,
},
},
"EXTRACT"
:
{
"EXTRACT"
:
{
Description
:
`Synonym for FILE command.
Description
:
`Synonym for FILE command.`
,
`
,
},
},
"FILE"
:
{
"FILE"
:
{
Description
:
`Copies the current message to the named file. The file-name parameter
Description
:
`Copies the current message to the named file. The file-name parameter
...
@@ -793,44 +714,38 @@ A range of messages to be copied can optionally be specified, i.e.
...
@@ -793,44 +714,38 @@ A range of messages to be copied can optionally be specified, i.e.
FILE 2-5.
FILE 2-5.
The key words CURRENT and LAST can also be specified in the range,
The key words CURRENT and LAST can also be specified in the range,
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.`
,
`
,
MinArgs
:
1
,
MaxArgs
:
2
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Copies all the messages in the current folder.
Description
:
`Copies all the messages in the current folder.`
,
`
,
},
},
"/FF"
:
{
"/FF"
:
{
Description
:
`Specifies that a form feed is placed between messages in the file.
Description
:
`Specifies that a form feed is placed between messages in the file.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
Controls whether a header containing the owner, subject, and date of the
Controls whether a header containing the owner, subject, and date of the
message is written in the file. The default is to write the header.
message is written in the file. The default is to write the header.`
,
`
,
},
},
"/NEW"
:
{
"/NEW"
:
{
Description
:
`Specifies that a new file is to be created. Otherwise, if the specified
Description
:
`Specifies that a new file is to be created. Otherwise, if the specified
file exists, the file would be appended to that file.
file exists, the file would be appended to that file.`
,
`
,
},
},
},
},
},
},
"FIRST"
:
{
"FIRST"
:
{
Description
:
`Specifies that the first message in the folder is to be read.
Description
:
`Specifies that the first message in the folder is to be read.`
,
`
,
},
},
"FORWARD"
:
{
"FORWARD"
:
{
Description
:
`Synonym for MAIL command.
Description
:
`Synonym for MAIL command.`
,
`
,
},
},
"HELP"
:
{
"HELP"
:
{
Description
:
`To obtain help on any topic, type:
Description
:
`To obtain help on any topic, type:
HELP topic
HELP topic`
,
`
,
Action
:
ActionHelp
,
Action
:
ActionHelp
,
},
},
"INDEX"
:
{
"INDEX"
:
{
...
@@ -841,50 +756,42 @@ folder. It also can be used to continue the listing from where one left
...
@@ -841,50 +756,42 @@ folder. It also can be used to continue the listing from where one left
off after one has read a message.
off after one has read a message.
Format:
Format:
INDEX
INDEX`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/MARKED"
:
{
"/MARKED"
:
{
Description
:
`Lists messages that have been marked (marked messages are indicated by
Description
:
`Lists messages that have been marked (marked messages are indicated by
an asterisk). This is equivalent to selecting the folder with /MARKED,
an asterisk). This is equivalent to selecting the folder with /MARKED,
i.e. only marked messages will be shown and be able to be read.
i.e. only marked messages will be shown and be able to be read.`
,
`
,
},
},
"/UNMARKED"
:
{
"/UNMARKED"
:
{
Description
:
`Lists messages that have not been marked (marked messages are indicated
Description
:
`Lists messages that have not been marked (marked messages are indicated
by an asterisk). Using /UNMARKED is equivalent to selecting the folder
by an asterisk). Using /UNMARKED is equivalent to selecting the folder
with /UNMARKED, i.e. only unmarked messages will be shown and be able
with /UNMARKED, i.e. only unmarked messages will be shown and be able
to be read.
to be read.`
,
`
,
},
},
"/SEEN"
:
{
"/SEEN"
:
{
Description
:
`Lists messages that have been seen (indicated by a greater than sign).
Description
:
`Lists messages that have been seen (indicated by a greater than sign).
Using /SEEN is equivalent to selecting the folder with /SEEN, i.e. only
Using /SEEN is equivalent to selecting the folder with /SEEN, i.e. only
seen messages will be shown and be able to be read.
seen messages will be shown and be able to be read.`
,
`
,
},
},
"/UNSEEN"
:
{
"/UNSEEN"
:
{
Description
:
`Lists messages that have not been seen (seen message are indicated by a
Description
:
`Lists messages that have not been seen (seen message are indicated by a
greater than sign). Using /UNSEEN is equivalent to selecting the folder
greater than sign). Using /UNSEEN is equivalent to selecting the folder
with /UNSEEN, i.e. only unseen messages will be shown and be able to be
with /UNSEEN, i.e. only unseen messages will be shown and be able to be
read.
read.`
,
`
,
},
},
"/NEW"
:
{
"/NEW"
:
{
Description
:
`Specifies to start the listing of each folder with the first unread message.
Description
:
`Specifies to start the listing of each folder with the first unread message.
Otherwise, the listing will start with the first message in the folder.
Otherwise, the listing will start with the first message in the folder.
If the INDEX command is re-entered for continuing the listing, /NEW must
If the INDEX command is re-entered for continuing the listing, /NEW must
be respecified.
be respecified.`
,
`
,
},
},
"/RESTART"
:
{
"/RESTART"
:
{
Description
:
`If specified, causes the listing to be reinitialized and start from the
Description
:
`If specified, causes the listing to be reinitialized and start from the
first folder.
first folder.`
,
`
,
},
},
"/SUBSCRIBE"
:
{
"/SUBSCRIBE"
:
{
Description
:
`If specified, lists only those news folders which have been subscribed to.
Description
:
`If specified, lists only those news folders which have been subscribed to.`
,
`
,
},
},
},
},
},
},
...
@@ -909,20 +816,17 @@ first folder.
...
@@ -909,20 +816,17 @@ first folder.
| 0 | . | SELECT |
| 0 | . | SELECT |
| SHOW FOLDER/FULL| DELETE | |
| SHOW FOLDER/FULL| DELETE | |
| SHOW FLAGS | UNDELE | |
| SHOW FLAGS | UNDELE | |
+-----------------+--------+--------+
+-----------------+--------+--------+`
,
`
,
},
},
"LAST"
:
{
"LAST"
:
{
Description
:
`Displays the last message in the current folder.
Description
:
`Displays the last message in the current folder.
Format:
Format:
LAST
LAST`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used to read the message. This is
Description
:
`Specifies that the editor is to be used to read the message. This is
useful for scanning a long message.
useful for scanning a long message.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
...
@@ -931,8 +835,7 @@ Specifies that if a message header exists, the header will be shown.
...
@@ -931,8 +835,7 @@ Specifies that if a message header exists, the header will be shown.
If /HEADER or /NOHEADER is specified, the setting will apply for all
If /HEADER or /NOHEADER is specified, the setting will apply for all
further reads in the selected folder. The default is /HEADER for non-
further reads in the selected folder. The default is /HEADER for non-
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
is set for the folder, it will change the default to be /HEADER.
is set for the folder, it will change the default to be /HEADER.`
,
`
,
},
},
},
},
},
},
...
@@ -948,20 +851,19 @@ The input for the recipient name is exactly the same format as used by
...
@@ -948,20 +851,19 @@ The input for the recipient name is exactly the same format as used by
the MAIL command at DCL level. Note that this means when specifying an
the MAIL command at DCL level. Note that this means when specifying an
address that has quotes, in order to pass the quotes you must specify
address that has quotes, in order to pass the quotes you must specify
triple quotes. I.e. a network address of the form xxx%"address" must
triple quotes. I.e. a network address of the form xxx%"address" must
be specified as xxx%"""address""".
be specified as xxx%"""address""".`
,
`
,
MinArgs
:
1
,
MaxArgs
:
10
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used to edit the message before
Description
:
`Specifies that the editor is to be used to edit the message before
mailing it.
mailing it.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
Controls whether a header containing the owner, subject, and date of the
Controls whether a header containing the owner, subject, and date of the
message is written in the mail. The default is to write the header.
message is written in the mail. The default is to write the header.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=text
Description
:
`/SUBJECT=text
...
@@ -970,8 +872,7 @@ Specifies the subject of the mail message. If the text consists of more
...
@@ -970,8 +872,7 @@ Specifies the subject of the mail message. If the text consists of more
than one word, enclose the text in quotation marks (").
than one word, enclose the text in quotation marks (").
If you omit this qualifier, the description of the message will be used
If you omit this qualifier, the description of the message will be used
as the subject.
as the subject.`
,
`
,
},
},
},
},
},
},
...
@@ -991,8 +892,7 @@ NOTE: The list of marked messages for non-NEWS folders are stored in a
...
@@ -991,8 +892,7 @@ NOTE: The list of marked messages for non-NEWS folders are stored in a
file username.BULLMARK, and NEWS folders are stored in
file username.BULLMARK, and NEWS folders are stored in
username.NEWSMARK. The files are created in the directory pointed to by
username.NEWSMARK. The files are created in the directory pointed to by
the logical name BULL_MARK. If BULL_MARK is not defined, SYS$LOGIN
the logical name BULL_MARK. If BULL_MARK is not defined, SYS$LOGIN
will be used.
will be used.`
,
`
,
},
},
"MODIFY"
:
{
"MODIFY"
:
{
Description
:
`Modifies the database information for the current folder. Only the
Description
:
`Modifies the database information for the current folder. Only the
...
@@ -1000,8 +900,7 @@ owner of the folder or a user with privileges can use this command.
...
@@ -1000,8 +900,7 @@ owner of the folder or a user with privileges can use this command.
Format:
Format:
MODIFY
MODIFY`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/DESCRIPTION"
:
{
"/DESCRIPTION"
:
{
Description
:
`Specifies a new description for the folder. You will be prompted for
Description
:
`Specifies a new description for the folder. You will be prompted for
...
@@ -1013,8 +912,7 @@ commands, the address of the mailing list should be included in the
...
@@ -1013,8 +912,7 @@ commands, the address of the mailing list should be included in the
description. This is done by enclosing the address using <> and
description. This is done by enclosing the address using <> and
placing it at the end of the description, i.e.
placing it at the end of the description, i.e.
INFOVAX MAILING LIST <IN%"INFO-VAX@KL.SRI.COM">
INFOVAX MAILING LIST <IN%"INFO-VAX@KL.SRI.COM">`
,
`
,
},
},
"/ID"
:
{
"/ID"
:
{
Description
:
`Designates that the name specified as the owner name is a rights
Description
:
`Designates that the name specified as the owner name is a rights
...
@@ -1023,22 +921,19 @@ assigned to it. Any process which has that identifier assigned to it
...
@@ -1023,22 +921,19 @@ assigned to it. Any process which has that identifier assigned to it
will be able to control the folder as if it were the folder's owner.
will be able to control the folder as if it were the folder's owner.
This is used to allow more than one use to control a folder.
This is used to allow more than one use to control a folder.
Note: This feature will not work during remote access to the folder.
Note: This feature will not work during remote access to the folder.`
,
`
,
},
},
"/NAME"
:
{
"/NAME"
:
{
Description
:
`/NAME=foldername
Description
:
`/NAME=foldername
Specifies a new name for the folder.
Specifies a new name for the folder.`
,
`
,
},
},
"/OWNER"
:
{
"/OWNER"
:
{
Description
:
`/OWNER=username
Description
:
`/OWNER=username
Specifies a new owner for the folder. If the owner does not have
Specifies a new owner for the folder. If the owner does not have
privileges, BULLETIN will prompt for the password of the new owner
privileges, BULLETIN will prompt for the password of the new owner
account in order to okay the modification. See also /ID.
account in order to okay the modification. See also /ID.`
,
`
,
},
},
},
},
},
},
...
@@ -1057,97 +952,48 @@ if the old folder is remote, they will be copied but not deleted, as
...
@@ -1057,97 +952,48 @@ if the old folder is remote, they will be copied but not deleted, as
only one message can be delted from a remote folder at a time.
only one message can be delted from a remote folder at a time.
The key words CURRENT and LAST can also be specified in the range,
The key words CURRENT and LAST can also be specified in the range,
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.`
,
`
,
MinArgs
:
1
,
MaxArgs
:
2
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Specifies to move all the messages from the old folder. Note: If the
Description
:
`Specifies to move all the messages from the old folder. Note: If the
old folder is remote, they will be copied but not deleted, as only one
old folder is remote, they will be copied but not deleted, as only one
message can be deleted from a remote folder at a time.
message can be deleted from a remote folder at a time.`
,
`
,
},
},
"/GROUPS"
:
{
"/GROUPS"
:
{
Description
:
`/GROUPS=(newsgroup,[...])
Description
:
`/GROUPS=(newsgroup,[...])
Valid only if a NEWS group is selected. Specifies to send the message to
Valid only if a NEWS group is selected. Specifies to send the message to
the specified NEWS group(s) in addition to the selected NEWS group.
the specified NEWS group(s) in addition to the selected NEWS group.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
Valid only if destination folder is a news group. Specifies that header
Valid only if destination folder is a news group. Specifies that header
of message is to be included with the text when the text is copied.
of message is to be included with the text when the text is copied.
The default is /NOHEADER.
The default is /NOHEADER.`
,
`
,
},
},
"/MERGE"
:
{
"/MERGE"
:
{
Description
:
`Specifies that the original date and time of the moved messages are
Description
:
`Specifies that the original date and time of the moved messages are
saved and that the messages are placed in correct chronological order
saved and that the messages are placed in correct chronological order
in the new folder. This operation is lengthy if the new folder is large.
in the new folder. This operation is lengthy if the new folder is large.`
,
`
,
},
},
"/ORIGINAL"
:
{
"/ORIGINAL"
:
{
Description
:
`Specifies that the owner of the moved message will be the original owner
Description
:
`Specifies that the owner of the moved message will be the original owner
of the message. The default is that the moved message will be owned by
of the message. The default is that the moved message will be owned by
the person moving the message.
the person moving the message.`
,
`
,
},
},
},
"NEWS"
:
{
Description
:
`Displays the list of available news groups.
Format:
NEWS [string]
If the string is specified, lists news groups whose name contains that
string. If the string contains an asterisk, a wild card match will be
applied. I.e. if ALT* is specified, all groups starting with ALT will
be displayed.
The status column of the display shows the status of the news group.
"y" means the news group is available. "m" means the news group is
moderated, and posting may or may not be allowable. "x" means the news
group has been deactived by the local server. "=" means the news group
has been renamed. The new name is shown on the display line immediately
following the old name.
`
,
Flags
:
dclish
.
Flags
{
"/NEWGROUP"
:
{
Description
:
`If specified, will list new news groups that have been added since the
last time that a user has accessed a news group. If there are new
groups, a user will see a message indicating that there are new groups
when the user accesses a news group.
`
,
},
"/START"
:
{
Description
:
`/START=string
If specified, the list will start with the first group which follows
alphabetically after that string. I.e. if /START=B is specified, the
list will start with groups whose name starts with a B.
`
,
},
"/SUBSCRIBE"
:
{
Description
:
`If specified, lists only those news folders which have been subscribed to.
An asterisk before the group indicates that new messages are present for
that folder.
`
,
},
},
},
},
},
},
"NEXT"
:
{
"NEXT"
:
{
Description
:
`Skips to the next message and displays it. This is useful when paging
Description
:
`Skips to the next message and displays it. This is useful when paging
through the messages and you encounter a particularly long message
through the messages and you encounter a particularly long message
that you would like to skip over.
that you would like to skip over.`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used to read the message. This is
Description
:
`Specifies that the editor is to be used to read the message. This is
useful for scanning a long message.
useful for scanning a long message.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
...
@@ -1156,8 +1002,7 @@ Specifies that if a message header exists, the header will be shown.
...
@@ -1156,8 +1002,7 @@ Specifies that if a message header exists, the header will be shown.
If /HEADER or /NOHEADER is specified, the setting will apply for all
If /HEADER or /NOHEADER is specified, the setting will apply for all
further reads in the selected folder. The default is /HEADER for non-
further reads in the selected folder. The default is /HEADER for non-
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
is set for the folder, it will change the default to be /HEADER.
is set for the folder, it will change the default to be /HEADER.`
,
`
,
},
},
},
},
},
},
...
@@ -1169,41 +1014,35 @@ mailing list must be stored using either CREATE/DESCRIPTION or
...
@@ -1169,41 +1014,35 @@ mailing list must be stored using either CREATE/DESCRIPTION or
MODIFY/DESCRIPTION. See help on those commands for more information.
MODIFY/DESCRIPTION. See help on those commands for more information.
Format:
Format:
POST [file-name]
POST [file-name]
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/CC"
:
{
"/CC"
:
{
Description
:
`/CC=user[s]
Description
:
`/CC=user[s]
Specifies additional users that should receive the mail message.
Specifies additional users that should receive the mail message.`
,
`
,
},
},
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used for creating the mail message.
Description
:
`Specifies that the editor is to be used for creating the mail message.`
,
`
,
},
},
"/EXTRACT"
:
{
"/EXTRACT"
:
{
Description
:
`Specifies that the text of the message that is being read should be
Description
:
`Specifies that the text of the message that is being read should be
included in the mail message. This qualifier is valid only when used
included in the mail message. This qualifier is valid only when used
with /EDIT. The text of the message is indented with > at the
with /EDIT. The text of the message is indented with > at the
beginning of each line. This can be suppressed with /NOINDENT.
beginning of each line. This can be suppressed with /NOINDENT.`
,
`
,
},
},
"/GROUPS"
:
{
"/GROUPS"
:
{
Description
:
`/GROUPS=(newsgroup,[...])
Description
:
`/GROUPS=(newsgroup,[...])
Valid only if a NEWS group is selected. Specifies to send the message to
Valid only if a NEWS group is selected. Specifies to send the message to
the specified NEWS group(s) in addition to the selected NEWS group.
the specified NEWS group(s) in addition to the selected NEWS group.`
,
`
,
},
},
"/NOINDENT"
:
{
"/NOINDENT"
:
{
Description
:
`See /EXTRACT for information on this qualifier.
Description
:
`See /EXTRACT for information on this qualifier.`
,
`
,
},
},
"/NOSIGNATURE"
:
{
"/NOSIGNATURE"
:
{
Description
:
`Specifies to suppress the automatically appended signature, if one exists.
Description
:
`Specifies to suppress the automatically appended signature, if one exists.
Signatures are appended for postings to mailing lists and to responds.
Signatures are appended for postings to mailing lists and to responds.
See the help topic POST Signature_file for signature information.
See the help topic POST Signature_file for signature information.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=text
Description
:
`/SUBJECT=text
...
@@ -1211,8 +1050,7 @@ See the help topic POST Signature_file for signature information.
...
@@ -1211,8 +1050,7 @@ See the help topic POST Signature_file for signature information.
Specifies the subject of the mail message. If the text consists of more
Specifies the subject of the mail message. If the text consists of more
than one word, enclose the text in quotation marks (").
than one word, enclose the text in quotation marks (").
If you omit this qualifier, you will prompted for the subject.
If you omit this qualifier, you will prompted for the subject.`
,
`
,
},
},
"Signature_file"
:
{
"Signature_file"
:
{
Description
:
`It is possibly to have the contents of a file be automatically appended
Description
:
`It is possibly to have the contents of a file be automatically appended
...
@@ -1237,8 +1075,7 @@ END
...
@@ -1237,8 +1075,7 @@ END
This line will appear in all postings.
This line will appear in all postings.
Note that an empty line is automatically created to separate the text of
Note that an empty line is automatically created to separate the text of
the message and the contents of the signature file.
the message and the contents of the signature file.`
,
`
,
},
},
},
},
},
},
...
@@ -1262,12 +1099,11 @@ in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
...
@@ -1262,12 +1099,11 @@ in place of an actual number, i.e. CURRENT-LAST, 1-CURRENT, etc.
NOTE: The qualifier /PRINT is present on the DIRECTORY command. This
NOTE: The qualifier /PRINT is present on the DIRECTORY command. This
provides more flexibility than is present with the PRINT command. For
provides more flexibility than is present with the PRINT command. For
example, if you want to print all messages with a particular string in
example, if you want to print all messages with a particular string in
it's subject line, DIRECTORY/PRINT/SUBJ would allow you do it.
it's subject line, DIRECTORY/PRINT/SUBJ would allow you do it.
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Prints all the messages in the current folder.
Description
:
`Prints all the messages in the current folder.`
,
`
,
},
},
"/FORM"
:
{
"/FORM"
:
{
Description
:
`Specifies the name or number of the form that you want for the print
Description
:
`Specifies the name or number of the form that you want for the print
...
@@ -1281,35 +1117,30 @@ a pending state until the stock of the mounted form of the queue is
...
@@ -1281,35 +1117,30 @@ a pending state until the stock of the mounted form of the queue is
set equal to the stock of the form associated with the job. (In order
set equal to the stock of the form associated with the job. (In order
to have your job print, the system manager should stop the queue,
to have your job print, the system manager should stop the queue,
physically change the paper stock on the output device, and restart the
physically change the paper stock on the output device, and restart the
queue specifying the new form type as the mounted form.)
queue specifying the new form type as the mounted form.)`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
Controls whether a header containing the owner, subject, and date of the
Controls whether a header containing the owner, subject, and date of the
message is printed at the beginning. The default is to write the header.
message is printed at the beginning. The default is to write the header.`
,
`
,
},
},
"/NOTIFY"
:
{
"/NOTIFY"
:
{
Description
:
`/[NO]NOTIFY
Description
:
`/[NO]NOTIFY
Indicates that you will be notified by a broadcast message when the
Indicates that you will be notified by a broadcast message when the
file or files have been printed. If /NONOTIFY is specified, there
file or files have been printed. If /NONOTIFY is specified, there
is no notification. The default is /NOTIFY.
is no notification. The default is /NOTIFY.`
,
`
,
},
},
"/NOW"
:
{
"/NOW"
:
{
Description
:
`Sends all messages that have been queued for printing with the PRINT
Description
:
`Sends all messages that have been queued for printing with the PRINT
command during this session to the printer.
command during this session to the printer.`
,
`
,
},
},
"/QUEUE"
:
{
"/QUEUE"
:
{
Description
:
`/QUEUE=queue_name
Description
:
`/QUEUE=queue_name
The name of the queue to which a message is to be sent. If the /QUEUE
The name of the queue to which a message is to be sent. If the /QUEUE
qualifier is not specified, the message is queued to SYS$PRINT.
qualifier is not specified, the message is queued to SYS$PRINT.`
,
`
,
},
},
},
},
},
},
...
@@ -1334,18 +1165,16 @@ hitting the <RETURN> key is equivalent to "READ".
...
@@ -1334,18 +1165,16 @@ hitting the <RETURN> key is equivalent to "READ".
BULLETIN normally stores only the latest message that has been read per
BULLETIN normally stores only the latest message that has been read per
folder. It can optionally store and display which messages have been
folder. It can optionally store and display which messages have been
read in a folder on a per message basis. For information on this, see
read in a folder on a per message basis. For information on this, see
the help on the SEEN command.
the help on the SEEN command.
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/ALL"
:
{
"/ALL"
:
{
Description
:
`Specifies to read all messages. Used after /MARKED, /UNMARKED, /SEEN,
Description
:
`Specifies to read all messages. Used after /MARKED, /UNMARKED, /SEEN,
or /UNSEEN had been specified.
or /UNSEEN had been specified.`
,
`
,
},
},
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used to read the message. This is
Description
:
`Specifies that the editor is to be used to read the message. This is
useful for scanning a long message.
useful for scanning a long message.`
,
`
,
},
},
"/HEADER"
:
{
"/HEADER"
:
{
Description
:
`/[NO]HEADER
Description
:
`/[NO]HEADER
...
@@ -1354,43 +1183,37 @@ Specifies that if a message header exists, the header will be shown.
...
@@ -1354,43 +1183,37 @@ Specifies that if a message header exists, the header will be shown.
If /HEADER or /NOHEADER is specified, the setting will apply for all
If /HEADER or /NOHEADER is specified, the setting will apply for all
further reads in the selected folder. The default is /HEADER for non-
further reads in the selected folder. The default is /HEADER for non-
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
NEWS folders, /NOHEADER for NEWS folders. If the SET STRIP command
is set for the folder, it will change the default to be /HEADER.
is set for the folder, it will change the default to be /HEADER.`
,
`
,
},
},
"/MARKED"
:
{
"/MARKED"
:
{
Description
:
`Specifies to read only messages that have been marked (marked messages
Description
:
`Specifies to read only messages that have been marked (marked messages
are indicated by an asterisk). Using /MARKED is equivalent to
are indicated by an asterisk). Using /MARKED is equivalent to
selecting the folder with /MARKED, i.e. only marked messages will be
selecting the folder with /MARKED, i.e. only marked messages will be
shown and be able to be read. To see all messages, use either /ALL,
shown and be able to be read. To see all messages, use either /ALL,
or reselect the folder.
or reselect the folder.`
,
`
,
},
},
"/UNMARKED"
:
{
"/UNMARKED"
:
{
Description
:
`Specifies to read only messages that have not been marked (marked
Description
:
`Specifies to read only messages that have not been marked (marked
messages are indicated by an asterisk). Using /UNMARKED is equivalent
messages are indicated by an asterisk). Using /UNMARKED is equivalent
to selecting the folder with /UNMARKED, i.e. only unmarked messages
to selecting the folder with /UNMARKED, i.e. only unmarked messages
will be shown and be able to be read. To see all messages, either
will be shown and be able to be read. To see all messages, either
reselect the folder or specify /ALL.
reselect the folder or specify /ALL.`
,
`
,
},
},
"/SEEN"
:
{
"/SEEN"
:
{
Description
:
`Specifies to read only messages that have been seen (indicated by a
Description
:
`Specifies to read only messages that have been seen (indicated by a
greater than sign). Using /SEEN is equivalent to selecting the folder
greater than sign). Using /SEEN is equivalent to selecting the folder
with /SEEN, i.e. only seen messages will be shown and be able to be
with /SEEN, i.e. only seen messages will be shown and be able to be
read. To see all messages, use either /ALL, or reselect the folder.
read. To see all messages, use either /ALL, or reselect the folder.`
,
`
,
},
},
"/UNSEEN"
:
{
"/UNSEEN"
:
{
Description
:
`Specifies to read only messages that have not been seen (seen message
Description
:
`Specifies to read only messages that have not been seen (seen message
are indicated by a greater than sign). Using /UNSEEN is equivalent to
are indicated by a greater than sign). Using /UNSEEN is equivalent to
selecting the folder with /UNSEEN, i.e. only unseen messages will be
selecting the folder with /UNSEEN, i.e. only unseen messages will be
shown and be able to be read. To see all messages, use either /ALL, or
shown and be able to be read. To see all messages, use either /ALL, or
reselect the folder.
reselect the folder.`
,
`
,
},
},
"/NEW"
:
{
"/NEW"
:
{
Description
:
`Specifies to read the first unread message.
Description
:
`Specifies to read the first unread message.`
,
`
,
},
},
"/PAGE"
:
{
"/PAGE"
:
{
Description
:
`/[NO]PAGE
Description
:
`/[NO]PAGE
...
@@ -1399,15 +1222,13 @@ Specifies that the display of the message will pause when it reaches the
...
@@ -1399,15 +1222,13 @@ Specifies that the display of the message will pause when it reaches the
end of the page. If /NOPAGE is specified, the whole message will be
end of the page. If /NOPAGE is specified, the whole message will be
displayed. This is useful for terminals that can store more than one
displayed. This is useful for terminals that can store more than one
screenful at a time, and that have a remote printer that can then print
screenful at a time, and that have a remote printer that can then print
the contents of the terminal's memory.
the contents of the terminal's memory.`
,
`
,
},
},
"/SINCE"
:
{
"/SINCE"
:
{
Description
:
`/SINCE=date
Description
:
`/SINCE=date
Specifies to read the first message created on or after the specified
Specifies to read the first message created on or after the specified
date. If no date is specified, the default is TODAY.
date. If no date is specified, the default is TODAY.`
,
`
,
},
},
},
},
},
},
...
@@ -1416,8 +1237,9 @@ date. If no date is specified, the default is TODAY.
...
@@ -1416,8 +1237,9 @@ date. If no date is specified, the default is TODAY.
remove the folder.
remove the folder.
Format:
Format:
REMOVE folder-name
REMOVE folder-name`
,
`
,
MinArgs
:
1
,
MaxArgs
:
1
,
},
},
"REPLY"
:
{
"REPLY"
:
{
Description
:
`Adds message with subject of message being the subject of the currently
Description
:
`Adds message with subject of message being the subject of the currently
...
@@ -1425,19 +1247,17 @@ read message with "RE:" preceeding it. Format and qualifiers is exactly
...
@@ -1425,19 +1247,17 @@ read message with "RE:" preceeding it. Format and qualifiers is exactly
the same as the ADD command except for /NOINDENT and /EXTRACT.
the same as the ADD command except for /NOINDENT and /EXTRACT.
Format:
Format:
REPLY [file-name]
REPLY [file-name]
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EXTRACT"
:
{
"/EXTRACT"
:
{
Description
:
`Specifies that the text of the message should be included in the reply
Description
:
`Specifies that the text of the message should be included in the reply
mail message. This qualifier is valid only when used with /EDIT. The
mail message. This qualifier is valid only when used with /EDIT. The
text of the message is indented with > at the beginning of each line.
text of the message is indented with > at the beginning of each line.
This can be suppressed with /NOINDENT.
This can be suppressed with /NOINDENT.`
,
`
,
},
},
"/NOINDENT"
:
{
"/NOINDENT"
:
{
Description
:
`See /EXTRACT for information on this qualifier.
Description
:
`See /EXTRACT for information on this qualifier.`
,
`
,
},
},
},
},
},
},
...
@@ -1451,50 +1271,43 @@ message to the owner of the currently read message.
...
@@ -1451,50 +1271,43 @@ message to the owner of the currently read message.
If you wish to use another method for sending the mail, define BULL_MAILER
If you wish to use another method for sending the mail, define BULL_MAILER
to point to a command procedure. This procedure will then be executed in
to point to a command procedure. This procedure will then be executed in
place of MAIL, and the parameters passed to it are the username and subject
place of MAIL, and the parameters passed to it are the username and subject
of the message.
of the message.
`
,
`
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/CC"
:
{
"/CC"
:
{
Description
:
`/CC=user[s]
Description
:
`/CC=user[s]
Specifies additional users that should receive the reply.
Specifies additional users that should receive the reply.`
,
`
,
},
},
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used for creating the reply mail
Description
:
`Specifies that the editor is to be used for creating the reply mail
message.
message.`
,
`
,
},
},
"/EXTRACT"
:
{
"/EXTRACT"
:
{
Description
:
`Specifies that the text of the message should be included in the reply
Description
:
`Specifies that the text of the message should be included in the reply
mail message. This qualifier is valid only when used with /EDIT. The
mail message. This qualifier is valid only when used with /EDIT. The
text of the message is indented with > at the beginning of each line.
text of the message is indented with > at the beginning of each line.
This can be suppressed with /NOINDENT.
This can be suppressed with /NOINDENT.`
,
`
,
},
},
"/GROUPS"
:
{
"/GROUPS"
:
{
Description
:
`/GROUPS=(newsgroup,[...])
Description
:
`/GROUPS=(newsgroup,[...])
Valid only if a NEWS group is selected and /LIST is present. Specifies
Valid only if a NEWS group is selected and /LIST is present. Specifies
to send the message to the specified NEWS group(s) in addition to the
to send the message to the specified NEWS group(s) in addition to the
selected NEWS group.
selected NEWS group.`
,
`
,
},
},
"/LIST"
:
{
"/LIST"
:
{
Description
:
`Specifies that the reply should also be sent to the network mailing list
Description
:
`Specifies that the reply should also be sent to the network mailing list
associated with the folder. The mailing list address should be stored
associated with the folder. The mailing list address should be stored
in the folder description. See CREATE/DESCRIPTION or MODIFY/DESCRIPTION
in the folder description. See CREATE/DESCRIPTION or MODIFY/DESCRIPTION
for more informaton.
for more informaton.`
,
`
,
},
},
"/NOINDENT"
:
{
"/NOINDENT"
:
{
Description
:
`See /EXTRACT for information on this qualifier.
Description
:
`See /EXTRACT for information on this qualifier.`
,
`
,
},
},
"/NOSIGNATURE"
:
{
"/NOSIGNATURE"
:
{
Description
:
`Specifies to suppress the automatically appended signature, if one exists.
Description
:
`Specifies to suppress the automatically appended signature, if one exists.
Signatures are appended for postings to mailing lists and to responds.
Signatures are appended for postings to mailing lists and to responds.
See the help topic POST Signature_file for signature information.
See the help topic POST Signature_file for signature information.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`/SUBJECT=text
Description
:
`/SUBJECT=text
...
@@ -1503,14 +1316,12 @@ Specifies the subject of the mail message. If the text consists of more
...
@@ -1503,14 +1316,12 @@ Specifies the subject of the mail message. If the text consists of more
than one word, enclose the text in quotation marks (").
than one word, enclose the text in quotation marks (").
If you omit this qualifier, the description of the message will be used
If you omit this qualifier, the description of the message will be used
as the subject preceeded by "RE: ".
as the subject preceeded by "RE: ".`
,
`
,
},
},
},
},
},
},
"QUIT"
:
{
"QUIT"
:
{
Description
:
`Exits the BULLETIN program.
Description
:
`Exits the BULLETIN program.`
,
`
,
Action
:
ActionQuit
,
Action
:
ActionQuit
,
},
},
"SEARCH"
:
{
"SEARCH"
:
{
...
@@ -1526,12 +1337,12 @@ search includes both the text of the message, and the description header.
...
@@ -1526,12 +1337,12 @@ search includes both the text of the message, and the description header.
If a "search-string" is not specified, a search is made using the
If a "search-string" is not specified, a search is made using the
previously specified string, starting with the message following the
previously specified string, starting with the message following the
one you are currently reading (or have just read). Once started, a
one you are currently reading (or have just read). Once started, a
search can be aborted by typing a CTRL-C.
search can be aborted by typing a CTRL-C.`
,
`
,
MinArgs
:
1
,
MaxArgs
:
1
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/EDIT"
:
{
"/EDIT"
:
{
Description
:
`Specifies that the editor is to be used for reading the message.
Description
:
`Specifies that the editor is to be used for reading the message.`
,
`
,
},
},
"/FOLDER"
:
{
"/FOLDER"
:
{
Description
:
`/FOLDER=(folder,[...])
Description
:
`/FOLDER=(folder,[...])
...
@@ -1541,30 +1352,25 @@ selecting the first folder in the list and searching the messages for
...
@@ -1541,30 +1352,25 @@ selecting the first folder in the list and searching the messages for
a match. If, during a search, no more matches or messages are found,
a match. If, during a search, no more matches or messages are found,
the next folder in the list is automatically selected. The presently
the next folder in the list is automatically selected. The presently
selected folder can be included in the search by specifying "" as the
selected folder can be included in the search by specifying "" as the
first folder in the list.
first folder in the list.`
,
`
,
},
},
"/REPLY"
:
{
"/REPLY"
:
{
Description
:
`Specifies that messages are to be searched for that are replies to the
Description
:
`Specifies that messages are to be searched for that are replies to the
currently read message, or the message specified by /START. Replies are
currently read message, or the message specified by /START. Replies are
messages which have subject of the original message prefaced by "Re:".
messages which have subject of the original message prefaced by "Re:".`
,
`
,
},
},
"/REVERSE"
:
{
"/REVERSE"
:
{
Description
:
`Specifies that the messages are to be searched in reverse order. If
Description
:
`Specifies that the messages are to be searched in reverse order. If
no starting message is specified, the search is started from the last
no starting message is specified, the search is started from the last
message.
message.`
,
`
,
},
},
"/START"
:
{
"/START"
:
{
Description
:
`/START=message_number
Description
:
`/START=message_number
Specifies the message number to start the search at.
Specifies the message number to start the search at.`
,
`
,
},
},
"/SUBJECT"
:
{
"/SUBJECT"
:
{
Description
:
`Specifies that only the subject of the messages are to be searched.
Description
:
`Specifies that only the subject of the messages are to be searched.`
,
`
,
},
},
},
},
},
},
...
@@ -1592,8 +1398,37 @@ NOTE: The list of SEEN messages for non-NEWS folders are stored in a
...
@@ -1592,8 +1398,37 @@ NOTE: The list of SEEN messages for non-NEWS folders are stored in a
file username.BULLMARK, and NEWS folders are stored in
file username.BULLMARK, and NEWS folders are stored in
username.NEWSMARK. The files are created in the directory pointed to by
username.NEWSMARK. The files are created in the directory pointed to by
the logical name BULL_MARK. If BULL_MARK is not defined, SYS$LOGIN
the logical name BULL_MARK. If BULL_MARK is not defined, SYS$LOGIN
will be used.
will be used.`
,
`
,
MinArgs
:
1
,
MaxArgs
:
1
,
},
"UNSEEN"
:
{
Description
:
`Sets the current or message-id message as seen. This allows you to keep
track of messages on a per message basis. Seen messages are displayed
with a greater than sign in the left hand column of the directory
listing. Once you have used the SEEN command once, messages will be
automatically be set as being SEEN when they are read. The UNSEEN
command sets the current or message-id message as unseen.
Format:
SEEN [message-number or numbers]
UNSEEN [message-number or numbers]
Keeping track of seen messages requires very little overhead for NEWS
folders. However, there is a moderate overhead for regular non-NEWS
folders. If you have used the SEEN command and wish to disable the
automatic marking of messages in regular folders as SEEN when they are
read, type the command SEEN/NOREAD. To reenable, simply use the SEEN
command again.
NOTE: The list of SEEN messages for non-NEWS folders are stored in a
file username.BULLMARK, and NEWS folders are stored in
username.NEWSMARK. The files are created in the directory pointed to by
the logical name BULL_MARK. If BULL_MARK is not defined, SYS$LOGIN
will be used.`
,
MinArgs
:
1
,
MaxArgs
:
1
,
},
},
"SELECT"
:
{
"SELECT"
:
{
Description
:
`Selects a folder of messages. See HELP Folders for a description of a
Description
:
`Selects a folder of messages. See HELP Folders for a description of a
...
@@ -1623,14 +1458,12 @@ detecting if a period is present in the name being specified, as most
...
@@ -1623,14 +1458,12 @@ detecting if a period is present in the name being specified, as most
NEWS groups contain a period, whereas a real folder cannot. A few
NEWS groups contain a period, whereas a real folder cannot. A few
special NEWS groups, i.e. JUNK and CONTROL, do not contain a period. If
special NEWS groups, i.e. JUNK and CONTROL, do not contain a period. If
desired, you can select these groups by enclosing them in double quotes
desired, you can select these groups by enclosing them in double quotes
("), and typing the name in lower case.
("), and typing the name in lower case.`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"/MARKED"
:
{
"/MARKED"
:
{
Description
:
`Selects only messages that have been marked (indicated by an asterisk).
Description
:
`Selects only messages that have been marked (indicated by an asterisk).
After using /MARKED, in order to see all messages, the folder will have
After using /MARKED, in order to see all messages, the folder will have
to be reselected.
to be reselected.`
,
`
,
},
},
},
},
},
},
...
@@ -1640,8 +1473,7 @@ characteristics of the BULLETIN Utility.
...
@@ -1640,8 +1473,7 @@ characteristics of the BULLETIN Utility.
Format:
Format:
SET option
SET option`
,
`
,
Flags
:
dclish
.
Flags
{
Flags
:
dclish
.
Flags
{
"ACCESS"
:
{
"ACCESS"
:
{
Description
:
`Controls access to a private folder. A private folder can only be
Description
:
`Controls access to a private folder. A private folder can only be
...
@@ -1711,8 +1543,7 @@ extremely lengthy operation to check each user to see if have that id
...
@@ -1711,8 +1543,7 @@ extremely lengthy operation to check each user to see if have that id
assigned to them. The alternative is to set the defaults for all users
assigned to them. The alternative is to set the defaults for all users
after every SET ACCESS, but that might cause problems with users who
after every SET ACCESS, but that might cause problems with users who
have manually reset those defaults. The correct solution requires a
have manually reset those defaults. The correct solution requires a
large programming modification, which will be done in a later version.
large programming modification, which will be done in a later version.`
,
`
,
},
},
"ALWAYS"
:
{
"ALWAYS"
:
{
Description
:
`Specifies that the selected folder has the ALWAYS attribute. This
Description
:
`Specifies that the selected folder has the ALWAYS attribute. This
...
@@ -1726,8 +1557,7 @@ sure they are read.
...
@@ -1726,8 +1557,7 @@ sure they are read.
Format:
Format:
SET [NO]ALWAYS
SET [NO]ALWAYS`
,
`
,
},
},
"BBOARD"
:
{
"BBOARD"
:
{
Description
:
`Specifies a username to be used as a BBOARD destination. Mail which is
Description
:
`Specifies a username to be used as a BBOARD destination. Mail which is
...
@@ -1857,8 +1687,7 @@ be grouped separately.
...
@@ -1857,8 +1687,7 @@ be grouped separately.
The BBOARD account must match the mailing list name. If you prefer not
The BBOARD account must match the mailing list name. If you prefer not
to have them match, then you must include the actual address of the
to have them match, then you must include the actual address of the
mailing list in the folder description in the format described under
mailing list in the folder description in the format described under
HELP CREATE /DESCRIPTION.
HELP CREATE /DESCRIPTION.`
,
`
,
},
},
"BRIEF"
:
{
"BRIEF"
:
{
Description
:
`Controls whether you will be alerted upon logging that there are new
Description
:
`Controls whether you will be alerted upon logging that there are new
...
@@ -1889,8 +1718,7 @@ specified, the selected folder is modified. Valid only with NOBRIEF.
...
@@ -1889,8 +1718,7 @@ specified, the selected folder is modified. Valid only with NOBRIEF.
Specifies that BRIEF is a permanent flag and cannot be changed by the
Specifies that BRIEF is a permanent flag and cannot be changed by the
individual, except if changing to SHOWNEW or READNEW. This is a
individual, except if changing to SHOWNEW or READNEW. This is a
privileged qualifier.
privileged qualifier.`
,
`
,
},
},
"CONTINUOUS_BRIEF"
:
{
"CONTINUOUS_BRIEF"
:
{
Description
:
`Specifies that if BRIEF is set for a folder, and there are new messages,
Description
:
`Specifies that if BRIEF is set for a folder, and there are new messages,
...
@@ -1904,8 +1732,7 @@ are detected.
...
@@ -1904,8 +1732,7 @@ are detected.
SET [NO]CONTINUOUS_BRIEF
SET [NO]CONTINUOUS_BRIEF
NOTE: Both SET GENERIC and SET CONTINUOUS_BRIEF cannot be set for the
NOTE: Both SET GENERIC and SET CONTINUOUS_BRIEF cannot be set for the
same user.
same user.`
,
`
,
},
},
"DEFAULT_EXPIRE"
:
{
"DEFAULT_EXPIRE"
:
{
Description
:
`Specifies the number of days the message created by BBOARD (or direct
Description
:
`Specifies the number of days the message created by BBOARD (or direct
...
@@ -1928,8 +1755,7 @@ specified for a folder with a BBOARD, or else the messages will
...
@@ -1928,8 +1755,7 @@ specified for a folder with a BBOARD, or else the messages will
disappear.
disappear.
NOTE: This value is the same value that SET BBOARD/EXPIRATION specifies.
NOTE: This value is the same value that SET BBOARD/EXPIRATION specifies.
If one is changed, the other will change also.
If one is changed, the other will change also.`
,
`
,
},
},
"DIGEST"
:
{
"DIGEST"
:
{
Description
:
`Affect only messages which are added via either the BBOARD option, or
Description
:
`Affect only messages which are added via either the BBOARD option, or
...
@@ -1943,7 +1769,6 @@ messages will be separated into individual BULLETIN messages.
...
@@ -1943,7 +1769,6 @@ messages will be separated into individual BULLETIN messages.
SET [NO]DIGEST
SET [NO]DIGEST
The command SHOW FOLDER/FULL will show if DIGEST has been set.
The command SHOW FOLDER/FULL will show if DIGEST has been set.
`
,
`
,
},
},
"DUMP"
:
{
"DUMP"
:
{
...
@@ -1956,8 +1781,7 @@ and it is located in the folder directory.
...
@@ -1956,8 +1781,7 @@ and it is located in the folder directory.
SET [NO]DUMP
SET [NO]DUMP
The command SHOW FOLDER/FULL will show if dump has been set. (NOTE:
The command SHOW FOLDER/FULL will show if dump has been set. (NOTE:
SHOW FOLDER/FULL is a privileged command.)
SHOW FOLDER/FULL is a privileged command.)`
,
`
,
},
},
"EXPIRE_LIMIT"
:
{
"EXPIRE_LIMIT"
:
{
Description
:
`Specifies expiration limit that is allowed for messages. Non-privileged
Description
:
`Specifies expiration limit that is allowed for messages. Non-privileged
...
@@ -1967,8 +1791,7 @@ specified. Privileged users can exceed the limit.
...
@@ -1967,8 +1791,7 @@ specified. Privileged users can exceed the limit.
SET [NO]EXPIRE_LIMIT [days]
SET [NO]EXPIRE_LIMIT [days]
The command SHOW FOLDER/FULL will show the expiration limit, if one
The command SHOW FOLDER/FULL will show the expiration limit, if one
exists. (NOTE: SHOW FOLDER/FULL is a privileged command.)
exists. (NOTE: SHOW FOLDER/FULL is a privileged command.)`
,
`
,
},
},
"FOLDER"
:
{
"FOLDER"
:
{
Description
:
`Select a folder of messages. Identical to the SELECT command. See help
Description
:
`Select a folder of messages. Identical to the SELECT command. See help
...
...
...
...
This diff is collapsed.
Click to expand it.
repl/help.go
+
18
−
3
View file @
59b058aa
...
@@ -78,9 +78,24 @@ func ActionHelp(cmd *dclish.Command) error {
...
@@ -78,9 +78,24 @@ func ActionHelp(cmd *dclish.Command) error {
wordup
:=
strings
.
ToUpper
(
cmd
.
Args
[
0
])
wordup
:=
strings
.
ToUpper
(
cmd
.
Args
[
0
])
helptext
,
ok
:=
helpmap
[
wordup
]
helptext
,
ok
:=
helpmap
[
wordup
]
if
!
ok
{
if
!
ok
{
possibles
:=
[]
string
{}
for
word
:=
range
helpmap
{
if
strings
.
HasPrefix
(
word
,
wordup
)
{
possibles
=
append
(
possibles
,
word
)
}
}
switch
len
(
possibles
)
{
case
0
:
fmt
.
Printf
(
"ERROR: Topic not found: '%s'.
\n
"
,
cmd
.
Args
[
0
])
fmt
.
Printf
(
"ERROR: Topic not found: '%s'.
\n
"
,
cmd
.
Args
[
0
])
return
nil
return
nil
case
1
:
helptext
=
helpmap
[
possibles
[
0
]]
default
:
fmt
.
Printf
(
"ERROR: Ambiguous topic '%s' (matches %s)
\n
"
,
cmd
.
Args
[
0
],
possibles
)
return
nil
}
}
}
fmt
.
Printf
(
"%s
\n
"
,
helptext
)
fmt
.
Printf
(
"%s
\n
\n
"
,
helptext
)
return
nil
return
nil
}
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
sign in
to comment