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
|
[comment {-*- tcl -*- doctools manpage}]
[manpage_begin doctools::changelog n 1.2]
[keywords changelog]
[keywords doctools]
[keywords emacs]
[copyright {2003-2013 Andreas Kupries <andreas_kupries@users.sourceforge.net>}]
[moddesc {Documentation tools}]
[titledesc {Processing text in Emacs ChangeLog format}]
[category {Documentation tools}]
[require Tcl "8.5 9"]
[require textutil]
[require doctools::changelog [opt 1.2]]
[description]
This package provides Tcl commands for the processing and reformatting
of text in the [file ChangeLog] format generated by [syscmd emacs].
[section API]
[list_begin definitions]
[call [cmd ::doctools::changelog::scan] [arg text]]
The command takes the [arg text] and parses it under the assumption
that it contains a ChangeLog as generated by [syscmd emacs]. It
returns a data structure describing the contents of this ChangeLog.
[para]
This data structure is a list where each element describes one entry
in the ChangeLog. Each element/entry is then a list of three elements
describing the date of the entry, its author, and the comments made,
in this order. The last item in each element/entry, the comments, is a
list of sections. Each section is described by a list containing two
elements, a list of file names, and a string containing the true
comment associated with the files of the section.
[para]
[example {
{
{
date
author
{
{
{file ...}
commenttext
}
...
}
}
{...}
}
}]
[call [cmd ::doctools::changelog::flatten] [arg entries]]
This command converts a list of entries as generated by
[cmd change::scan] above into a simpler list of plain
text blocks each containing all the information of a
single entry.
[call [cmd ::doctools::changelog::toDoctools] [arg title] [arg module] [arg version] [arg entries]]
This command converts the pre-parsed ChangeLog [arg entries] as
generated by the command [cmd ::doctools::changelog::scan] into a
document in [term doctools] format and returns it as the result of the
command.
[para]
The other three arguments supply the information for the header of
that document which is not available from the changelog itself.
[call [cmd ::doctools::changelog::merge] [arg entries]...]
Each argument of the command is assumed to be a pre-parsed Changelog
as generated by the command [cmd ::doctools::changelog::scan]. This
command merges all of them into a single structure, and collapses
multiple entries for the same date and author into a single entry. The
new structure is returned as the result of the command.
[list_end]
[vset CATEGORY doctools]
[include ../common-text/feedback.inc]
[manpage_end]
|