Provided by: tcllib_1.21+dfsg-1_all bug

NAME

       doctools::cvs - Processing text in 'cvs log' format

SYNOPSIS

       package require Tcl  8.2

       package require textutil

       package require doctools::cvs  ?1?

       ::doctools::cvs::scanLog text evar cvar fvar

       ::doctools::cvs::toChangeLog evar cvar fvar

_________________________________________________________________________________________________

DESCRIPTION

       This  package provides Tcl commands for the processing and reformatting text in the format
       generated by the cvs log command.

       The commands ::doctools::cvs::scanLog and ::doctools::cvs::toChangeLog  are  derived  from
       code  found on the Tcl'ers Wiki [http://wiki.tcl.tk]. See the references at the end of the
       page.

API

       ::doctools::cvs::scanLog text evar cvar fvar
              The command takes the text and parses it under the assumption that  it  contains  a
              CVS  log  as  generated  by  cvs  log.  The  resulting information is stored in the
              variables whose names were specified via evar, cvar, and fvar.

              Already existing information in the referenced variables is preserved, allowing the
              caller to merge data from multiple logs into one database.

              varname evar (in)
                     Has to refer to a scalar variable. After the call this variable will contain
                     a list of all the entries found in the log  file.  An  entry  is  identified
                     through  the  combination of date and author, and can be split over multiple
                     physical entries, one per touched file.

                     It should be noted that the entries are listed in the  same  order  as  they
                     were found in the text. This is not necessarily sorted by date or author.

                     Each  item  in  the  list is a list containing two elements, the date of the
                     entry,  and  its  author,  in  this  order.  The  date   is   formatted   as
                     year/month/day.

              varname cvar (in)
                     Has  to refer to an array variable. Keys are strings containing the date and
                     author of log entries, in this order, separated by a comma.

                     The values are lists of comments made for the entry.

              varname fvar (in)
                     Has to refer to an array variable. Keys are strings containing date,  author
                     of  a  log  entry, and a comment for that entry, in this order, separated by
                     commas.

                     The values are lists of the files the entry is touching.

       ::doctools::cvs::toChangeLog evar cvar fvar
              The three arguments for this command are the same as the last  three  arguments  of
              the  command  ::doctools::cvs::scanLog.  This  command  however  expects them to be
              filled with information about one or more  logs.  It  takes  this  information  and
              converts  it  into a text in the format of a ChangeLog as accepted and generated by
              emacs. The constructed text is returned as the result of the command.

BUGS, IDEAS, FEEDBACK

       This document, and the package it describes,  will  undoubtedly  contain  bugs  and  other
       problems.    Please   report  such  in  the  category  doctools  of  the  Tcllib  Trackers
       [http://core.tcl.tk/tcllib/reportlist].  Please also report any ideas for enhancements you
       may have for either package and/or documentation.

       When proposing code changes, please provide unified diffs, i.e the output of diff -u.

       Note further that attachments are strongly preferred over inlined patches. Attachments can
       be made by going to the Edit form of the ticket immediately after its creation,  and  then
       using the left-most button in the secondary navigation bar.

SEE ALSO

       [uri, http://wiki.tcl.tk/log2changelog

KEYWORDS

       changelog, cvs, cvs log, emacs, log

CATEGORY

       Documentation tools

COPYRIGHT

       Copyright (c) 2003-2008 Andreas Kupries <andreas_kupries@users.sourceforge.net>