cmdr
Check-in [b1fbdec2c5]
Not logged in
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to tclconference@googlegroups.com
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Added first manpages, for the utility packages (util, vcommon, help*).
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:b1fbdec2c5f4f548e62aec6a779418c76f2c065e
User & Date: aku 2013-10-23 04:58:49
Context
2013-10-25
00:19
Properly export the path validation types. check-in: 745978d8ff user: andreask tags: trunk
2013-10-23
04:58
Added first manpages, for the utility packages (util, vcommon, help*). check-in: b1fbdec2c5 user: aku tags: trunk
2013-10-21
21:55
Continued filling out the cmdr requirements. check-in: 4bacb86a2f user: andreask tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Added doc/help.man.























































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
[comment {-*- tcl -*- doctools manpage}]
[include parts/definitions.inc]
[manpage_begin [vset PROJECT]_help [vset MAN_SECTION] [vset VERSION]]
[include parts/module.inc]
[require cmdr::help]
[titledesc {Utilities for help text formatting and setup - Internal}]
[description]
[include parts/welcome.inc]

This internal package implements the four standard help formats
[const full], [const short], [const list], and [const by-category].

[para] It provides a single utility command used by the other parts of
the framework to add a [syscmd help] command to any
[package cmdr::actor] requiring such.



[section API]
[list_begin definitions]
[comment {- - -- --- ----- -------- -------------}]
[call [cmd ::cmdr::help] [method auto] [arg actor]]

When invoked this command extends the [arg actor] with a [const help]
command. The result of the command is the empty string.

[para] The inserted command will accept all known format names as
options, enabling the user to choose the form of the help. By default
the format [const by-category] will be used, except if a command name
was given to [syscmd help], then the default will be [const full].

[para] An additional option accepted by [syscmd help] is
[const --width], giving the user control over the length of lines
in the help. By default help will be formatted to the width of the
terminal.

[list_begin arguments]
[arg_def [package cmdr::actor] actor]
The [package cmdr::actor] instance to be extended with [syscmd help].
[list_end]
[list_end]
[include parts/feedback.inc]
[manpage_end]

Added doc/help_json.man.









































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[comment {-*- tcl -*- doctools manpage}]
[include parts/definitions.inc]
[manpage_begin [vset PROJECT]_help_json [vset MAN_SECTION] [vset VERSION]]
[include parts/module.inc]
[require cmdr::help::json]
[titledesc {Formatting help as JSON object}]
[description]
[include parts/welcome.inc]

This package provides a single command implementing the help format
[const json]. This format generates help in the form of a nested JSON
object containing all details of the command hierarchy, including
internals.

[para] To activate the format simply [example {
    package require cmdr::help::json
}] it. Nothing more is needed.

[include parts/feedback.inc]
[manpage_end]

Added doc/help_sql.man.







































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[comment {-*- tcl -*- doctools manpage}]
[include parts/definitions.inc]
[manpage_begin [vset PROJECT]_help_sql [vset MAN_SECTION] [vset VERSION]]
[include parts/module.inc]
[require cmdr::help::sql]
[titledesc {Formatting help as series of SQL commands}]
[description]
[include parts/welcome.inc]

This package provides a single command implementing the help format
[const sql]. This format generates help as a series of SQL commands
filling a simple database with the command hierarchy.

[para] To activate the format simply [example {
    package require cmdr::help::sql
}] it. Nothing more is needed.

[include parts/feedback.inc]
[manpage_end]

Added doc/parts/figures/erd.dia.







































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# -*- tcl -*- tcl.tk//DSL diagram//EN//1.0
## ====================================================================
## DSL for dependency diagram. Default parameters.

#source [file join [file dirname [file normalize [info script]]] dsl_dependencies.inc]

## ====================================================================
## Dependencies, bottom-up, one procedure per class.

proc entity {args} { box color blue {*}$args }

proc officer   {} { entity officer   }
proc private   {} { entity private   }
proc config    {} { entity config    }
proc parameter {} { entity parameter }
proc actor     {} { entity actor }

proc link {a b c} {
    circle radius [1 mm] fillcolor black
    arrow ->
    group { text text $a with sw at [last arrow start] }
    group { text text $b with se at [last arrow end]   }
    group { text text $c with n at [last arrow center]   }
    circle radius [1 mm] fillcolor white
}

proc vlink {a b c} {
    circle radius [1 mm] fillcolor black
    arrow ->
    group { text text $a with se at [last arrow start] }
    group { text text $b with ne at [last arrow end]   }
    group { text text $c with w at [last arrow center]   }
    circle radius [1 mm] fillcolor white
}

officer
group {
    south
    circle radius [1 mm] fillcolor black at [0.75 between [last box sw] [last box se]]
    arrow -> then south then west [1 cm] then north
    group { text text 1   with nw at [last arrow start] }
    group { text text 0:n with ne at [last arrow end]   }
    group { text text has with n at [last arrow center]   }
    circle radius [1 mm] fillcolor white
}

link 1 0:n has
private
group {
    north
    vlink 1 1 is-a
    actor
}
group {
    ne
    circle radius [1 mm] fillcolor black with sw at [3rd last box ne]
    circle radius [1 mm] fillcolor white with ne at [last box sw]
    arrow -> from [2nd last circle ne] to [last circle sw]
    group { text text 1    with se at [last arrow start] }
    group { text text 1    with se at [last arrow end]   }
    group { text text is-a with nw at [last arrow center]   }
}

link 1 1 has
config
link 1 0:n has
parameter

Added doc/util.man.

































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[comment {-*- tcl -*- doctools manpage}]
[include parts/definitions.inc]
[manpage_begin [vset PROJECT]_util [vset MAN_SECTION] [vset VERSION]]
[include parts/module.inc]
[require cmdr::util]
[titledesc {General Utilities - Internal}]
[description]
[include parts/welcome.inc]

This internal package provides a single utility command.

[section API]
[list_begin definitions]
[comment {- - -- --- ----- -------- -------------}]
[call [cmd ::cmdr::util] [method padr] [arg list]]

When invoked this command pads all elements of the specified
[arg list] at their end with space (ASCII 32 decimal) characters to
make them all the same length, the length of the longest element in
the list.

[para] The modified list is returned as the result of the command.

[list_begin arguments]
[arg_def list list]
A list of strings to normalize in length by appending space characters
as needed.
[list_end]

[list_end]
[include parts/feedback.inc]
[manpage_end]

Added doc/vcommon.man.

















































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
[comment {-*- tcl -*- doctools manpage}]
[include parts/definitions.inc]
[manpage_begin [vset PROJECT]_validate_common [vset MAN_SECTION] [vset VERSION]]
[include parts/module.inc]
[require cmdr::validate::common]
[titledesc {Utilities for Validation Types}]
[description]
[include parts/welcome.inc]

This package publicly exports three commands for use in the
implementation of validation types.

The standard validation types defined in package
[package cmdr::validate] make use of these commands.

[section API]
[list_begin definitions]
[comment {- - -- --- ----- -------- -------------}]
[call [cmd ::cmdr::validate::common] [method fail] [arg p] [arg code] [arg type] [arg x]]

When invoked this command throws an error indicating a validation type
failure. The arguments provide the information used to construct both
error message and code.

[list_begin arguments]
[arg_def [package cmdr::parameter] p]
The [package cmdr::parameter] instance whose validation failed. The
error message will contain this parameter's type and label (flag in
case of an option).

[arg_def list code]
A list providing additional elements for the error code, detailing the
internal name of the validation type triggering the error.

[arg_def string type]
A string providing the human-readable name of the validation type
triggering the error.

[arg_def string x]
The string value failing the validation.
[list_end]


[comment {- - -- --- ----- -------- -------------}]
[call [cmd ::cmdr::validate::common] [method complete-enum] [arg choices] [arg nocase] [arg buffer]]

When invoked this command returns a list of strings containing just
the elements of [arg choices] the value of [arg buffer] is a prefix
of. When [arg nocase] is set the command will ignore letter case and
treat the string in [arg buffer] as all-lowercase.

[list_begin arguments]
[arg_def list choices]
The list of values which can complete the data in [arg buffer].

[arg_def boolean nocase]
A boolean flag specifying if the completion is done ignoring
letter-case ([const true]), or not ([const false])).

[arg_def string buffer]
The string to complete via the list of [arg choices].

[list_end]

[comment {- - -- --- ----- -------- -------------}]
[call [cmd ::cmdr::validate::common] [method complete-glob] [arg filter] [arg buffer]]

When invoked this command returns a list of strings, the paths in the
filesystem the value of [arg buffer] is a prefix of, and not rejected
by the [arg filter] command (prefix).

[para] Note that when the value of [arg buffer] is a relative path the
current working directory is used to locate matches.

[list_begin arguments]
[arg_def cmd-prefix filter]
A command prefix taking a single argument, the candidate path, and
returning a boolean value indicating (non-)acceptance of the path. A
result of [const true] accepts the candidate, [const false] rejects
it.

[arg_def string buffer]
The string, a partial path, to complete.
[list_end]

[list_end]
[include parts/feedback.inc]
[manpage_end]

Changes to embedded/man/files/cmdr_changes.n.

1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
...
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
'\"
'\" Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/man/files/cmdr_changes.n' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_changes" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_changes \- Cmdr - Log of Changes
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries.
.PP
For availability please read \fICmdr - How To Get The Sources\fR.
.PP
This document provides an overview of the changes \fBcmdr\fR
underwent from version to version.
.SH CHANGES
This is the first release of cmdr.
The changes therefore describe the initial features of the system.
.PP
In detail:
.IP [1]
cmdr requires Tcl 8.5 or higher.
Tcl 8.4 or less is not supported.
.IP [2]
The framework provides a DSL for the declaration of a hierarchy
of commands and their parameters (named options, positional
arguments, hidden state), with help texts, type information, and
various callbacks (command actions, parameter definition,
parameter completion, type validation, command completion, etc.)
.IP [3]
At runtime the framework provides parsing and processing of command
lines per specifications written in that DSL, determining the command
to run, and the mapping from command line words to its parameters.
.IP [4]
The framework also provides shells for the interactive entry of
commands and parameters, with command line completion.
.IP [5]
Last, but not least is the automatic generation of command line
help for commands and parameters, based on the information provided
in a specification.
.PP
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
\fICmdr Tickets\fR [https:/core.tcl.tk/akupries/cmdr].
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

|







 







|

|


|

|
|



|
|





|



|


|



|







 







|

|


|








1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
...
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
'\"
'\" Generated from file 'cmdr_changes\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_changes" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_changes \- Cmdr - Log of Changes
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
This document provides an overview of the changes \fBcmdr\fR
underwent from version to version\&.
.SH CHANGES
This is the first release of cmdr\&.
The changes therefore describe the initial features of the system\&.
.PP
In detail:
.IP [1]
cmdr requires Tcl 8\&.5 or higher\&.
Tcl 8\&.4 or less is not supported\&.
.IP [2]
The framework provides a DSL for the declaration of a hierarchy
of commands and their parameters (named options, positional
arguments, hidden state), with help texts, type information, and
various callbacks (command actions, parameter definition,
parameter completion, type validation, command completion, etc\&.)
.IP [3]
At runtime the framework provides parsing and processing of command
lines per specifications written in that DSL, determining the command
to run, and the mapping from command line words to its parameters\&.
.IP [4]
The framework also provides shells for the interactive entry of
commands and parameters, with command line completion\&.
.IP [5]
Last, but not least is the automatic generation of command line
help for commands and parameters, based on the information provided
in a specification\&.
.PP
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Changes to embedded/man/files/cmdr_howto_development.n.

1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
...
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
'\"
'\" Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/man/files/cmdr_howto_development.n' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_development" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_development \- Cmdr - The Developer's Guide
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries.
.PP
For availability please read \fICmdr - How To Get The Sources\fR.
.PP
.PP
The audience of this document are anyone wishing to modify
Cmdr in any way, shape, or form. This can be a maintainer
fixing bugs, a developer adding functionality, or patching it to
accommodate local cicumstances, etc.
.PP
Please read
.IP [1]
\fICmdr - How To Get The Sources\fR and
.IP [2]
\fICmdr - The Installer's Guide\fR
.PP
first, if that was not done already. Here we assume that the sources
are already available in a directory of your choice, that it is known
how to build and install the project, and that all the necessary
requisites are available.
.SH "DEVELOPMENT TOOLS"
Cmdr (currently) does not require tools beyond those needed for
build and installation.
.SH "DEMONSTRATION/EXAMPLE APPLICATIONS"
Cmdr (currently) does not have demonstrations, nor examples.
.SH "DIRECTORY STRUCTURE"
Explain the physical layout (directory structure).
.SH "ARCHITECTURE & CONCEPTS"
.IP [1]
Explain the internal architecture.
.IP [2]
Explain file dependencies, if any.
.IP [3]
Explain package dependencies, if any.
.IP [4]
Explain the internal data structures, if any.
.IP [5]
Explain entity relationships (UML ERD), if any.
.IP [6]
Explain important operation sequences (UML SD), if any.
.PP
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
\fICmdr Tickets\fR [https:/core.tcl.tk/akupries/cmdr].
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

|







 







|

|



|

|







|


|


|

|

|


|

|

|

|

|

|







 







|

|


|








1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
...
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
'\"
'\" Generated from file 'cmdr_howto_development\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_development" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_development \- Cmdr - The Developer's Guide
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
.PP
The audience of this document are anyone wishing to modify
Cmdr in any way, shape, or form\&. This can be a maintainer
fixing bugs, a developer adding functionality, or patching it to
accommodate local cicumstances, etc\&.
.PP
Please read
.IP [1]
\fICmdr - How To Get The Sources\fR and
.IP [2]
\fICmdr - The Installer's Guide\fR
.PP
first, if that was not done already\&. Here we assume that the sources
are already available in a directory of your choice, that it is known
how to build and install the project, and that all the necessary
requisites are available\&.
.SH "DEVELOPMENT TOOLS"
Cmdr (currently) does not require tools beyond those needed for
build and installation\&.
.SH "DEMONSTRATION/EXAMPLE APPLICATIONS"
Cmdr (currently) does not have demonstrations, nor examples\&.
.SH "DIRECTORY STRUCTURE"
Explain the physical layout (directory structure)\&.
.SH "ARCHITECTURE & CONCEPTS"
.IP [1]
Explain the internal architecture\&.
.IP [2]
Explain file dependencies, if any\&.
.IP [3]
Explain package dependencies, if any\&.
.IP [4]
Explain the internal data structures, if any\&.
.IP [5]
Explain entity relationships (UML ERD), if any\&.
.IP [6]
Explain important operation sequences (UML SD), if any\&.
.PP
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Changes to embedded/man/files/cmdr_howto_get_sources.n.

