File: rivet_command_document.tcl

package info (click to toggle)
libapache2-mod-rivet 3.2.0-1
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 5,868 kB
  • sloc: xml: 8,496; tcl: 7,212; ansic: 6,959; sh: 5,030; makefile: 261; sql: 91; lisp: 78
file content (56 lines) | stat: -rw-r--r-- 1,610 bytes parent folder | download | duplicates (4)
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
###
##
## rivet_command_document - Given a list of key-value pairs, emit HTML in
## to document a command -- required keys are "name", "package",
## "short" and "command".  
##
## Optional keys are "command", "arguments", and "seealso"
##
## $Id$
##
###
namespace eval ::rivet {

    proc rivet_command_document {list} {
        array set info $list

        puts "<HEAD>"
        puts "<TITLE>$info(name) Documentation</TITLE>"
        puts "</HEAD>"
        puts "<BODY BGCOLOR=WHITE VLINK=blue>"

        puts "<CENTER>"
        puts {<FONT SIZE="+3">}
        puts "$info(name) - $info(package)"
        puts "</FONT>"
        puts "<BR>"
        puts "<B>"
        puts {<A HREF="#synopsis">Synopsis</A>}
        puts " * "
        puts {<A HREF="#description">Description</A>}
        if {[info exists info(seealso)]} {
            puts " * "
            puts {<A HREF="#seealso">See Also</A>}
        }
        puts "</B>"
        puts "</CENTER>"

        puts {<H3><A NAME="name" HREF="#name">Name</A></H3>}
        puts "<B>$info(name) - $info(short)</B>"

        if {![info exists info(command)]} { set info(command) $info(name) }

        puts {<H3><A NAME="synopsis" HREF="#synopsis">Synopsis</A></H3>}
        puts "$info(command)"
        if {[info exists info(arguments)]} { puts "<I>$info(arguments)</I>" }

        puts {<H3><A NAME="description" HREF="#description">Description</A></H3>}
        puts $info(description)

        if {[info exists info(seealso)]} {
            puts {<H3><A NAME="seealso" HREF="#seealso">See Also</A></H3>}
            puts $info(seealso)
        }
    }

}