1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
...
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
'\"
'\" Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/man/files/cmdr_howto_get_sources.n' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_howto_get_sources" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_howto_get_sources \- Cmdr - How To Get The Sources
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries.
.PP
For availability please read \fICmdr - How To Get The Sources\fR.
.PP
.PP
The audience of this document are anyone wishing to either have just a
look at Cmdr's sources, or to build the project, or to extend
and modify it. The list of \fBRelated Documents\fR provides
references to information for the latter two.
.SH LOCATION
The official repository of the project is at \fIhttps:/core.tcl.tk/akupries/cmdr\fR.
A mirror has been set up at
\fIhttp://chiselapp.com/user/andreas_kupries/repository/Kettle\fR,
in case of trouble with the main location.
.SH RETRIEVAL
Assuming that you simply wish to look at the sources of the project,
or build a specific revision, the easiest way of retrieving the
sources is to:
.IP [1]
Log as "anonymous" into the repository (see \fBLocation\fR).
Use the semi-random password in the captcha.
.IP [2]
Go to the "Timeline".
.IP [3]
Choose the revision you wish to have and
.IP [4]
follow its link to its detailed information page.
.IP [5]
On that page, choose either the "ZIP" or "Tarball" link to get
a copy of this revision in the format of your choice.
.PP
.SH "SOURCE CODE MANAGEMENT"
For the curious (or a developer-to-be), the sources of this project
are managed by the \fIFossil SCM\fR [http://www.fossil-scm.org].
Binaries for popular platforms can be found directly at its
\fIdownload page\fR [http://www.fossil-scm.org/download.html].
.PP
With that tool available the full history of our project can be
retrieved via:
.CS


fossil clone https:/core.tcl.tk/akupries/cmdr cmdr.fossil

.CE
followed by
.CS


mkdir cmdr
cd    cmdr
fossil open ../cmdr.fossil

.CE
to get a checkout of the head of the trunk.
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
\fICmdr - Log of Changes\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
\fICmdr Tickets\fR [https:/core.tcl.tk/akupries/cmdr].
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

|







 







|

|




|
|

|

|
|





|
|

|



|


|



|

|






|








|


|







 







|

|


|








1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
...
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
'\"
'\" Generated from file 'cmdr_howto_get_sources\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_howto_get_sources" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_howto_get_sources \- Cmdr - How To Get The Sources
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
.PP
The audience of this document are anyone wishing to either have just a
look at Cmdr's sources, or to build the project, or to extend
and modify it\&. The list of \fBRelated Documents\fR provides
references to information for the latter two\&.
.SH LOCATION
The official repository of the project is at \fIhttps:/core\&.tcl\&.tk/akupries/cmdr\fR\&.
A mirror has been set up at
\fIhttp://chiselapp\&.com/user/andreas_kupries/repository/Kettle\fR,
in case of trouble with the main location\&.
.SH RETRIEVAL
Assuming that you simply wish to look at the sources of the project,
or build a specific revision, the easiest way of retrieving the
sources is to:
.IP [1]
Log as "anonymous" into the repository (see \fBLocation\fR)\&.
Use the semi-random password in the captcha\&.
.IP [2]
Go to the "Timeline"\&.
.IP [3]
Choose the revision you wish to have and
.IP [4]
follow its link to its detailed information page\&.
.IP [5]
On that page, choose either the "ZIP" or "Tarball" link to get
a copy of this revision in the format of your choice\&.
.PP
.SH "SOURCE CODE MANAGEMENT"
For the curious (or a developer-to-be), the sources of this project
are managed by the \fIFossil SCM\fR [http://www\&.fossil-scm\&.org]\&.
Binaries for popular platforms can be found directly at its
\fIdownload page\fR [http://www\&.fossil-scm\&.org/download\&.html]\&.
.PP
With that tool available the full history of our project can be
retrieved via:
.CS


fossil clone https:/core\&.tcl\&.tk/akupries/cmdr cmdr\&.fossil

.CE
followed by
.CS


mkdir cmdr
cd    cmdr
fossil open \&.\&./cmdr\&.fossil

.CE
to get a checkout of the head of the trunk\&.
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
\fICmdr - Log of Changes\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Changes to embedded/man/files/cmdr_howto_installation.n.

1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
...
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
...
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
...
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
...
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
...
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
'\"
'\" Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/man/files/cmdr_howto_installation.n' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_installation" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_installation \- Cmdr - The Installer's Guide
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries.
.PP
For availability please read \fICmdr - How To Get The Sources\fR.
.PP
.PP
The audience of this document are anyone wishing to build the
Cmdr project, for either themselves, or others.
.PP
If you are a developer intending to extend or modify the project
please see the list of \fBRelated Documents\fR for references to
more information on this topic.
.PP
Please read \fICmdr - How To Get The Sources\fR first, if that was not done
already. Here we assume that the sources are already available in a
directory of your choice.
.PP
.SH REQUISITES
.SS TCL
This project requires a working installation of Tcl 8.5, or higher.
.PP
Use whatever you are comfortable with, as long as it provides
Tcl 8.5, or higher.
.PP
An easy way to get a proper installation of a recent Tcl 8.5,
(which I recommend) is to download and install
\fIActiveState's\fR [http://www.activestate.com]
\fIActiveTcl 8.5\fR [http://www.activestate.com/activetcl]
for your platform. Just follow the link and instruction on that site.
.PP
After the installation of ActiveTcl 8.5 simply run the command
.CS


    teacup update

.CE
This will install a lot more packages than found in the distribution
alone.
(Disclosure: I, Andreas Kupries, work for ActiveState, maintaining
ActiveTcl and TclDevKit).
.PP
Do you wish to build Tcl on your own ?
The sources of all versions can be found at
.TP
Tcl
\fIhttp://core.tcl.tk/tcl/\fR
.PP
.SS TCLOO
The framework uses the \fBTclOO\fR package in its implementation.
This package requires Tcl 8.5 or higher.
.PP
In Tcl 8.6 the package is part of the core itself, without
requiring a separate installation.
.PP
For Tcl 8.5 it has to be installed separately.
.PP
Out of the many possibilites for getting TclOO (OS vendor,
os-independent vendor, building from sources) use whatever you are
comfortable with.
.PP
For myself, I am most comfortable with using
\fIActiveState's\fR [http://www.activestate.com]
ActiveTcl distribution and TEApot.
.PP
See the previous section (\fBTcl\fR) for disclosure and
information on how to get it.
.PP
Assuming that ActiveTcl got installed running the command
.CS


    teacup install TclOO

................................................................................
more inclusive
.CS


    teacup update

.CE
to get everything and the kitchensink.
.PP
For those wishing to build and install TclOO on their own, the
relevant sources can be found at \fIhttp://core.tcl.tk/tcloo\fR
together with the necessary instructions on how to build it.
.PP
If there are problems with building, installing, or using TclOO
and its packages please file a bug against TclOO, or the vendor of
your distribution, and not \fBcmdr\fR.
.SS TCLLIB
The framework requires ten packages found in Tcllib.
These are
.IP [1]
\fBdebug\fR
.IP [2]
\fBdebug::caller\fR
.IP [3]
\fBjson::write\fR
................................................................................
\fBtextutil::adjust\fR
.IP [10]
\fBtry\fR
.PP
.PP
Out of the many possibilites for getting Tcllib (OS vendor,
os-independent vendor, building from sources) use whatever you are
comfortable with.
.PP
For myself, I am most comfortable with using
\fIActiveState's\fR [http://www.activestate.com]
ActiveTcl distribution and TEApot.
.PP
See the previous section (\fBTcl\fR) for disclosure and
information on how to get it.
.PP
Assuming that ActiveTcl got installed running the commands
.CS


    teacup install debug
    teacup install debug::caller
................................................................................
inclusive
.CS


    teacup update

.CE
to get everything and the kitchensink.
.PP
For those wishing to build and install Tcllib on their own, the
relevant sources can be found at \fIhttp://core.tcl.tk/tcllib\fR
together with the necessary instructions on how to build it.
.PP
If there are problems with building, installing, or using
Tcllib and its packages please file a bug against Tcllib, or the
vendor of your distribution, and not \fBcmdr\fR.
.SS LINENOISE
The framework uses the \fBlinenoise\fR package in its implementation.
This package requires Tcl 8.5 or higher.
.PP
Out of the many possibilites for getting Linenoise (OS vendor,
os-independent vendor, building from sources) use whatever you are
comfortable with.
.PP
For myself, I am most comfortable with using
\fIActiveState's\fR [http://www.activestate.com]
ActiveTcl distribution and TEApot.
.PP
See the previous section (\fBTcl\fR) for disclosure and
information on how to get it.
.PP
Assuming that ActiveTcl got installed running the command
.CS


    teacup install linenoise

................................................................................
more inclusive
.CS


    teacup update

.CE
to get everything and the kitchensink.
.PP
For those wishing to build and install Linenoise on their own,
the relevant sources can be found at
\fIhttp://github.com/andreas-kupries/tcl-linenoise\fR together with
the necessary instructions on how to build it.
.PP
If there are problems with building, installing, or using
linenoise please file a bug against Linenoise, or the vendor
of your distribution, and not \fBcmdr\fR.
.SS KETTLE
This project uses the Kettle application and package as its build system.
.PP
Please go to either the main repository at
\fIhttp://core.tcl.tk/akupries/kettle\fR
or the backup at
\fIhttp://chiselapp.com/andreas_kupries/repositories/Kettle\fR
and follow the instructions given at these sites to create a working
installation. They are not repeated here. If there are problems with
these instructions please file a bug against the Kettle project, and
not \fBCmdr\fR.
.PP
.SH "BUILD & INSTALLATION"
Cmdr uses the Kettle application and package to handle building
and installation. It is assumed to be installed and working. Please see
section \fBKettle\fR in \fBRequisites\fR for more information.
.PP
Note that all access to Kettle is mediated by the "\fIbuild.tcl\fR"
script, found in the top-level directory of the project.
.PP
For the most basic installation of Cmdr run
.CS


% /path/to/cmdr/build.tcl install

.CE
This command uses the \fBkettle\fR application found in the
, and the associated \fBtclsh\fR.
.PP
The command builds all packages and applications of Cmdr,
and then installs them so that the associated \fBtclsh\fR has access
to them. Any applications will become siblings of \fBtclsh\fR.
.PP
For more control about which version of \fBkettle\fR and/or
\fBtclsh\fR gets used run either
.CS


% /path/to/kettle /path/to/cmdr/build.tcl install

.CE
or even
.CS


% /path/to/tclsh /path/to/kettle /path/to/cmdr/build.tcl install

.CE
to specify the exact files to use.
.PP
On Windows it is possible to invoke the the file "\fIbuild.tcl\fR" with a
double-click. This will start a graphical interface to the system, with
buttons for all the possible actions, which includes 'install'ation.
.PP
On unix the same GUI is acessible by invoking "\fIbuild.tcl\fR" with the
arguments \fBgui\fR, i.e. as
.CS


% /path/to/cmdr/build.tcl gui

.CE
.PP
To get help about the methods of "\fIbuild.tcl\fR", and their complete
syntax, simply invoke "\fIbuild.tcl\fR" like
.CS


% /path/to/cmdr/build.tcl gui

.CE
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
\fICmdr Tickets\fR [https:/core.tcl.tk/akupries/cmdr].
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

|







 







|

|



|



|


|
|



|


|

|

|
|
|

|







|

|





|


|
|

|
|

|



|


|
|


|







 







|


|
|



|

|







 







|


|
|


|







 







|


|
|



|

|
|



|


|
|


|







 







|



|
|



|

|


|

|

|

|



|
|

|
|





|



|



|






|






|


|

|
|
|

|
|



|



|
|



|







 







|

|


|








1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
...
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
...
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
...
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
...
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
...
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
'\"
'\" Generated from file 'cmdr_howto_installation\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_installation" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_installation \- Cmdr - The Installer's Guide
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
.PP
The audience of this document are anyone wishing to build the
Cmdr project, for either themselves, or others\&.
.PP
If you are a developer intending to extend or modify the project
please see the list of \fBRelated Documents\fR for references to
more information on this topic\&.
.PP
Please read \fICmdr - How To Get The Sources\fR first, if that was not done
already\&. Here we assume that the sources are already available in a
directory of your choice\&.
.PP
.SH REQUISITES
.SS TCL
This project requires a working installation of Tcl 8\&.5, or higher\&.
.PP
Use whatever you are comfortable with, as long as it provides
Tcl 8\&.5, or higher\&.
.PP
An easy way to get a proper installation of a recent Tcl 8\&.5,
(which I recommend) is to download and install
\fIActiveState's\fR [http://www\&.activestate\&.com]
\fIActiveTcl 8\&.5\fR [http://www\&.activestate\&.com/activetcl]
for your platform\&. Just follow the link and instruction on that site\&.
.PP
After the installation of ActiveTcl 8\&.5 simply run the command
.CS


    teacup update

.CE
This will install a lot more packages than found in the distribution
alone\&.
(Disclosure: I, Andreas Kupries, work for ActiveState, maintaining
ActiveTcl and TclDevKit)\&.
.PP
Do you wish to build Tcl on your own ?
The sources of all versions can be found at
.TP
Tcl
\fIhttp://core\&.tcl\&.tk/tcl/\fR
.PP
.SS TCLOO
The framework uses the \fBTclOO\fR package in its implementation\&.
This package requires Tcl 8\&.5 or higher\&.
.PP
In Tcl 8\&.6 the package is part of the core itself, without
requiring a separate installation\&.
.PP
For Tcl 8\&.5 it has to be installed separately\&.
.PP
Out of the many possibilites for getting TclOO (OS vendor,
os-independent vendor, building from sources) use whatever you are
comfortable with\&.
.PP
For myself, I am most comfortable with using
\fIActiveState's\fR [http://www\&.activestate\&.com]
ActiveTcl distribution and TEApot\&.
.PP
See the previous section (\fBTcl\fR) for disclosure and
information on how to get it\&.
.PP
Assuming that ActiveTcl got installed running the command
.CS


    teacup install TclOO

................................................................................
more inclusive
.CS


    teacup update

.CE
to get everything and the kitchensink\&.
.PP
For those wishing to build and install TclOO on their own, the
relevant sources can be found at \fIhttp://core\&.tcl\&.tk/tcloo\fR
together with the necessary instructions on how to build it\&.
.PP
If there are problems with building, installing, or using TclOO
and its packages please file a bug against TclOO, or the vendor of
your distribution, and not \fBcmdr\fR\&.
.SS TCLLIB
The framework requires ten packages found in Tcllib\&.
These are
.IP [1]
\fBdebug\fR
.IP [2]
\fBdebug::caller\fR
.IP [3]
\fBjson::write\fR
................................................................................
\fBtextutil::adjust\fR
.IP [10]
\fBtry\fR
.PP
.PP
Out of the many possibilites for getting Tcllib (OS vendor,
os-independent vendor, building from sources) use whatever you are
comfortable with\&.
.PP
For myself, I am most comfortable with using
\fIActiveState's\fR [http://www\&.activestate\&.com]
ActiveTcl distribution and TEApot\&.
.PP
See the previous section (\fBTcl\fR) for disclosure and
information on how to get it\&.
.PP
Assuming that ActiveTcl got installed running the commands
.CS


    teacup install debug
    teacup install debug::caller
................................................................................
inclusive
.CS


    teacup update

.CE
to get everything and the kitchensink\&.
.PP
For those wishing to build and install Tcllib on their own, the
relevant sources can be found at \fIhttp://core\&.tcl\&.tk/tcllib\fR
together with the necessary instructions on how to build it\&.
.PP
If there are problems with building, installing, or using
Tcllib and its packages please file a bug against Tcllib, or the
vendor of your distribution, and not \fBcmdr\fR\&.
.SS LINENOISE
The framework uses the \fBlinenoise\fR package in its implementation\&.
This package requires Tcl 8\&.5 or higher\&.
.PP
Out of the many possibilites for getting Linenoise (OS vendor,
os-independent vendor, building from sources) use whatever you are
comfortable with\&.
.PP
For myself, I am most comfortable with using
\fIActiveState's\fR [http://www\&.activestate\&.com]
ActiveTcl distribution and TEApot\&.
.PP
See the previous section (\fBTcl\fR) for disclosure and
information on how to get it\&.
.PP
Assuming that ActiveTcl got installed running the command
.CS


    teacup install linenoise

................................................................................
more inclusive
.CS


    teacup update

.CE
to get everything and the kitchensink\&.
.PP
For those wishing to build and install Linenoise on their own,
the relevant sources can be found at
\fIhttp://github\&.com/andreas-kupries/tcl-linenoise\fR together with
the necessary instructions on how to build it\&.
.PP
If there are problems with building, installing, or using
linenoise please file a bug against Linenoise, or the vendor
of your distribution, and not \fBcmdr\fR\&.
.SS KETTLE
This project uses the Kettle application and package as its build system\&.
.PP
Please go to either the main repository at
\fIhttp://core\&.tcl\&.tk/akupries/kettle\fR
or the backup at
\fIhttp://chiselapp\&.com/andreas_kupries/repositories/Kettle\fR
and follow the instructions given at these sites to create a working
installation\&. They are not repeated here\&. If there are problems with
these instructions please file a bug against the Kettle project, and
not \fBCmdr\fR\&.
.PP
.SH "BUILD & INSTALLATION"
Cmdr uses the Kettle application and package to handle building
and installation\&. It is assumed to be installed and working\&. Please see
section \fBKettle\fR in \fBRequisites\fR for more information\&.
.PP
Note that all access to Kettle is mediated by the "\fIbuild\&.tcl\fR"
script, found in the top-level directory of the project\&.
.PP
For the most basic installation of Cmdr run
.CS


% /path/to/cmdr/build\&.tcl install

.CE
This command uses the \fBkettle\fR application found in the
, and the associated \fBtclsh\fR\&.
.PP
The command builds all packages and applications of Cmdr,
and then installs them so that the associated \fBtclsh\fR has access
to them\&. Any applications will become siblings of \fBtclsh\fR\&.
.PP
For more control about which version of \fBkettle\fR and/or
\fBtclsh\fR gets used run either
.CS


% /path/to/kettle /path/to/cmdr/build\&.tcl install

.CE
or even
.CS


% /path/to/tclsh /path/to/kettle /path/to/cmdr/build\&.tcl install

.CE
to specify the exact files to use\&.
.PP
On Windows it is possible to invoke the the file "\fIbuild\&.tcl\fR" with a
double-click\&. This will start a graphical interface to the system, with
buttons for all the possible actions, which includes 'install'ation\&.
.PP
On unix the same GUI is acessible by invoking "\fIbuild\&.tcl\fR" with the
arguments \fBgui\fR, i\&.e\&. as
.CS


% /path/to/cmdr/build\&.tcl gui

.CE
.PP
To get help about the methods of "\fIbuild\&.tcl\fR", and their complete
syntax, simply invoke "\fIbuild\&.tcl\fR" like
.CS


% /path/to/cmdr/build\&.tcl gui

.CE
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Changes to embedded/man/files/cmdr_introduction.n.

1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
...
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
'\"
'\" Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/man/files/cmdr_introduction.n' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_introduction" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_introduction \- Cmdr - Introduction to the project
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries.
.PP
For availability please read \fICmdr - How To Get The Sources\fR.
.PP
.SH "SYSTEM ARCHITECTURE"
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
\fICmdr Tickets\fR [https:/core.tcl.tk/akupries/cmdr].
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

|







 







|

|







 







|

|


|








1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
...
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
'\"
'\" Generated from file 'cmdr_introduction\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_introduction" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_introduction \- Cmdr - Introduction to the project
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
.SH "SYSTEM ARCHITECTURE"
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Changes to embedded/man/files/cmdr_license.n.

1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
...
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
'\"
'\" Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/man/files/cmdr_license.n' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_license" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_license \- Cmdr - License
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries.
.PP
For availability please read \fICmdr - How To Get The Sources\fR.
.PP
.PP
The packages are under the BSD license.
.PP
This software is copyrighted by Andreas Kupries and other
parties.  The following terms apply to all files associated with the
software unless explicitly disclaimed in individual files.
.PP
The authors hereby grant permission to use, copy, modify,
distribute, and license this software and its documentation for any
purpose, provided that existing copyright notices are retained in all
copies and that this notice is included verbatim in any
distributions. No written agreement, license, or royalty fee is
required for any of the authorized uses.  Modifications to this
software may be copyrighted by their authors and need not follow the
licensing terms described here, provided that the new terms are
clearly indicated on the first page of each file where they apply.
.PP
IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY
PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR
ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
.PP
THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
NON-INFRINGEMENT.  THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND
THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
.PP
GOVERNMENT USE: If you are acquiring this software on behalf of
the U.S. government, the Government shall have only "Restricted
Rights" in the software and related documentation as defined in the
Federal Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2).
If you are acquiring the software on behalf of the Department of
Defense, the software shall be classified as "Commercial Computer
Software" and the Government shall have only "Restricted Rights" as
defined in Clause 252.227-7014 (b) (3) of DFARs.  Notwithstanding the
foregoing, the authors grant the U.S. Government and others acting in
its behalf permission to use and distribute the software in accordance
with the terms specified in this license.
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
\fICmdr - Log of Changes\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
\fICmdr Tickets\fR [https:/core.tcl.tk/akupries/cmdr].
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

|







 







|

|


|


|
|





|
|


|





|




|

|


|

|



|
|

|







 







|

|


|








1
2
3
4
5
6
7
8
9
...
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
...
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
'\"
'\" Generated from file 'cmdr_license\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
................................................................................
..
.TH "cmdr_license" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_license \- Cmdr - License
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
.PP
The packages are under the BSD license\&.
.PP
This software is copyrighted by Andreas Kupries and other
parties\&.  The following terms apply to all files associated with the
software unless explicitly disclaimed in individual files\&.
.PP
The authors hereby grant permission to use, copy, modify,
distribute, and license this software and its documentation for any
purpose, provided that existing copyright notices are retained in all
copies and that this notice is included verbatim in any
distributions\&. No written agreement, license, or royalty fee is
required for any of the authorized uses\&.  Modifications to this
software may be copyrighted by their authors and need not follow the
licensing terms described here, provided that the new terms are
clearly indicated on the first page of each file where they apply\&.
.PP
IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY
PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR
ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE\&.
.PP
THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
NON-INFRINGEMENT\&.  THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND
THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS\&.
.PP
GOVERNMENT USE: If you are acquiring this software on behalf of
the U\&.S\&. government, the Government shall have only "Restricted
Rights" in the software and related documentation as defined in the
Federal Acquisition Regulations (FARs) in Clause 52\&.227\&.19 (c) (2)\&.
If you are acquiring the software on behalf of the Department of
Defense, the software shall be classified as "Commercial Computer
Software" and the Government shall have only "Restricted Rights" as
defined in Clause 252\&.227-7014 (b) (3) of DFARs\&.  Notwithstanding the
foregoing, the authors grant the U\&.S\&. Government and others acting in
its behalf permission to use and distribute the software in accordance
with the terms specified in this license\&.
.SH "RELATED DOCUMENTS"
.IP [1]
\fICmdr - Introduction to the project\fR
.IP [2]
\fICmdr - License\fR
.IP [3]
\fICmdr - Log of Changes\fR
................................................................................
.IP [5]
\fICmdr - The Installer's Guide\fR
.IP [6]
\fICmdr - The Developer's Guide\fR
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Added embedded/man/files/help.n.

























































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
'\"
'\" Generated from file 'help\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
'\"	Start paragraph describing an argument to a library procedure.
'\"	type is type of argument (int, etc.), in/out is either "in", "out",
'\"	or "in/out" to describe whether procedure reads or modifies arg,
'\"	and indent is equivalent to second arg of .IP (shouldn't ever be
'\"	needed;  use .AS below instead)
'\"
'\" .AS ?type? ?name?
'\"	Give maximum sizes of arguments for setting tab stops.  Type and
'\"	name are examples of largest possible arguments that will be passed
'\"	to .AP later.  If args are omitted, default tab stops are used.
'\"
'\" .BS
'\"	Start box enclosure.  From here until next .BE, everything will be
'\"	enclosed in one large box.
'\"
'\" .BE
'\"	End of box enclosure.
'\"
'\" .CS
'\"	Begin code excerpt.
'\"
'\" .CE
'\"	End code excerpt.
'\"
'\" .VS ?version? ?br?
'\"	Begin vertical sidebar, for use in marking newly-changed parts
'\"	of man pages.  The first argument is ignored and used for recording
'\"	the version when the .VS was added, so that the sidebars can be
'\"	found and removed when they reach a certain age.  If another argument
'\"	is present, then a line break is forced before starting the sidebar.
'\"
'\" .VE
'\"	End of vertical sidebar.
'\"
'\" .DS
'\"	Begin an indented unfilled display.
'\"
'\" .DE
'\"	End of indented unfilled display.
'\"
'\" .SO
'\"	Start of list of standard options for a Tk widget.  The
'\"	options follow on successive lines, in four columns separated
'\"	by tabs.
'\"
'\" .SE
'\"	End of list of standard options for a Tk widget.
'\"
'\" .OP cmdName dbName dbClass
'\"	Start of description of a specific option.  cmdName gives the
'\"	option's name as specified in the class command, dbName gives
'\"	the option's name in the option database, and dbClass gives
'\"	the option's class in the option database.
'\"
'\" .UL arg1 arg2
'\"	Print arg1 underlined, then print arg2 normally.
'\"
'\" RCS: @(#) $Id: man.macros,v 1.1 2009/01/30 04:56:47 andreas_kupries Exp $
'\"
'\"	# Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
.if t .wh -1.3i ^B
.nr ^l \n(.l
.ad b
'\"	# Start an argument description
.de AP
.ie !"\\$4"" .TP \\$4
.el \{\
.   ie !"\\$2"" .TP \\n()Cu
.   el          .TP 15
.\}
.ta \\n()Au \\n()Bu
.ie !"\\$3"" \{\
\&\\$1	\\fI\\$2\\fP	(\\$3)
.\".b
.\}
.el \{\
.br
.ie !"\\$2"" \{\
\&\\$1	\\fI\\$2\\fP
.\}
.el \{\
\&\\fI\\$1\\fP
.\}
.\}
..
'\"	# define tabbing values for .AP
.de AS
.nr )A 10n
.if !"\\$1"" .nr )A \\w'\\$1'u+3n
.nr )B \\n()Au+15n
.\"
.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
.nr )C \\n()Bu+\\w'(in/out)'u+2n
..
.AS Tcl_Interp Tcl_CreateInterp in/out
'\"	# BS - start boxed text
'\"	# ^y = starting y location
'\"	# ^b = 1
.de BS
.br
.mk ^y
.nr ^b 1u
.if n .nf
.if n .ti 0
.if n \l'\\n(.lu\(ul'
.if n .fi
..
'\"	# BE - end boxed text (draw box now)
.de BE
.nf
.ti 0
.mk ^t
.ie n \l'\\n(^lu\(ul'
.el \{\
.\"	Draw four-sided box normally, but don't draw top of
.\"	box if the box started on an earlier page.
.ie !\\n(^b-1 \{\
\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.el \}\
\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.\}
.fi
.br
.nr ^b 0
..
'\"	# VS - start vertical sidebar
'\"	# ^Y = starting y location
'\"	# ^v = 1 (for troff;  for nroff this doesn't matter)
.de VS
.if !"\\$2"" .br
.mk ^Y
.ie n 'mc \s12\(br\s0
.el .nr ^v 1u
..
'\"	# VE - end of vertical sidebar
.de VE
.ie n 'mc
.el \{\
.ev 2
.nf
.ti 0
.mk ^t
\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
.sp -1
.fi
.ev
.\}
.nr ^v 0
..
'\"	# Special macro to handle page bottom:  finish off current
'\"	# box/sidebar if in box/sidebar mode, then invoked standard
'\"	# page bottom macro.
.de ^B
.ev 2
'ti 0
'nf
.mk ^t
.if \\n(^b \{\
.\"	Draw three-sided box if this is the box's first page,
.\"	draw two sides but no top otherwise.
.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.\}
.if \\n(^v \{\
.nr ^x \\n(^tu+1v-\\n(^Yu
\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
.\}
.bp
'fi
.ev
.if \\n(^b \{\
.mk ^y
.nr ^b 2
.\}
.if \\n(^v \{\
.mk ^Y
.\}
..
'\"	# DS - begin display
.de DS
.RS
.nf
.sp
..
'\"	# DE - end display
.de DE
.fi
.RE
.sp
..
'\"	# SO - start of list of standard options
.de SO
.SH "STANDARD OPTIONS"
.LP
.nf
.ta 4c 8c 12c
.ft B
..
'\"	# SE - end of list of standard options
.de SE
.fi
.ft R
.LP
See the \\fBoptions\\fR manual entry for details on the standard options.
..
'\"	# OP - start of full description for a single option
.de OP
.LP
.nf
.ta 4c
Command-Line Name:	\\fB\\$1\\fR
Database Name:	\\fB\\$2\\fR
Database Class:	\\fB\\$3\\fR
.fi
.IP
..
'\"	# CS - begin code excerpt
.de CS
.RS
.nf
.ta .25i .5i .75i 1i
..
'\"	# CE - end code excerpt
.de CE
.fi
.RE
..
.de UL
\\$1\l'|0\(ul'\\$2
..
.TH "cmdr_help" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_help \- Utilities for help text formatting and setup - Internal
.SH SYNOPSIS
package require \fBcmdr::help \fR
.sp
\fB::cmdr::help\fR \fBauto\fR \fIactor\fR
.sp
.BE
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
This internal package implements the four standard help formats
\fBfull\fR, \fBshort\fR, \fBlist\fR, and \fBby-category\fR\&.
.PP
It provides a single utility command used by the other parts of
the framework to add a \fBhelp\fR command to any
\fBcmdr::actor\fR requiring such\&.
.SH API
.TP
\fB::cmdr::help\fR \fBauto\fR \fIactor\fR
When invoked this command extends the \fIactor\fR with a \fBhelp\fR
command\&. The result of the command is the empty string\&.
.sp
The inserted command will accept all known format names as
options, enabling the user to choose the form of the help\&. By default
the format \fBby-category\fR will be used, except if a command name
was given to \fBhelp\fR, then the default will be \fBfull\fR\&.
.sp
An additional option accepted by \fBhelp\fR is
\fB--width\fR, giving the user control over the length of lines
in the help\&. By default help will be formatted to the width of the
terminal\&.
.RS
.TP
\fBcmdr::actor\fR \fIactor\fR
The \fBcmdr::actor\fR instance to be extended with \fBhelp\fR\&.
.RE
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Added embedded/man/files/help_json.n.

























































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
'\"
'\" Generated from file 'help_json\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
'\"	Start paragraph describing an argument to a library procedure.
'\"	type is type of argument (int, etc.), in/out is either "in", "out",
'\"	or "in/out" to describe whether procedure reads or modifies arg,
'\"	and indent is equivalent to second arg of .IP (shouldn't ever be
'\"	needed;  use .AS below instead)
'\"
'\" .AS ?type? ?name?
'\"	Give maximum sizes of arguments for setting tab stops.  Type and
'\"	name are examples of largest possible arguments that will be passed
'\"	to .AP later.  If args are omitted, default tab stops are used.
'\"
'\" .BS
'\"	Start box enclosure.  From here until next .BE, everything will be
'\"	enclosed in one large box.
'\"
'\" .BE
'\"	End of box enclosure.
'\"
'\" .CS
'\"	Begin code excerpt.
'\"
'\" .CE
'\"	End code excerpt.
'\"
'\" .VS ?version? ?br?
'\"	Begin vertical sidebar, for use in marking newly-changed parts
'\"	of man pages.  The first argument is ignored and used for recording
'\"	the version when the .VS was added, so that the sidebars can be
'\"	found and removed when they reach a certain age.  If another argument
'\"	is present, then a line break is forced before starting the sidebar.
'\"
'\" .VE
'\"	End of vertical sidebar.
'\"
'\" .DS
'\"	Begin an indented unfilled display.
'\"
'\" .DE
'\"	End of indented unfilled display.
'\"
'\" .SO
'\"	Start of list of standard options for a Tk widget.  The
'\"	options follow on successive lines, in four columns separated
'\"	by tabs.
'\"
'\" .SE
'\"	End of list of standard options for a Tk widget.
'\"
'\" .OP cmdName dbName dbClass
'\"	Start of description of a specific option.  cmdName gives the
'\"	option's name as specified in the class command, dbName gives
'\"	the option's name in the option database, and dbClass gives
'\"	the option's class in the option database.
'\"
'\" .UL arg1 arg2
'\"	Print arg1 underlined, then print arg2 normally.
'\"
'\" RCS: @(#) $Id: man.macros,v 1.1 2009/01/30 04:56:47 andreas_kupries Exp $
'\"
'\"	# Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
.if t .wh -1.3i ^B
.nr ^l \n(.l
.ad b
'\"	# Start an argument description
.de AP
.ie !"\\$4"" .TP \\$4
.el \{\
.   ie !"\\$2"" .TP \\n()Cu
.   el          .TP 15
.\}
.ta \\n()Au \\n()Bu
.ie !"\\$3"" \{\
\&\\$1	\\fI\\$2\\fP	(\\$3)
.\".b
.\}
.el \{\
.br
.ie !"\\$2"" \{\
\&\\$1	\\fI\\$2\\fP
.\}
.el \{\
\&\\fI\\$1\\fP
.\}
.\}
..
'\"	# define tabbing values for .AP
.de AS
.nr )A 10n
.if !"\\$1"" .nr )A \\w'\\$1'u+3n
.nr )B \\n()Au+15n
.\"
.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
.nr )C \\n()Bu+\\w'(in/out)'u+2n
..
.AS Tcl_Interp Tcl_CreateInterp in/out
'\"	# BS - start boxed text
'\"	# ^y = starting y location
'\"	# ^b = 1
.de BS
.br
.mk ^y
.nr ^b 1u
.if n .nf
.if n .ti 0
.if n \l'\\n(.lu\(ul'
.if n .fi
..
'\"	# BE - end boxed text (draw box now)
.de BE
.nf
.ti 0
.mk ^t
.ie n \l'\\n(^lu\(ul'
.el \{\
.\"	Draw four-sided box normally, but don't draw top of
.\"	box if the box started on an earlier page.
.ie !\\n(^b-1 \{\
\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.el \}\
\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.\}
.fi
.br
.nr ^b 0
..
'\"	# VS - start vertical sidebar
'\"	# ^Y = starting y location
'\"	# ^v = 1 (for troff;  for nroff this doesn't matter)
.de VS
.if !"\\$2"" .br
.mk ^Y
.ie n 'mc \s12\(br\s0
.el .nr ^v 1u
..
'\"	# VE - end of vertical sidebar
.de VE
.ie n 'mc
.el \{\
.ev 2
.nf
.ti 0
.mk ^t
\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
.sp -1
.fi
.ev
.\}
.nr ^v 0
..
'\"	# Special macro to handle page bottom:  finish off current
'\"	# box/sidebar if in box/sidebar mode, then invoked standard
'\"	# page bottom macro.
.de ^B
.ev 2
'ti 0
'nf
.mk ^t
.if \\n(^b \{\
.\"	Draw three-sided box if this is the box's first page,
.\"	draw two sides but no top otherwise.
.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.\}
.if \\n(^v \{\
.nr ^x \\n(^tu+1v-\\n(^Yu
\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
.\}
.bp
'fi
.ev
.if \\n(^b \{\
.mk ^y
.nr ^b 2
.\}
.if \\n(^v \{\
.mk ^Y
.\}
..
'\"	# DS - begin display
.de DS
.RS
.nf
.sp
..
'\"	# DE - end display
.de DE
.fi
.RE
.sp
..
'\"	# SO - start of list of standard options
.de SO
.SH "STANDARD OPTIONS"
.LP
.nf
.ta 4c 8c 12c
.ft B
..
'\"	# SE - end of list of standard options
.de SE
.fi
.ft R
.LP
See the \\fBoptions\\fR manual entry for details on the standard options.
..
'\"	# OP - start of full description for a single option
.de OP
.LP
.nf
.ta 4c
Command-Line Name:	\\fB\\$1\\fR
Database Name:	\\fB\\$2\\fR
Database Class:	\\fB\\$3\\fR
.fi
.IP
..
'\"	# CS - begin code excerpt
.de CS
.RS
.nf
.ta .25i .5i .75i 1i
..
'\"	# CE - end code excerpt
.de CE
.fi
.RE
..
.de UL
\\$1\l'|0\(ul'\\$2
..
.TH "cmdr_help_json" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_help_json \- Formatting help as JSON object
.SH SYNOPSIS
package require \fBcmdr::help::json \fR
.sp
.BE
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
This package provides a single command implementing the help format
\fBjson\fR\&. This format generates help in the form of a nested JSON
object containing all details of the command hierarchy, including
internals\&.
.PP
To activate the format simply
.CS


    package require cmdr::help::json

.CE
it\&. Nothing more is needed\&.
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Added embedded/man/files/help_sql.n.























































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
'\"
'\" Generated from file 'help_sql\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
'\"	Start paragraph describing an argument to a library procedure.
'\"	type is type of argument (int, etc.), in/out is either "in", "out",
'\"	or "in/out" to describe whether procedure reads or modifies arg,
'\"	and indent is equivalent to second arg of .IP (shouldn't ever be
'\"	needed;  use .AS below instead)
'\"
'\" .AS ?type? ?name?
'\"	Give maximum sizes of arguments for setting tab stops.  Type and
'\"	name are examples of largest possible arguments that will be passed
'\"	to .AP later.  If args are omitted, default tab stops are used.
'\"
'\" .BS
'\"	Start box enclosure.  From here until next .BE, everything will be
'\"	enclosed in one large box.
'\"
'\" .BE
'\"	End of box enclosure.
'\"
'\" .CS
'\"	Begin code excerpt.
'\"
'\" .CE
'\"	End code excerpt.
'\"
'\" .VS ?version? ?br?
'\"	Begin vertical sidebar, for use in marking newly-changed parts
'\"	of man pages.  The first argument is ignored and used for recording
'\"	the version when the .VS was added, so that the sidebars can be
'\"	found and removed when they reach a certain age.  If another argument
'\"	is present, then a line break is forced before starting the sidebar.
'\"
'\" .VE
'\"	End of vertical sidebar.
'\"
'\" .DS
'\"	Begin an indented unfilled display.
'\"
'\" .DE
'\"	End of indented unfilled display.
'\"
'\" .SO
'\"	Start of list of standard options for a Tk widget.  The
'\"	options follow on successive lines, in four columns separated
'\"	by tabs.
'\"
'\" .SE
'\"	End of list of standard options for a Tk widget.
'\"
'\" .OP cmdName dbName dbClass
'\"	Start of description of a specific option.  cmdName gives the
'\"	option's name as specified in the class command, dbName gives
'\"	the option's name in the option database, and dbClass gives
'\"	the option's class in the option database.
'\"
'\" .UL arg1 arg2
'\"	Print arg1 underlined, then print arg2 normally.
'\"
'\" RCS: @(#) $Id: man.macros,v 1.1 2009/01/30 04:56:47 andreas_kupries Exp $
'\"
'\"	# Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
.if t .wh -1.3i ^B
.nr ^l \n(.l
.ad b
'\"	# Start an argument description
.de AP
.ie !"\\$4"" .TP \\$4
.el \{\
.   ie !"\\$2"" .TP \\n()Cu
.   el          .TP 15
.\}
.ta \\n()Au \\n()Bu
.ie !"\\$3"" \{\
\&\\$1	\\fI\\$2\\fP	(\\$3)
.\".b
.\}
.el \{\
.br
.ie !"\\$2"" \{\
\&\\$1	\\fI\\$2\\fP
.\}
.el \{\
\&\\fI\\$1\\fP
.\}
.\}
..
'\"	# define tabbing values for .AP
.de AS
.nr )A 10n
.if !"\\$1"" .nr )A \\w'\\$1'u+3n
.nr )B \\n()Au+15n
.\"
.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
.nr )C \\n()Bu+\\w'(in/out)'u+2n
..
.AS Tcl_Interp Tcl_CreateInterp in/out
'\"	# BS - start boxed text
'\"	# ^y = starting y location
'\"	# ^b = 1
.de BS
.br
.mk ^y
.nr ^b 1u
.if n .nf
.if n .ti 0
.if n \l'\\n(.lu\(ul'
.if n .fi
..
'\"	# BE - end boxed text (draw box now)
.de BE
.nf
.ti 0
.mk ^t
.ie n \l'\\n(^lu\(ul'
.el \{\
.\"	Draw four-sided box normally, but don't draw top of
.\"	box if the box started on an earlier page.
.ie !\\n(^b-1 \{\
\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.el \}\
\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.\}
.fi
.br
.nr ^b 0
..
'\"	# VS - start vertical sidebar
'\"	# ^Y = starting y location
'\"	# ^v = 1 (for troff;  for nroff this doesn't matter)
.de VS
.if !"\\$2"" .br
.mk ^Y
.ie n 'mc \s12\(br\s0
.el .nr ^v 1u
..
'\"	# VE - end of vertical sidebar
.de VE
.ie n 'mc
.el \{\
.ev 2
.nf
.ti 0
.mk ^t
\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
.sp -1
.fi
.ev
.\}
.nr ^v 0
..
'\"	# Special macro to handle page bottom:  finish off current
'\"	# box/sidebar if in box/sidebar mode, then invoked standard
'\"	# page bottom macro.
.de ^B
.ev 2
'ti 0
'nf
.mk ^t
.if \\n(^b \{\
.\"	Draw three-sided box if this is the box's first page,
.\"	draw two sides but no top otherwise.
.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.\}
.if \\n(^v \{\
.nr ^x \\n(^tu+1v-\\n(^Yu
\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
.\}
.bp
'fi
.ev
.if \\n(^b \{\
.mk ^y
.nr ^b 2
.\}
.if \\n(^v \{\
.mk ^Y
.\}
..
'\"	# DS - begin display
.de DS
.RS
.nf
.sp
..
'\"	# DE - end display
.de DE
.fi
.RE
.sp
..
'\"	# SO - start of list of standard options
.de SO
.SH "STANDARD OPTIONS"
.LP
.nf
.ta 4c 8c 12c
.ft B
..
'\"	# SE - end of list of standard options
.de SE
.fi
.ft R
.LP
See the \\fBoptions\\fR manual entry for details on the standard options.
..
'\"	# OP - start of full description for a single option
.de OP
.LP
.nf
.ta 4c
Command-Line Name:	\\fB\\$1\\fR
Database Name:	\\fB\\$2\\fR
Database Class:	\\fB\\$3\\fR
.fi
.IP
..
'\"	# CS - begin code excerpt
.de CS
.RS
.nf
.ta .25i .5i .75i 1i
..
'\"	# CE - end code excerpt
.de CE
.fi
.RE
..
.de UL
\\$1\l'|0\(ul'\\$2
..
.TH "cmdr_help_sql" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_help_sql \- Formatting help as series of SQL commands
.SH SYNOPSIS
package require \fBcmdr::help::sql \fR
.sp
.BE
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
This package provides a single command implementing the help format
\fBsql\fR\&. This format generates help as a series of SQL commands
filling a simple database with the command hierarchy\&.
.PP
To activate the format simply
.CS


    package require cmdr::help::sql

.CE
it\&. Nothing more is needed\&.
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Added embedded/man/files/util.n.





































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
'\"
'\" Generated from file 'util\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
'\"	Start paragraph describing an argument to a library procedure.
'\"	type is type of argument (int, etc.), in/out is either "in", "out",
'\"	or "in/out" to describe whether procedure reads or modifies arg,
'\"	and indent is equivalent to second arg of .IP (shouldn't ever be
'\"	needed;  use .AS below instead)
'\"
'\" .AS ?type? ?name?
'\"	Give maximum sizes of arguments for setting tab stops.  Type and
'\"	name are examples of largest possible arguments that will be passed
'\"	to .AP later.  If args are omitted, default tab stops are used.
'\"
'\" .BS
'\"	Start box enclosure.  From here until next .BE, everything will be
'\"	enclosed in one large box.
'\"
'\" .BE
'\"	End of box enclosure.
'\"
'\" .CS
'\"	Begin code excerpt.
'\"
'\" .CE
'\"	End code excerpt.
'\"
'\" .VS ?version? ?br?
'\"	Begin vertical sidebar, for use in marking newly-changed parts
'\"	of man pages.  The first argument is ignored and used for recording
'\"	the version when the .VS was added, so that the sidebars can be
'\"	found and removed when they reach a certain age.  If another argument
'\"	is present, then a line break is forced before starting the sidebar.
'\"
'\" .VE
'\"	End of vertical sidebar.
'\"
'\" .DS
'\"	Begin an indented unfilled display.
'\"
'\" .DE
'\"	End of indented unfilled display.
'\"
'\" .SO
'\"	Start of list of standard options for a Tk widget.  The
'\"	options follow on successive lines, in four columns separated
'\"	by tabs.
'\"
'\" .SE
'\"	End of list of standard options for a Tk widget.
'\"
'\" .OP cmdName dbName dbClass
'\"	Start of description of a specific option.  cmdName gives the
'\"	option's name as specified in the class command, dbName gives
'\"	the option's name in the option database, and dbClass gives
'\"	the option's class in the option database.
'\"
'\" .UL arg1 arg2
'\"	Print arg1 underlined, then print arg2 normally.
'\"
'\" RCS: @(#) $Id: man.macros,v 1.1 2009/01/30 04:56:47 andreas_kupries Exp $
'\"
'\"	# Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
.if t .wh -1.3i ^B
.nr ^l \n(.l
.ad b
'\"	# Start an argument description
.de AP
.ie !"\\$4"" .TP \\$4
.el \{\
.   ie !"\\$2"" .TP \\n()Cu
.   el          .TP 15
.\}
.ta \\n()Au \\n()Bu
.ie !"\\$3"" \{\
\&\\$1	\\fI\\$2\\fP	(\\$3)
.\".b
.\}
.el \{\
.br
.ie !"\\$2"" \{\
\&\\$1	\\fI\\$2\\fP
.\}
.el \{\
\&\\fI\\$1\\fP
.\}
.\}
..
'\"	# define tabbing values for .AP
.de AS
.nr )A 10n
.if !"\\$1"" .nr )A \\w'\\$1'u+3n
.nr )B \\n()Au+15n
.\"
.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
.nr )C \\n()Bu+\\w'(in/out)'u+2n
..
.AS Tcl_Interp Tcl_CreateInterp in/out
'\"	# BS - start boxed text
'\"	# ^y = starting y location
'\"	# ^b = 1
.de BS
.br
.mk ^y
.nr ^b 1u
.if n .nf
.if n .ti 0
.if n \l'\\n(.lu\(ul'
.if n .fi
..
'\"	# BE - end boxed text (draw box now)
.de BE
.nf
.ti 0
.mk ^t
.ie n \l'\\n(^lu\(ul'
.el \{\
.\"	Draw four-sided box normally, but don't draw top of
.\"	box if the box started on an earlier page.
.ie !\\n(^b-1 \{\
\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.el \}\
\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.\}
.fi
.br
.nr ^b 0
..
'\"	# VS - start vertical sidebar
'\"	# ^Y = starting y location
'\"	# ^v = 1 (for troff;  for nroff this doesn't matter)
.de VS
.if !"\\$2"" .br
.mk ^Y
.ie n 'mc \s12\(br\s0
.el .nr ^v 1u
..
'\"	# VE - end of vertical sidebar
.de VE
.ie n 'mc
.el \{\
.ev 2
.nf
.ti 0
.mk ^t
\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
.sp -1
.fi
.ev
.\}
.nr ^v 0
..
'\"	# Special macro to handle page bottom:  finish off current
'\"	# box/sidebar if in box/sidebar mode, then invoked standard
'\"	# page bottom macro.
.de ^B
.ev 2
'ti 0
'nf
.mk ^t
.if \\n(^b \{\
.\"	Draw three-sided box if this is the box's first page,
.\"	draw two sides but no top otherwise.
.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.\}
.if \\n(^v \{\
.nr ^x \\n(^tu+1v-\\n(^Yu
\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
.\}
.bp
'fi
.ev
.if \\n(^b \{\
.mk ^y
.nr ^b 2
.\}
.if \\n(^v \{\
.mk ^Y
.\}
..
'\"	# DS - begin display
.de DS
.RS
.nf
.sp
..
'\"	# DE - end display
.de DE
.fi
.RE
.sp
..
'\"	# SO - start of list of standard options
.de SO
.SH "STANDARD OPTIONS"
.LP
.nf
.ta 4c 8c 12c
.ft B
..
'\"	# SE - end of list of standard options
.de SE
.fi
.ft R
.LP
See the \\fBoptions\\fR manual entry for details on the standard options.
..
'\"	# OP - start of full description for a single option
.de OP
.LP
.nf
.ta 4c
Command-Line Name:	\\fB\\$1\\fR
Database Name:	\\fB\\$2\\fR
Database Class:	\\fB\\$3\\fR
.fi
.IP
..
'\"	# CS - begin code excerpt
.de CS
.RS
.nf
.ta .25i .5i .75i 1i
..
'\"	# CE - end code excerpt
.de CE
.fi
.RE
..
.de UL
\\$1\l'|0\(ul'\\$2
..
.TH "cmdr_util" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_util \- General Utilities - Internal
.SH SYNOPSIS
package require \fBcmdr::util \fR
.sp
\fB::cmdr::util\fR \fBpadr\fR \fIlist\fR
.sp
.BE
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
This internal package provides a single utility command\&.
.SH API
.TP
\fB::cmdr::util\fR \fBpadr\fR \fIlist\fR
When invoked this command pads all elements of the specified
\fIlist\fR at their end with space (ASCII 32 decimal) characters to
make them all the same length, the length of the longest element in
the list\&.
.sp
The modified list is returned as the result of the command\&.
.RS
.TP
list \fIlist\fR
A list of strings to normalize in length by appending space characters
as needed\&.
.RE
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Added embedded/man/files/vcommon.n.















































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
'\"
'\" Generated from file 'vcommon\&.man' by tcllib/doctools with format 'nroff'
'\" Copyright (c) 2013 Andreas Kupries
'\" Copyright (c) 2013 Documentation, Andreas Kupries
'\"
'\" The definitions below are for supplemental macros used in Tcl/Tk
'\" manual entries.
'\"
'\" .AP type name in/out ?indent?
'\"	Start paragraph describing an argument to a library procedure.
'\"	type is type of argument (int, etc.), in/out is either "in", "out",
'\"	or "in/out" to describe whether procedure reads or modifies arg,
'\"	and indent is equivalent to second arg of .IP (shouldn't ever be
'\"	needed;  use .AS below instead)
'\"
'\" .AS ?type? ?name?
'\"	Give maximum sizes of arguments for setting tab stops.  Type and
'\"	name are examples of largest possible arguments that will be passed
'\"	to .AP later.  If args are omitted, default tab stops are used.
'\"
'\" .BS
'\"	Start box enclosure.  From here until next .BE, everything will be
'\"	enclosed in one large box.
'\"
'\" .BE
'\"	End of box enclosure.
'\"
'\" .CS
'\"	Begin code excerpt.
'\"
'\" .CE
'\"	End code excerpt.
'\"
'\" .VS ?version? ?br?
'\"	Begin vertical sidebar, for use in marking newly-changed parts
'\"	of man pages.  The first argument is ignored and used for recording
'\"	the version when the .VS was added, so that the sidebars can be
'\"	found and removed when they reach a certain age.  If another argument
'\"	is present, then a line break is forced before starting the sidebar.
'\"
'\" .VE
'\"	End of vertical sidebar.
'\"
'\" .DS
'\"	Begin an indented unfilled display.
'\"
'\" .DE
'\"	End of indented unfilled display.
'\"
'\" .SO
'\"	Start of list of standard options for a Tk widget.  The
'\"	options follow on successive lines, in four columns separated
'\"	by tabs.
'\"
'\" .SE
'\"	End of list of standard options for a Tk widget.
'\"
'\" .OP cmdName dbName dbClass
'\"	Start of description of a specific option.  cmdName gives the
'\"	option's name as specified in the class command, dbName gives
'\"	the option's name in the option database, and dbClass gives
'\"	the option's class in the option database.
'\"
'\" .UL arg1 arg2
'\"	Print arg1 underlined, then print arg2 normally.
'\"
'\" RCS: @(#) $Id: man.macros,v 1.1 2009/01/30 04:56:47 andreas_kupries Exp $
'\"
'\"	# Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
.if t .wh -1.3i ^B
.nr ^l \n(.l
.ad b
'\"	# Start an argument description
.de AP
.ie !"\\$4"" .TP \\$4
.el \{\
.   ie !"\\$2"" .TP \\n()Cu
.   el          .TP 15
.\}
.ta \\n()Au \\n()Bu
.ie !"\\$3"" \{\
\&\\$1	\\fI\\$2\\fP	(\\$3)
.\".b
.\}
.el \{\
.br
.ie !"\\$2"" \{\
\&\\$1	\\fI\\$2\\fP
.\}
.el \{\
\&\\fI\\$1\\fP
.\}
.\}
..
'\"	# define tabbing values for .AP
.de AS
.nr )A 10n
.if !"\\$1"" .nr )A \\w'\\$1'u+3n
.nr )B \\n()Au+15n
.\"
.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
.nr )C \\n()Bu+\\w'(in/out)'u+2n
..
.AS Tcl_Interp Tcl_CreateInterp in/out
'\"	# BS - start boxed text
'\"	# ^y = starting y location
'\"	# ^b = 1
.de BS
.br
.mk ^y
.nr ^b 1u
.if n .nf
.if n .ti 0
.if n \l'\\n(.lu\(ul'
.if n .fi
..
'\"	# BE - end boxed text (draw box now)
.de BE
.nf
.ti 0
.mk ^t
.ie n \l'\\n(^lu\(ul'
.el \{\
.\"	Draw four-sided box normally, but don't draw top of
.\"	box if the box started on an earlier page.
.ie !\\n(^b-1 \{\
\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.el \}\
\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
.\}
.\}
.fi
.br
.nr ^b 0
..
'\"	# VS - start vertical sidebar
'\"	# ^Y = starting y location
'\"	# ^v = 1 (for troff;  for nroff this doesn't matter)
.de VS
.if !"\\$2"" .br
.mk ^Y
.ie n 'mc \s12\(br\s0
.el .nr ^v 1u
..
'\"	# VE - end of vertical sidebar
.de VE
.ie n 'mc
.el \{\
.ev 2
.nf
.ti 0
.mk ^t
\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
.sp -1
.fi
.ev
.\}
.nr ^v 0
..
'\"	# Special macro to handle page bottom:  finish off current
'\"	# box/sidebar if in box/sidebar mode, then invoked standard
'\"	# page bottom macro.
.de ^B
.ev 2
'ti 0
'nf
.mk ^t
.if \\n(^b \{\
.\"	Draw three-sided box if this is the box's first page,
.\"	draw two sides but no top otherwise.
.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
.\}
.if \\n(^v \{\
.nr ^x \\n(^tu+1v-\\n(^Yu
\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
.\}
.bp
'fi
.ev
.if \\n(^b \{\
.mk ^y
.nr ^b 2
.\}
.if \\n(^v \{\
.mk ^Y
.\}
..
'\"	# DS - begin display
.de DS
.RS
.nf
.sp
..
'\"	# DE - end display
.de DE
.fi
.RE
.sp
..
'\"	# SO - start of list of standard options
.de SO
.SH "STANDARD OPTIONS"
.LP
.nf
.ta 4c 8c 12c
.ft B
..
'\"	# SE - end of list of standard options
.de SE
.fi
.ft R
.LP
See the \\fBoptions\\fR manual entry for details on the standard options.
..
'\"	# OP - start of full description for a single option
.de OP
.LP
.nf
.ta 4c
Command-Line Name:	\\fB\\$1\\fR
Database Name:	\\fB\\$2\\fR
Database Class:	\\fB\\$3\\fR
.fi
.IP
..
'\"	# CS - begin code excerpt
.de CS
.RS
.nf
.ta .25i .5i .75i 1i
..
'\"	# CE - end code excerpt
.de CE
.fi
.RE
..
.de UL
\\$1\l'|0\(ul'\\$2
..
.TH "cmdr_validate_common" n 0 doc "<<unknown>>"
.BS
.SH NAME
cmdr_validate_common \- Utilities for Validation Types
.SH SYNOPSIS
package require \fBcmdr::validate::common \fR
.sp
\fB::cmdr::validate::common\fR \fBfail\fR \fIp\fR \fIcode\fR \fItype\fR \fIx\fR
.sp
\fB::cmdr::validate::common\fR \fBcomplete-enum\fR \fIchoices\fR \fInocase\fR \fIbuffer\fR
.sp
\fB::cmdr::validate::common\fR \fBcomplete-glob\fR \fIfilter\fR \fIbuffer\fR
.sp
.BE
.SH DESCRIPTION
.PP
Welcome to the Cmdr project, written by Andreas Kupries\&.
.PP
For availability please read \fICmdr - How To Get The Sources\fR\&.
.PP
This package publicly exports three commands for use in the
implementation of validation types\&.
The standard validation types defined in package
\fBcmdr::validate\fR make use of these commands\&.
.SH API
.TP
\fB::cmdr::validate::common\fR \fBfail\fR \fIp\fR \fIcode\fR \fItype\fR \fIx\fR
When invoked this command throws an error indicating a validation type
failure\&. The arguments provide the information used to construct both
error message and code\&.
.RS
.TP
\fBcmdr::parameter\fR \fIp\fR
The \fBcmdr::parameter\fR instance whose validation failed\&. The
error message will contain this parameter's type and label (flag in
case of an option)\&.
.TP
list \fIcode\fR
A list providing additional elements for the error code, detailing the
internal name of the validation type triggering the error\&.
.TP
string \fItype\fR
A string providing the human-readable name of the validation type
triggering the error\&.
.TP
string \fIx\fR
The string value failing the validation\&.
.RE
.TP
\fB::cmdr::validate::common\fR \fBcomplete-enum\fR \fIchoices\fR \fInocase\fR \fIbuffer\fR
When invoked this command returns a list of strings containing just
the elements of \fIchoices\fR the value of \fIbuffer\fR is a prefix
of\&. When \fInocase\fR is set the command will ignore letter case and
treat the string in \fIbuffer\fR as all-lowercase\&.
.RS
.TP
list \fIchoices\fR
The list of values which can complete the data in \fIbuffer\fR\&.
.TP
boolean \fInocase\fR
A boolean flag specifying if the completion is done ignoring
letter-case (\fBtrue\fR), or not (\fBfalse\fR))\&.
.TP
string \fIbuffer\fR
The string to complete via the list of \fIchoices\fR\&.
.RE
.TP
\fB::cmdr::validate::common\fR \fBcomplete-glob\fR \fIfilter\fR \fIbuffer\fR
When invoked this command returns a list of strings, the paths in the
filesystem the value of \fIbuffer\fR is a prefix of, and not rejected
by the \fIfilter\fR command (prefix)\&.
.sp
Note that when the value of \fIbuffer\fR is a relative path the
current working directory is used to locate matches\&.
.RS
.TP
cmd-prefix \fIfilter\fR
A command prefix taking a single argument, the candidate path, and
returning a boolean value indicating (non-)acceptance of the path\&. A
result of \fBtrue\fR accepts the candidate, \fBfalse\fR rejects
it\&.
.TP
string \fIbuffer\fR
The string, a partial path, to complete\&.
.RE
.PP
.SH "BUGS, IDEAS, FEEDBACK"
Both the package(s) and this documentation will undoubtedly contain
bugs and other problems\&.
Please report such at
\fICmdr Tickets\fR [https:/core\&.tcl\&.tk/akupries/cmdr]\&.
.PP
Please also report any ideas you may have for enhancements of
either package(s) and/or documentation\&.
.SH KEYWORDS
arguments, command hierarchy, command line completion, command line handling, command tree, editing command line, help for command line, hierarchy of commands, interactive command shell, optional arguments, options, parameters, processing command line, tree of commands
.SH COPYRIGHT
.nf
Copyright (c) 2013 Andreas Kupries
Copyright (c) 2013 Documentation, Andreas Kupries

.fi

Changes to embedded/man/index.n.

240
241
242
243
244
245
246
247
248
249
250
251
252









253
254
255
256
257
258
259
260
261
262
263






264
265
266
267
268
269
270
271
272
273









274
275
276
277
278
279
280
281
282
283
284






285
286
287
288
289
290
291
292
293
294









295
296
297
298
299
300
301
302
303
304
305






306
307
308
309
310
311
312
313
314
315









316
317
318
319
320
321
322
323
324
325
326






327
328
329
330
331
332
333
334
335
336









337
338
339
340
341
342
343
344
345
346
347






348
349
350
351
352
353
354
355
356
357









358
359
360
361
362
363
364
365
366
367
368






369
370
371
372
373
374
375
376
377
378









379
380
381
382
383
384
385
386
387
388
389






390
391
392
393
394
395
396
397
398
399









400
401
402
403
404
405
406
407
408
409
410






411
412
413
414
415
416
417
418
419
420









421
422
423
424
425
426
427
428
429
430
431






432
433
434
435
436
437
438
439
440
441









442
443
444
445
446
447
448
449
450
451
452






453
454
455
456
457
458
459
460
461
462









463
464
465
466
467
468
469
470
471
472
473






474
475
476
477
478
479
480
481
482
483









484
485
486
487
488
489
490
491
492
493
494






495
496
497
498
499
500
501
502
503
504









505
506
507
508
509
510
511
512
513
514
515






516
517
518
519
520
521
522
523
524
525









526
527
528
529
530
531
532
533
534
535
536






537
.BS
.SH INDEX
doc
.RS
arguments
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
command hierarchy
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
command line completion
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
command line handling
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
command tree
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
editing command line
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
help for command line
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
hierarchy of commands
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
interactive command shell
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
optional arguments
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
options
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
parameters
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
processing command line
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE
tree of commands
.RS
.TP
\fBfiles/cmdr_changes.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development.n\fR
cmdr_development
.TP









\fBfiles/cmdr_howto_get_sources.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license.n\fR
cmdr_license






.RE







|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>




|


|


>
>
>
>
>
>
>
>
>
|


|


|


|

>
>
>
>
>
>

240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
.BS
.SH INDEX
doc
.RS
arguments
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
command hierarchy
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
command line completion
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
command line handling
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
command tree
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
editing command line
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
help for command line
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
hierarchy of commands
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
interactive command shell
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
optional arguments
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
options
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
parameters
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
processing command line
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE
tree of commands
.RS
.TP
\fBfiles/cmdr_changes\&.n\fR
cmdr_changes
.TP
\fBfiles/cmdr_howto_development\&.n\fR
cmdr_development
.TP
\fBfiles/help\&.n\fR
cmdr_help
.TP
\fBfiles/help_json\&.n\fR
cmdr_help_json
.TP
\fBfiles/help_sql\&.n\fR
cmdr_help_sql
.TP
\fBfiles/cmdr_howto_get_sources\&.n\fR
cmdr_howto_get_sources
.TP
\fBfiles/cmdr_howto_installation\&.n\fR
cmdr_installation
.TP
\fBfiles/cmdr_introduction\&.n\fR
cmdr_introduction
.TP
\fBfiles/cmdr_license\&.n\fR
cmdr_license
.TP
\fBfiles/util\&.n\fR
cmdr_util
.TP
\fBfiles/vcommon\&.n\fR
cmdr_validate_common
.RE

Changes to embedded/man/toc.n.

239
240
241
242
243
244
245
246
247
248
249
250









251
252
253
254
255
256
257
258
259
260
261






.TH "Table Of Contents" n
.BS
.SH CONTENTS
doc
.RS
.TP
\fBcmdr_changes\fR
\fIfiles/cmdr_changes.n\fR: Cmdr - Log of Changes
.TP
\fBcmdr_development\fR
\fIfiles/cmdr_howto_development.n\fR: Cmdr - The Developer's Guide
.TP









\fBcmdr_howto_get_sources\fR
\fIfiles/cmdr_howto_get_sources.n\fR: Cmdr - How To Get The Sources
.TP
\fBcmdr_installation\fR
\fIfiles/cmdr_howto_installation.n\fR: Cmdr - The Installer's Guide
.TP
\fBcmdr_introduction\fR
\fIfiles/cmdr_introduction.n\fR: Cmdr - Introduction to the project
.TP
\fBcmdr_license\fR
\fIfiles/cmdr_license.n\fR: Cmdr - License













|


|

>
>
>
>
>
>
>
>
>

|


|


|


|
>
>
>
>
>
>
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
.TH "Table Of Contents" n
.BS
.SH CONTENTS
doc
.RS
.TP
\fBcmdr_changes\fR
\fIfiles/cmdr_changes\&.n\fR: Cmdr - Log of Changes
.TP
\fBcmdr_development\fR
\fIfiles/cmdr_howto_development\&.n\fR: Cmdr - The Developer's Guide
.TP
\fBcmdr_help\fR
\fIfiles/help\&.n\fR: Utilities for help text formatting and setup - Internal
.TP
\fBcmdr_help_json\fR
\fIfiles/help_json\&.n\fR: Formatting help as JSON object
.TP
\fBcmdr_help_sql\fR
\fIfiles/help_sql\&.n\fR: Formatting help as series of SQL commands
.TP
\fBcmdr_howto_get_sources\fR
\fIfiles/cmdr_howto_get_sources\&.n\fR: Cmdr - How To Get The Sources
.TP
\fBcmdr_installation\fR
\fIfiles/cmdr_howto_installation\&.n\fR: Cmdr - The Installer's Guide
.TP
\fBcmdr_introduction\fR
\fIfiles/cmdr_introduction\&.n\fR: Cmdr - Introduction to the project
.TP
\fBcmdr_license\fR
\fIfiles/cmdr_license\&.n\fR: Cmdr - License
.TP
\fBcmdr_util\fR
\fIfiles/util\&.n\fR: General Utilities - Internal
.TP
\fBcmdr_validate_common\fR
\fIfiles/vcommon\&.n\fR: Utilities for Validation Types

Changes to embedded/www/doc/files/cmdr_changes.html.

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/www/doc/files/cmdr_changes.html' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_changes.n
   -->
<body><div class="doctools">
<hr> [







|







88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'cmdr_changes.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_changes.n
   -->
<body><div class="doctools">
<hr> [

Changes to embedded/www/doc/files/cmdr_howto_development.html.

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/www/doc/files/cmdr_howto_development.html' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_development.n
   -->
<body><div class="doctools">
<hr> [







|







88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'cmdr_howto_development.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_development.n
   -->
<body><div class="doctools">
<hr> [

Changes to embedded/www/doc/files/cmdr_howto_get_sources.html.

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/www/doc/files/cmdr_howto_get_sources.html' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_howto_get_sources.n
   -->
<body><div class="doctools">
<hr> [







|







88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'cmdr_howto_get_sources.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_howto_get_sources.n
   -->
<body><div class="doctools">
<hr> [

Changes to embedded/www/doc/files/cmdr_howto_installation.html.

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/www/doc/files/cmdr_howto_installation.html' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_installation.n
   -->
<body><div class="doctools">
<hr> [







|







88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'cmdr_howto_installation.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_installation.n
   -->
<body><div class="doctools">
<hr> [

Changes to embedded/www/doc/files/cmdr_introduction.html.

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/www/doc/files/cmdr_introduction.html' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_introduction.n
   -->
<body><div class="doctools">
<hr> [







|







88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'cmdr_introduction.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_introduction.n
   -->
<body><div class="doctools">
<hr> [

Changes to embedded/www/doc/files/cmdr_license.html.

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file '/net/nas/data/andreask/Dev/Cmdr/dev/embedded/www/doc/files/cmdr_license.html' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_license.n
   -->
<body><div class="doctools">
<hr> [







|







88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'cmdr_license.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_license.n
   -->
<body><div class="doctools">
<hr> [

Added embedded/www/doc/files/help.html.

































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176

<html><head>
<title>cmdr_help - &lt;&lt;unknown&gt;&gt;</title>
<style type="text/css"><!--
    HTML {
	background: 	#FFFFFF;
	color: 		black;
    }
    BODY {
	background: 	#FFFFFF;
	color:	 	black;
    }
    DIV.doctools {
	margin-left:	10%;
	margin-right:	10%;
    }
    DIV.doctools H1,DIV.doctools H2 {
	margin-left:	-5%;
    }
    H1, H2, H3, H4 {
	margin-top: 	1em;
	font-family:	sans-serif;
	font-size:	large;
	color:		#005A9C;
	background: 	transparent;
	text-align:		left;
    }
    H1.title {
	text-align: center;
    }
    UL,OL {
	margin-right: 0em;
	margin-top: 3pt;
	margin-bottom: 3pt;
    }
    UL LI {
	list-style: disc;
    }
    OL LI {
	list-style: decimal;
    }
    DT {
	padding-top: 	1ex;
    }
    UL.toc,UL.toc UL, UL.toc UL UL {
	font:		normal 12pt/14pt sans-serif;
	list-style:	none;
    }
    LI.section, LI.subsection {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding: 	0em;
    }
    PRE {
	display: 	block;
	font-family:	monospace;
	white-space:	pre;
	margin:		0%;
	padding-top:	0.5ex;
	padding-bottom:	0.5ex;
	padding-left:	1ex;
	padding-right:	1ex;
	width:		100%;
    }
    PRE.example {
	color: 		black;
	background: 	#f5dcb3;
	border:		1px solid black;
    }
    UL.requirements LI, UL.syntax LI {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding:	0em;
    }
    DIV.synopsis {
	color: 		black;
	background: 	#80ffff;
	border:		1px solid black;
	font-family:	serif;
	margin-top: 	1em;
	margin-bottom: 	1em;
    }
    UL.syntax {
	margin-top: 	1em;
	border-top:	1px solid black;
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'help.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_help.n
   -->
<body><div class="doctools">
<hr> [
   <a href="../../../../../../home">Home</a>
| <a href="../../toc.html">Main Table Of Contents</a>
| <a href="../toc.html">Table Of Contents</a>
| <a href="../../index.html">Keyword Index</a>
 ] <hr>
<h1 class="title">cmdr_help(n) 0 doc &quot;&lt;&lt;unknown&gt;&gt;&quot;</h1>
<div id="name" class="section"><h2><a name="name">Name</a></h2>
<p>cmdr_help - Utilities for help text formatting and setup - Internal</p>
</div>
<div id="toc" class="section"><h2><a name="toc">Table Of Contents</a></h2>
<ul class="toc">
<li class="section"><a href="#toc">Table Of Contents</a></li>
<li class="section"><a href="#synopsis">Synopsis</a></li>
<li class="section"><a href="#section1">Description</a></li>
<li class="section"><a href="#section2">API</a></li>
<li class="section"><a href="#section3">Bugs, Ideas, Feedback</a></li>
<li class="section"><a href="#keywords">Keywords</a></li>
<li class="section"><a href="#copyright">Copyright</a></li>
</ul>
</div>
<div id="synopsis" class="section"><h2><a name="synopsis">Synopsis</a></h2>
<div class="synopsis">
<ul class="requirements">
<li>package require <b class="pkgname">cmdr::help</b></li>
</ul>
<ul class="syntax">
<li><a href="#1"><b class="cmd">::cmdr::help</b> <b class="method">auto</b> <i class="arg">actor</i></a></li>
</ul>
</div>
</div>
<div id="section1" class="section"><h2><a name="section1">Description</a></h2>
<p>Welcome to the Cmdr project, written by Andreas Kupries.</p>
<p>For availability please read <i class="term"><a href="cmdr_howto_get_sources.html">Cmdr - How To Get The Sources</a></i>.</p>
<p>This internal package implements the four standard help formats
<b class="const">full</b>, <b class="const">short</b>, <b class="const">list</b>, and <b class="const">by-category</b>.</p>
<p>It provides a single utility command used by the other parts of
the framework to add a <b class="syscmd">help</b> command to any
<b class="package">cmdr::actor</b> requiring such.</p>
</div>
<div id="section2" class="section"><h2><a name="section2">API</a></h2>
<dl class="definitions">
<dt><a name="1"><b class="cmd">::cmdr::help</b> <b class="method">auto</b> <i class="arg">actor</i></a></dt>
<dd><p>When invoked this command extends the <i class="arg">actor</i> with a <b class="const">help</b>
command. The result of the command is the empty string.</p>
<p>The inserted command will accept all known format names as
options, enabling the user to choose the form of the help. By default
the format <b class="const">by-category</b> will be used, except if a command name
was given to <b class="syscmd">help</b>, then the default will be <b class="const">full</b>.</p>
<p>An additional option accepted by <b class="syscmd">help</b> is
<b class="const">--width</b>, giving the user control over the length of lines
in the help. By default help will be formatted to the width of the
terminal.</p>
<dl class="arguments">
<dt><b class="package">cmdr::actor</b> <i class="arg">actor</i></dt>
<dd><p>The <b class="package">cmdr::actor</b> instance to be extended with <b class="syscmd">help</b>.</p></dd>
</dl></dd>
</dl>
</div>
<div id="section3" class="section"><h2><a name="section3">Bugs, Ideas, Feedback</a></h2>
<p>Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
<a href="https:/core.tcl.tk/akupries/cmdr">Cmdr Tickets</a>.</p>
<p>Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.</p>
</div>
<div id="keywords" class="section"><h2><a name="keywords">Keywords</a></h2>
<p><a href="../../index.html#key4">arguments</a>, <a href="../../index.html#key5">command hierarchy</a>, <a href="../../index.html#key9">command line completion</a>, <a href="../../index.html#key11">command line handling</a>, <a href="../../index.html#key13">command tree</a>, <a href="../../index.html#key0">editing command line</a>, <a href="../../index.html#key8">help for command line</a>, <a href="../../index.html#key6">hierarchy of commands</a>, <a href="../../index.html#key3">interactive command shell</a>, <a href="../../index.html#key1">optional arguments</a>, <a href="../../index.html#key2">options</a>, <a href="../../index.html#key12">parameters</a>, <a href="../../index.html#key10">processing command line</a>, <a href="../../index.html#key7">tree of commands</a></p>
</div>
<div id="copyright" class="section"><h2><a name="copyright">Copyright</a></h2>
<p>Copyright &copy; 2013 Andreas Kupries<br>
Copyright &copy; 2013 Documentation, Andreas Kupries</p>
</div>
</div></body></html>

Added embedded/www/doc/files/help_json.html.



























































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157

<html><head>
<title>cmdr_help_json - &lt;&lt;unknown&gt;&gt;</title>
<style type="text/css"><!--
    HTML {
	background: 	#FFFFFF;
	color: 		black;
    }
    BODY {
	background: 	#FFFFFF;
	color:	 	black;
    }
    DIV.doctools {
	margin-left:	10%;
	margin-right:	10%;
    }
    DIV.doctools H1,DIV.doctools H2 {
	margin-left:	-5%;
    }
    H1, H2, H3, H4 {
	margin-top: 	1em;
	font-family:	sans-serif;
	font-size:	large;
	color:		#005A9C;
	background: 	transparent;
	text-align:		left;
    }
    H1.title {
	text-align: center;
    }
    UL,OL {
	margin-right: 0em;
	margin-top: 3pt;
	margin-bottom: 3pt;
    }
    UL LI {
	list-style: disc;
    }
    OL LI {
	list-style: decimal;
    }
    DT {
	padding-top: 	1ex;
    }
    UL.toc,UL.toc UL, UL.toc UL UL {
	font:		normal 12pt/14pt sans-serif;
	list-style:	none;
    }
    LI.section, LI.subsection {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding: 	0em;
    }
    PRE {
	display: 	block;
	font-family:	monospace;
	white-space:	pre;
	margin:		0%;
	padding-top:	0.5ex;
	padding-bottom:	0.5ex;
	padding-left:	1ex;
	padding-right:	1ex;
	width:		100%;
    }
    PRE.example {
	color: 		black;
	background: 	#f5dcb3;
	border:		1px solid black;
    }
    UL.requirements LI, UL.syntax LI {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding:	0em;
    }
    DIV.synopsis {
	color: 		black;
	background: 	#80ffff;
	border:		1px solid black;
	font-family:	serif;
	margin-top: 	1em;
	margin-bottom: 	1em;
    }
    UL.syntax {
	margin-top: 	1em;
	border-top:	1px solid black;
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'help_json.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_help_json.n
   -->
<body><div class="doctools">
<hr> [
   <a href="../../../../../../home">Home</a>
| <a href="../../toc.html">Main Table Of Contents</a>
| <a href="../toc.html">Table Of Contents</a>
| <a href="../../index.html">Keyword Index</a>
 ] <hr>
<h1 class="title">cmdr_help_json(n) 0 doc &quot;&lt;&lt;unknown&gt;&gt;&quot;</h1>
<div id="name" class="section"><h2><a name="name">Name</a></h2>
<p>cmdr_help_json - Formatting help as JSON object</p>
</div>
<div id="toc" class="section"><h2><a name="toc">Table Of Contents</a></h2>
<ul class="toc">
<li class="section"><a href="#toc">Table Of Contents</a></li>
<li class="section"><a href="#synopsis">Synopsis</a></li>
<li class="section"><a href="#section1">Description</a></li>
<li class="section"><a href="#section2">Bugs, Ideas, Feedback</a></li>
<li class="section"><a href="#keywords">Keywords</a></li>
<li class="section"><a href="#copyright">Copyright</a></li>
</ul>
</div>
<div id="synopsis" class="section"><h2><a name="synopsis">Synopsis</a></h2>
<div class="synopsis">
<ul class="requirements">
<li>package require <b class="pkgname">cmdr::help::json</b></li>
</ul>
</div>
</div>
<div id="section1" class="section"><h2><a name="section1">Description</a></h2>
<p>Welcome to the Cmdr project, written by Andreas Kupries.</p>
<p>For availability please read <i class="term"><a href="cmdr_howto_get_sources.html">Cmdr - How To Get The Sources</a></i>.</p>
<p>This package provides a single command implementing the help format
<b class="const">json</b>. This format generates help in the form of a nested JSON
object containing all details of the command hierarchy, including
internals.</p>
<p>To activate the format simply</p>
<pre class="example">
    package require cmdr::help::json
</pre>
<p>it. Nothing more is needed.</p>
</div>
<div id="section2" class="section"><h2><a name="section2">Bugs, Ideas, Feedback</a></h2>
<p>Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
<a href="https:/core.tcl.tk/akupries/cmdr">Cmdr Tickets</a>.</p>
<p>Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.</p>
</div>
<div id="keywords" class="section"><h2><a name="keywords">Keywords</a></h2>
<p><a href="../../index.html#key4">arguments</a>, <a href="../../index.html#key5">command hierarchy</a>, <a href="../../index.html#key9">command line completion</a>, <a href="../../index.html#key11">command line handling</a>, <a href="../../index.html#key13">command tree</a>, <a href="../../index.html#key0">editing command line</a>, <a href="../../index.html#key8">help for command line</a>, <a href="../../index.html#key6">hierarchy of commands</a>, <a href="../../index.html#key3">interactive command shell</a>, <a href="../../index.html#key1">optional arguments</a>, <a href="../../index.html#key2">options</a>, <a href="../../index.html#key12">parameters</a>, <a href="../../index.html#key10">processing command line</a>, <a href="../../index.html#key7">tree of commands</a></p>
</div>
<div id="copyright" class="section"><h2><a name="copyright">Copyright</a></h2>
<p>Copyright &copy; 2013 Andreas Kupries<br>
Copyright &copy; 2013 Documentation, Andreas Kupries</p>
</div>
</div></body></html>

Added embedded/www/doc/files/help_sql.html.

























































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156

<html><head>
<title>cmdr_help_sql - &lt;&lt;unknown&gt;&gt;</title>
<style type="text/css"><!--
    HTML {
	background: 	#FFFFFF;
	color: 		black;
    }
    BODY {
	background: 	#FFFFFF;
	color:	 	black;
    }
    DIV.doctools {
	margin-left:	10%;
	margin-right:	10%;
    }
    DIV.doctools H1,DIV.doctools H2 {
	margin-left:	-5%;
    }
    H1, H2, H3, H4 {
	margin-top: 	1em;
	font-family:	sans-serif;
	font-size:	large;
	color:		#005A9C;
	background: 	transparent;
	text-align:		left;
    }
    H1.title {
	text-align: center;
    }
    UL,OL {
	margin-right: 0em;
	margin-top: 3pt;
	margin-bottom: 3pt;
    }
    UL LI {
	list-style: disc;
    }
    OL LI {
	list-style: decimal;
    }
    DT {
	padding-top: 	1ex;
    }
    UL.toc,UL.toc UL, UL.toc UL UL {
	font:		normal 12pt/14pt sans-serif;
	list-style:	none;
    }
    LI.section, LI.subsection {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding: 	0em;
    }
    PRE {
	display: 	block;
	font-family:	monospace;
	white-space:	pre;
	margin:		0%;
	padding-top:	0.5ex;
	padding-bottom:	0.5ex;
	padding-left:	1ex;
	padding-right:	1ex;
	width:		100%;
    }
    PRE.example {
	color: 		black;
	background: 	#f5dcb3;
	border:		1px solid black;
    }
    UL.requirements LI, UL.syntax LI {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding:	0em;
    }
    DIV.synopsis {
	color: 		black;
	background: 	#80ffff;
	border:		1px solid black;
	font-family:	serif;
	margin-top: 	1em;
	margin-bottom: 	1em;
    }
    UL.syntax {
	margin-top: 	1em;
	border-top:	1px solid black;
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'help_sql.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_help_sql.n
   -->
<body><div class="doctools">
<hr> [
   <a href="../../../../../../home">Home</a>
| <a href="../../toc.html">Main Table Of Contents</a>
| <a href="../toc.html">Table Of Contents</a>
| <a href="../../index.html">Keyword Index</a>
 ] <hr>
<h1 class="title">cmdr_help_sql(n) 0 doc &quot;&lt;&lt;unknown&gt;&gt;&quot;</h1>
<div id="name" class="section"><h2><a name="name">Name</a></h2>
<p>cmdr_help_sql - Formatting help as series of SQL commands</p>
</div>
<div id="toc" class="section"><h2><a name="toc">Table Of Contents</a></h2>
<ul class="toc">
<li class="section"><a href="#toc">Table Of Contents</a></li>
<li class="section"><a href="#synopsis">Synopsis</a></li>
<li class="section"><a href="#section1">Description</a></li>
<li class="section"><a href="#section2">Bugs, Ideas, Feedback</a></li>
<li class="section"><a href="#keywords">Keywords</a></li>
<li class="section"><a href="#copyright">Copyright</a></li>
</ul>
</div>
<div id="synopsis" class="section"><h2><a name="synopsis">Synopsis</a></h2>
<div class="synopsis">
<ul class="requirements">
<li>package require <b class="pkgname">cmdr::help::sql</b></li>
</ul>
</div>
</div>
<div id="section1" class="section"><h2><a name="section1">Description</a></h2>
<p>Welcome to the Cmdr project, written by Andreas Kupries.</p>
<p>For availability please read <i class="term"><a href="cmdr_howto_get_sources.html">Cmdr - How To Get The Sources</a></i>.</p>
<p>This package provides a single command implementing the help format
<b class="const">sql</b>. This format generates help as a series of SQL commands
filling a simple database with the command hierarchy.</p>
<p>To activate the format simply</p>
<pre class="example">
    package require cmdr::help::sql
</pre>
<p>it. Nothing more is needed.</p>
</div>
<div id="section2" class="section"><h2><a name="section2">Bugs, Ideas, Feedback</a></h2>
<p>Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
<a href="https:/core.tcl.tk/akupries/cmdr">Cmdr Tickets</a>.</p>
<p>Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.</p>
</div>
<div id="keywords" class="section"><h2><a name="keywords">Keywords</a></h2>
<p><a href="../../index.html#key4">arguments</a>, <a href="../../index.html#key5">command hierarchy</a>, <a href="../../index.html#key9">command line completion</a>, <a href="../../index.html#key11">command line handling</a>, <a href="../../index.html#key13">command tree</a>, <a href="../../index.html#key0">editing command line</a>, <a href="../../index.html#key8">help for command line</a>, <a href="../../index.html#key6">hierarchy of commands</a>, <a href="../../index.html#key3">interactive command shell</a>, <a href="../../index.html#key1">optional arguments</a>, <a href="../../index.html#key2">options</a>, <a href="../../index.html#key12">parameters</a>, <a href="../../index.html#key10">processing command line</a>, <a href="../../index.html#key7">tree of commands</a></p>
</div>
<div id="copyright" class="section"><h2><a name="copyright">Copyright</a></h2>
<p>Copyright &copy; 2013 Andreas Kupries<br>
Copyright &copy; 2013 Documentation, Andreas Kupries</p>
</div>
</div></body></html>

Added embedded/www/doc/files/util.html.

















































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168

<html><head>
<title>cmdr_util - &lt;&lt;unknown&gt;&gt;</title>
<style type="text/css"><!--
    HTML {
	background: 	#FFFFFF;
	color: 		black;
    }
    BODY {
	background: 	#FFFFFF;
	color:	 	black;
    }
    DIV.doctools {
	margin-left:	10%;
	margin-right:	10%;
    }
    DIV.doctools H1,DIV.doctools H2 {
	margin-left:	-5%;
    }
    H1, H2, H3, H4 {
	margin-top: 	1em;
	font-family:	sans-serif;
	font-size:	large;
	color:		#005A9C;
	background: 	transparent;
	text-align:		left;
    }
    H1.title {
	text-align: center;
    }
    UL,OL {
	margin-right: 0em;
	margin-top: 3pt;
	margin-bottom: 3pt;
    }
    UL LI {
	list-style: disc;
    }
    OL LI {
	list-style: decimal;
    }
    DT {
	padding-top: 	1ex;
    }
    UL.toc,UL.toc UL, UL.toc UL UL {
	font:		normal 12pt/14pt sans-serif;
	list-style:	none;
    }
    LI.section, LI.subsection {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding: 	0em;
    }
    PRE {
	display: 	block;
	font-family:	monospace;
	white-space:	pre;
	margin:		0%;
	padding-top:	0.5ex;
	padding-bottom:	0.5ex;
	padding-left:	1ex;
	padding-right:	1ex;
	width:		100%;
    }
    PRE.example {
	color: 		black;
	background: 	#f5dcb3;
	border:		1px solid black;
    }
    UL.requirements LI, UL.syntax LI {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding:	0em;
    }
    DIV.synopsis {
	color: 		black;
	background: 	#80ffff;
	border:		1px solid black;
	font-family:	serif;
	margin-top: 	1em;
	margin-bottom: 	1em;
    }
    UL.syntax {
	margin-top: 	1em;
	border-top:	1px solid black;
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'util.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_util.n
   -->
<body><div class="doctools">
<hr> [
   <a href="../../../../../../home">Home</a>
| <a href="../../toc.html">Main Table Of Contents</a>
| <a href="../toc.html">Table Of Contents</a>
| <a href="../../index.html">Keyword Index</a>
 ] <hr>
<h1 class="title">cmdr_util(n) 0 doc &quot;&lt;&lt;unknown&gt;&gt;&quot;</h1>
<div id="name" class="section"><h2><a name="name">Name</a></h2>
<p>cmdr_util - General Utilities - Internal</p>
</div>
<div id="toc" class="section"><h2><a name="toc">Table Of Contents</a></h2>
<ul class="toc">
<li class="section"><a href="#toc">Table Of Contents</a></li>
<li class="section"><a href="#synopsis">Synopsis</a></li>
<li class="section"><a href="#section1">Description</a></li>
<li class="section"><a href="#section2">API</a></li>
<li class="section"><a href="#section3">Bugs, Ideas, Feedback</a></li>
<li class="section"><a href="#keywords">Keywords</a></li>
<li class="section"><a href="#copyright">Copyright</a></li>
</ul>
</div>
<div id="synopsis" class="section"><h2><a name="synopsis">Synopsis</a></h2>
<div class="synopsis">
<ul class="requirements">
<li>package require <b class="pkgname">cmdr::util</b></li>
</ul>
<ul class="syntax">
<li><a href="#1"><b class="cmd">::cmdr::util</b> <b class="method">padr</b> <i class="arg">list</i></a></li>
</ul>
</div>
</div>
<div id="section1" class="section"><h2><a name="section1">Description</a></h2>
<p>Welcome to the Cmdr project, written by Andreas Kupries.</p>
<p>For availability please read <i class="term"><a href="cmdr_howto_get_sources.html">Cmdr - How To Get The Sources</a></i>.</p>
<p>This internal package provides a single utility command.</p>
</div>
<div id="section2" class="section"><h2><a name="section2">API</a></h2>
<dl class="definitions">
<dt><a name="1"><b class="cmd">::cmdr::util</b> <b class="method">padr</b> <i class="arg">list</i></a></dt>
<dd><p>When invoked this command pads all elements of the specified
<i class="arg">list</i> at their end with space (ASCII 32 decimal) characters to
make them all the same length, the length of the longest element in
the list.</p>
<p>The modified list is returned as the result of the command.</p>
<dl class="arguments">
<dt>list <i class="arg">list</i></dt>
<dd><p>A list of strings to normalize in length by appending space characters
as needed.</p></dd>
</dl></dd>
</dl>
</div>
<div id="section3" class="section"><h2><a name="section3">Bugs, Ideas, Feedback</a></h2>
<p>Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
<a href="https:/core.tcl.tk/akupries/cmdr">Cmdr Tickets</a>.</p>
<p>Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.</p>
</div>
<div id="keywords" class="section"><h2><a name="keywords">Keywords</a></h2>
<p><a href="../../index.html#key4">arguments</a>, <a href="../../index.html#key5">command hierarchy</a>, <a href="../../index.html#key9">command line completion</a>, <a href="../../index.html#key11">command line handling</a>, <a href="../../index.html#key13">command tree</a>, <a href="../../index.html#key0">editing command line</a>, <a href="../../index.html#key8">help for command line</a>, <a href="../../index.html#key6">hierarchy of commands</a>, <a href="../../index.html#key3">interactive command shell</a>, <a href="../../index.html#key1">optional arguments</a>, <a href="../../index.html#key2">options</a>, <a href="../../index.html#key12">parameters</a>, <a href="../../index.html#key10">processing command line</a>, <a href="../../index.html#key7">tree of commands</a></p>
</div>
<div id="copyright" class="section"><h2><a name="copyright">Copyright</a></h2>
<p>Copyright &copy; 2013 Andreas Kupries<br>
Copyright &copy; 2013 Documentation, Andreas Kupries</p>
</div>
</div></body></html>

Added embedded/www/doc/files/vcommon.html.



































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209

<html><head>
<title>cmdr_validate_common - &lt;&lt;unknown&gt;&gt;</title>
<style type="text/css"><!--
    HTML {
	background: 	#FFFFFF;
	color: 		black;
    }
    BODY {
	background: 	#FFFFFF;
	color:	 	black;
    }
    DIV.doctools {
	margin-left:	10%;
	margin-right:	10%;
    }
    DIV.doctools H1,DIV.doctools H2 {
	margin-left:	-5%;
    }
    H1, H2, H3, H4 {
	margin-top: 	1em;
	font-family:	sans-serif;
	font-size:	large;
	color:		#005A9C;
	background: 	transparent;
	text-align:		left;
    }
    H1.title {
	text-align: center;
    }
    UL,OL {
	margin-right: 0em;
	margin-top: 3pt;
	margin-bottom: 3pt;
    }
    UL LI {
	list-style: disc;
    }
    OL LI {
	list-style: decimal;
    }
    DT {
	padding-top: 	1ex;
    }
    UL.toc,UL.toc UL, UL.toc UL UL {
	font:		normal 12pt/14pt sans-serif;
	list-style:	none;
    }
    LI.section, LI.subsection {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding: 	0em;
    }
    PRE {
	display: 	block;
	font-family:	monospace;
	white-space:	pre;
	margin:		0%;
	padding-top:	0.5ex;
	padding-bottom:	0.5ex;
	padding-left:	1ex;
	padding-right:	1ex;
	width:		100%;
    }
    PRE.example {
	color: 		black;
	background: 	#f5dcb3;
	border:		1px solid black;
    }
    UL.requirements LI, UL.syntax LI {
	list-style: 	none;
	margin-left: 	0em;
	text-indent:	0em;
	padding:	0em;
    }
    DIV.synopsis {
	color: 		black;
	background: 	#80ffff;
	border:		1px solid black;
	font-family:	serif;
	margin-top: 	1em;
	margin-bottom: 	1em;
    }
    UL.syntax {
	margin-top: 	1em;
	border-top:	1px solid black;
    }
    UL.requirements {
	margin-bottom: 	1em;
	border-bottom:	1px solid black;
    }
--></style>
</head>
<! -- Generated from file 'vcommon.man' by tcllib/doctools with format 'html'
   -->
<! -- Copyright &copy; 2013 Andreas Kupries   -- Copyright &copy; 2013 Documentation, Andreas Kupries
   -->
<! -- CVS: $Id$ cmdr_validate_common.n
   -->
<body><div class="doctools">
<hr> [
   <a href="../../../../../../home">Home</a>
| <a href="../../toc.html">Main Table Of Contents</a>
| <a href="../toc.html">Table Of Contents</a>
| <a href="../../index.html">Keyword Index</a>
 ] <hr>
<h1 class="title">cmdr_validate_common(n) 0 doc &quot;&lt;&lt;unknown&gt;&gt;&quot;</h1>
<div id="name" class="section"><h2><a name="name">Name</a></h2>
<p>cmdr_validate_common - Utilities for Validation Types</p>
</div>
<div id="toc" class="section"><h2><a name="toc">Table Of Contents</a></h2>
<ul class="toc">
<li class="section"><a href="#toc">Table Of Contents</a></li>
<li class="section"><a href="#synopsis">Synopsis</a></li>
<li class="section"><a href="#section1">Description</a></li>
<li class="section"><a href="#section2">API</a></li>
<li class="section"><a href="#section3">Bugs, Ideas, Feedback</a></li>
<li class="section"><a href="#keywords">Keywords</a></li>
<li class="section"><a href="#copyright">Copyright</a></li>
</ul>
</div>
<div id="synopsis" class="section"><h2><a name="synopsis">Synopsis</a></h2>
<div class="synopsis">
<ul class="requirements">
<li>package require <b class="pkgname">cmdr::validate::common</b></li>
</ul>
<ul class="syntax">
<li><a href="#1"><b class="cmd">::cmdr::validate::common</b> <b class="method">fail</b> <i class="arg">p</i> <i class="arg">code</i> <i class="arg">type</i> <i class="arg">x</i></a></li>
<li><a href="#2"><b class="cmd">::cmdr::validate::common</b> <b class="method">complete-enum</b> <i class="arg">choices</i> <i class="arg">nocase</i> <i class="arg">buffer</i></a></li>
<li><a href="#3"><b class="cmd">::cmdr::validate::common</b> <b class="method">complete-glob</b> <i class="arg">filter</i> <i class="arg">buffer</i></a></li>
</ul>
</div>
</div>
<div id="section1" class="section"><h2><a name="section1">Description</a></h2>
<p>Welcome to the Cmdr project, written by Andreas Kupries.</p>
<p>For availability please read <i class="term"><a href="cmdr_howto_get_sources.html">Cmdr - How To Get The Sources</a></i>.</p>
<p>This package publicly exports three commands for use in the
implementation of validation types.
The standard validation types defined in package
<b class="package">cmdr::validate</b> make use of these commands.</p>
</div>
<div id="section2" class="section"><h2><a name="section2">API</a></h2>
<dl class="definitions">
<dt><a name="1"><b class="cmd">::cmdr::validate::common</b> <b class="method">fail</b> <i class="arg">p</i> <i class="arg">code</i> <i class="arg">type</i> <i class="arg">x</i></a></dt>
<dd><p>When invoked this command throws an error indicating a validation type
failure. The arguments provide the information used to construct both
error message and code.</p>
<dl class="arguments">
<dt><b class="package">cmdr::parameter</b> <i class="arg">p</i></dt>
<dd><p>The <b class="package">cmdr::parameter</b> instance whose validation failed. The
error message will contain this parameter's type and label (flag in
case of an option).</p></dd>
<dt>list <i class="arg">code</i></dt>
<dd><p>A list providing additional elements for the error code, detailing the
internal name of the validation type triggering the error.</p></dd>
<dt>string <i class="arg">type</i></dt>
<dd><p>A string providing the human-readable name of the validation type
triggering the error.</p></dd>
<dt>string <i class="arg">x</i></dt>
<dd><p>The string value failing the validation.</p></dd>
</dl></dd>
<dt><a name="2"><b class="cmd">::cmdr::validate::common</b> <b class="method">complete-enum</b> <i class="arg">choices</i> <i class="arg">nocase</i> <i class="arg">buffer</i></a></dt>
<dd><p>When invoked this command returns a list of strings containing just
the elements of <i class="arg">choices</i> the value of <i class="arg">buffer</i> is a prefix
of. When <i class="arg">nocase</i> is set the command will ignore letter case and
treat the string in <i class="arg">buffer</i> as all-lowercase.</p>
<dl class="arguments">
<dt>list <i class="arg">choices</i></dt>
<dd><p>The list of values which can complete the data in <i class="arg">buffer</i>.</p></dd>
<dt>boolean <i class="arg">nocase</i></dt>
<dd><p>A boolean flag specifying if the completion is done ignoring
letter-case (<b class="const">true</b>), or not (<b class="const">false</b>)).</p></dd>
<dt>string <i class="arg">buffer</i></dt>
<dd><p>The string to complete via the list of <i class="arg">choices</i>.</p></dd>
</dl></dd>
<dt><a name="3"><b class="cmd">::cmdr::validate::common</b> <b class="method">complete-glob</b> <i class="arg">filter</i> <i class="arg">buffer</i></a></dt>
<dd><p>When invoked this command returns a list of strings, the paths in the
filesystem the value of <i class="arg">buffer</i> is a prefix of, and not rejected
by the <i class="arg">filter</i> command (prefix).</p>
<p>Note that when the value of <i class="arg">buffer</i> is a relative path the
current working directory is used to locate matches.</p>
<dl class="arguments">
<dt>cmd-prefix <i class="arg">filter</i></dt>
<dd><p>A command prefix taking a single argument, the candidate path, and
returning a boolean value indicating (non-)acceptance of the path. A
result of <b class="const">true</b> accepts the candidate, <b class="const">false</b> rejects
it.</p></dd>
<dt>string <i class="arg">buffer</i></dt>
<dd><p>The string, a partial path, to complete.</p></dd>
</dl></dd>
</dl>
</div>
<div id="section3" class="section"><h2><a name="section3">Bugs, Ideas, Feedback</a></h2>
<p>Both the package(s) and this documentation will undoubtedly contain
bugs and other problems.
Please report such at
<a href="https:/core.tcl.tk/akupries/cmdr">Cmdr Tickets</a>.</p>
<p>Please also report any ideas you may have for enhancements of
either package(s) and/or documentation.</p>
</div>
<div id="keywords" class="section"><h2><a name="keywords">Keywords</a></h2>
<p><a href="../../index.html#key4">arguments</a>, <a href="../../index.html#key5">command hierarchy</a>, <a href="../../index.html#key9">command line completion</a>, <a href="../../index.html#key11">command line handling</a>, <a href="../../index.html#key13">command tree</a>, <a href="../../index.html#key0">editing command line</a>, <a href="../../index.html#key8">help for command line</a>, <a href="../../index.html#key6">hierarchy of commands</a>, <a href="../../index.html#key3">interactive command shell</a>, <a href="../../index.html#key1">optional arguments</a>, <a href="../../index.html#key2">options</a>, <a href="../../index.html#key12">parameters</a>, <a href="../../index.html#key10">processing command line</a>, <a href="../../index.html#key7">tree of commands</a></p>
</div>
<div id="copyright" class="section"><h2><a name="copyright">Copyright</a></h2>
<p>Copyright &copy; 2013 Andreas Kupries<br>
Copyright &copy; 2013 Documentation, Andreas Kupries</p>
</div>
</div></body></html>

Changes to embedded/www/doc/toc.html.

18
19
20
21
22
23
24












25
26
27
28
29
30
31
32
33
34
35
36
37
38
39








40
41
<td class="#tocright">Cmdr - Log of Changes</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/cmdr_howto_development.html">cmdr_development</a></td>
<td class="#tocright">Cmdr - The Developer's Guide</td>
</tr>
<tr class="#toceven" >












<td class="#tocleft" ><a href="files/cmdr_howto_get_sources.html">cmdr_howto_get_sources</a></td>
<td class="#tocright">Cmdr - How To Get The Sources</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/cmdr_howto_installation.html">cmdr_installation</a></td>
<td class="#tocright">Cmdr - The Installer's Guide</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="files/cmdr_introduction.html">cmdr_introduction</a></td>
<td class="#tocright">Cmdr - Introduction to the project</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/cmdr_license.html">cmdr_license</a></td>
<td class="#tocright">Cmdr - License</td>
</tr>








</table>
</dl><hr></body></html>







>
>
>
>
>
>
>
>
>
>
>
>



|



|



|



>
>
>
>
>
>
>
>


18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<td class="#tocright">Cmdr - Log of Changes</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/cmdr_howto_development.html">cmdr_development</a></td>
<td class="#tocright">Cmdr - The Developer's Guide</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="files/help.html">cmdr_help</a></td>
<td class="#tocright">Utilities for help text formatting and setup - Internal</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/help_json.html">cmdr_help_json</a></td>
<td class="#tocright">Formatting help as JSON object</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="files/help_sql.html">cmdr_help_sql</a></td>
<td class="#tocright">Formatting help as series of SQL commands</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/cmdr_howto_get_sources.html">cmdr_howto_get_sources</a></td>
<td class="#tocright">Cmdr - How To Get The Sources</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="files/cmdr_howto_installation.html">cmdr_installation</a></td>
<td class="#tocright">Cmdr - The Installer's Guide</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/cmdr_introduction.html">cmdr_introduction</a></td>
<td class="#tocright">Cmdr - Introduction to the project</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="files/cmdr_license.html">cmdr_license</a></td>
<td class="#tocright">Cmdr - License</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="files/util.html">cmdr_util</a></td>
<td class="#tocright">General Utilities - Internal</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="files/vcommon.html">cmdr_validate_common</a></td>
<td class="#tocright">Utilities for Validation Types</td>
</tr>
</table>
</dl><hr></body></html>

Changes to embedded/www/index.html.

18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<hr><table class="#idx" width="100%">
<tr class="#idxheader"><th colspan="2">
<a name="c1">Keywords: A</a>
</th></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key4"> arguments </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c2">Keywords: C</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key5"> command hierarchy </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key9"> command line completion </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key11"> command line handling </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key13"> command tree </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c3">Keywords: E</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key0"> editing command line </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c4">Keywords: H</a>
</th></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key8"> help for command line </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key6"> hierarchy of commands </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c5">Keywords: I</a>
</th></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key3"> interactive command shell </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c6">Keywords: O</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key1"> optional arguments </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key2"> options </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c7">Keywords: P</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key12"> parameters </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key10"> processing command line </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c8">Keywords: T</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key7"> tree of commands </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a>
</td></tr>
</table>
</body></html>







|







|




|




|




|







|







|




|







|







|




|







|




|







|



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<hr><table class="#idx" width="100%">
<tr class="#idxheader"><th colspan="2">
<a name="c1">Keywords: A</a>
</th></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key4"> arguments </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c2">Keywords: C</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key5"> command hierarchy </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key9"> command line completion </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key11"> command line handling </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key13"> command tree </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c3">Keywords: E</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key0"> editing command line </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c4">Keywords: H</a>
</th></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key8"> help for command line </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key6"> hierarchy of commands </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c5">Keywords: I</a>
</th></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key3"> interactive command shell </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c6">Keywords: O</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key1"> optional arguments </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key2"> options </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c7">Keywords: P</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key12"> parameters </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxeven" valign=top>
<td class="#idxleft" width="35%"><a name="key10"> processing command line </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
<tr class="#idxheader"><th colspan="2">
<a name="c8">Keywords: T</a>
</th></tr>
<tr class="#idxodd" valign=top>
<td class="#idxleft" width="35%"><a name="key7"> tree of commands </a></td>
<td class="#idxright" width="65%">
<a href="doc/files/cmdr_changes.html"> cmdr_changes </a> &#183; <a href="doc/files/cmdr_howto_development.html"> cmdr_development </a> &#183; <a href="doc/files/help.html"> cmdr_help </a> &#183; <a href="doc/files/help_json.html"> cmdr_help_json </a> &#183; <a href="doc/files/help_sql.html"> cmdr_help_sql </a> &#183; <a href="doc/files/cmdr_howto_get_sources.html"> cmdr_howto_get_sources </a> &#183; <a href="doc/files/cmdr_howto_installation.html"> cmdr_installation </a> &#183; <a href="doc/files/cmdr_introduction.html"> cmdr_introduction </a> &#183; <a href="doc/files/cmdr_license.html"> cmdr_license </a> &#183; <a href="doc/files/util.html"> cmdr_util </a> &#183; <a href="doc/files/vcommon.html"> cmdr_validate_common </a>
</td></tr>
</table>
</body></html>

Changes to embedded/www/toc.html.

18
19
20
21
22
23
24












25
26
27
28
29
30
31
32
33
34
35
36
37
38
39








40
41
<td class="#tocright">Cmdr - Log of Changes</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/cmdr_howto_development.html">cmdr_development</a></td>
<td class="#tocright">Cmdr - The Developer's Guide</td>
</tr>
<tr class="#toceven" >












<td class="#tocleft" ><a href="doc/files/cmdr_howto_get_sources.html">cmdr_howto_get_sources</a></td>
<td class="#tocright">Cmdr - How To Get The Sources</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/cmdr_howto_installation.html">cmdr_installation</a></td>
<td class="#tocright">Cmdr - The Installer's Guide</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="doc/files/cmdr_introduction.html">cmdr_introduction</a></td>
<td class="#tocright">Cmdr - Introduction to the project</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/cmdr_license.html">cmdr_license</a></td>
<td class="#tocright">Cmdr - License</td>
</tr>








</table>
</dl><hr></body></html>







>
>
>
>
>
>
>
>
>
>
>
>



|



|



|



>
>
>
>
>
>
>
>


18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<td class="#tocright">Cmdr - Log of Changes</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/cmdr_howto_development.html">cmdr_development</a></td>
<td class="#tocright">Cmdr - The Developer's Guide</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="doc/files/help.html">cmdr_help</a></td>
<td class="#tocright">Utilities for help text formatting and setup - Internal</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/help_json.html">cmdr_help_json</a></td>
<td class="#tocright">Formatting help as JSON object</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="doc/files/help_sql.html">cmdr_help_sql</a></td>
<td class="#tocright">Formatting help as series of SQL commands</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/cmdr_howto_get_sources.html">cmdr_howto_get_sources</a></td>
<td class="#tocright">Cmdr - How To Get The Sources</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="doc/files/cmdr_howto_installation.html">cmdr_installation</a></td>
<td class="#tocright">Cmdr - The Installer's Guide</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/cmdr_introduction.html">cmdr_introduction</a></td>
<td class="#tocright">Cmdr - Introduction to the project</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="doc/files/cmdr_license.html">cmdr_license</a></td>
<td class="#tocright">Cmdr - License</td>
</tr>
<tr class="#tocodd"  >
<td class="#tocleft" ><a href="doc/files/util.html">cmdr_util</a></td>
<td class="#tocright">General Utilities - Internal</td>
</tr>
<tr class="#toceven" >
<td class="#tocleft" ><a href="doc/files/vcommon.html">cmdr_validate_common</a></td>
<td class="#tocright">Utilities for Validation Types</td>
</tr>
</table>
</dl><hr></body></html>