packages icon



 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



 NAME
      cvsgraph.conf - CVS/RCS repository grapher configuration

 OVERVIEW
      The configuration file is a context free grammar where empty lines and
      whitespace are ignored. Comments start with '#' and everything until
      end of line is ignored.
      A configuration parameter is written as:
           <keyword> = <argument> ;
      Keywords are defined in PARAMETERS. The argument can be either
      numerical or string typed.

      Numbers may be entered as octal, decimal or hex as in 0117, 79 and
      0x4f respectively. Floating point numbers contain a single '.', but
      must start with a digit. Integer numbers are automagically converted
      to floats if required.

      Strings are C-style strings, enclosed in double quotes in which
      characters may be escaped with '\' and written in octal and hex
      escapes. Note that '\' must be escaped if it is to be entered as a
      character. Escapes recognized are '\[abfnrtv]', '\[xX][0-9a-fA-F]{2}'
      and '\[012][0-7]{0,2}'.
      Some strings are expanded with printf like conversions which start
      with '%'. Not all are applicable at all times, in which case they will
      expand to nothing.
      Note that expansions of paths are available with and without trailing
      '/'. The distinction is required for path construction to ensure that
      empty expansions will not redirect the path to root and no double '/'
      in a path is generated.

      %c   CVS root including a trailing '/' if non-empty

      %C   CVS root without trailing '/', regardless of how it was entered
           on the command line

      %m   CVS module including trailing '/' if non-empty

      %M   CVS module without trailing '/', regardless of how it was entered
           on the command line

      %f   filename without path (basename <name> functionality)

      %F   filename without path and with ",v" stripped (basename <name> ,v
           functionality)

      %p   path part of filename. This includes a trailing '/' if the path
           is non-empty

      %r   number of revisions



                                    - 1 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      %b   number of branches

      %%   literal '%'

      %R   the revision number (e.g. '1.2.4.4')

      %P   previous revision number

      %B   the branch number (e.g. '1.2.4')

      %d   date of revision

      %a   author of revision

      %s   state of revision

      %l   The log entry of the revision. You need to enable parse_logs for
           this to work. You may append an optional truncate length by
           writing '[num]' (with num the maximum length) directly after %l.
           If no truncation is specified, then all will be expanded.
           Specifying a negative truncation length means that newlines
           should be replaced by spaces. If truncation occurs, then "..."
           will be appended. The expansion is scanned for possible HTML
           entities and are replaced by &#...; equivalents.
           For example: "%l[25]" will expand up to 25 characters of the log.
           Note: This expansion is obsolete. Please use "%(%L%)"; see
           comment below.

      %L   Same as %l, but no HTML entity translations are performed.

      %t   current tag of branch or revision

      %0..%9
           command-line argument -0 .. -9

      %(...%)
           HTMLize the string withing the parenthesis. This is useful to
           prevent a possible cross site scripting bug when expanding tags
           into the map generation.  For an exploit, you need to have an
           attack on your CVS server, or you need to be a complete idiot to
           enter a tag with '<', '>' or '"' characters.
           Example: a string "%(%t%)", with tag ><script xxx="...">< will
           expand to &gt;&lt;script xxx=&#34;...&#34;&gt;&lt; and not into
           the execution of a script.
           Note: This method is preferred to the %l expansion, because it is
           more generic solution (i.e. use "%(%L%)" for log expansions).

           Fonts are numbered 0..4 (as defined in libgd) where 0 = tiny, 1 =
           small, 2 = medium (bold), 3 = large and 4 = giant.



                                    - 2 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



           Colors are strings, similar to HTML type colors in the form
           "#rrggbb" with parts written in hex, where rr = red (00-ff), gg =
           green (00-ff) and bb = blue (00-ff).

           Colors and some strings can also be defined as conditional
           expressions so that revision/branch conditions can be repesented
           visually:
             color/string = [ "key" op "content" truecase falsecase ];
           Operator 'op' can be one of:

      =~   contained in regex

      =*   contained in regex, case insensitive

      !~   not contained in regex

      !*   not contained in regex, case insensitive

      <    less than string, timestamp or rev/branch number

      <=   less or equal than string, timestamp or rev/branch number

      >    greater than string, timestamp or rev/branch number

      >=   greater or equal than string, timestamp or rev/branch number

      ==   equal than string, timestamp or rev/branch number

      !=   not equal than string, timestamp or rev/branch number The
           'content' is one of:
               * POSIX 1003.2 extended regular expression
               * timestamp in UTC format: YYYY[.MM[.DD[.hh[.mm[.ss]]]]]
               * revision or branch number The 'key' can be one of:

      state
           State of the revision

      author
           The auther of a revision

      tag  both revision- and branch-tags

      date date of the revision

      rev  numeric revision- or branch-number Both 'truecase' and
           'falsecase' can be either a (color-)string, as described above,
           or a new conditional expression.  Examples:
               rev_bgcolor = [ "state" =~ "dead" "#e08080" "#f0f0f0" ];
               branch_color= [ "rev" < "2.1.2" "#000000" [ "tag" =~ "XyZ.*"



                                    - 3 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



           "#123456" "#654321" ] ];
               rev_idtext  = [ "state" == "dead" "Dead %R" "%R" ]
           Note that not all colors can be changed on the fly. For example,
           branch_color cannot be be changed based on revision
           identification (i.e. author, date or state). The color_bg is
           always unique and fixed (all expressions will evaluate to the
           false case).  Also, only string rev_text and rev_idtext can be
           conditional expressions as other do not make much sense to be
           dynamic.

           Booleans have three possible arguments: true, false and not.
           `Not' means inverse of what it was (logical negation) and is
           represented by the value -1.  For the configuration file that
           means that the default value is negated.  However, the not
           possibility is a very handy tool for command line overrides
           generated from (CGI) scripts.

           There are several reserved words besides of the keywords.  These
           additional reserved words expand to numerical values:
           Booleans:
                false  = 0
                true   = 1
                not    = -1
           Alignment specifiers:
                left   = 0
                center = 1
                right  = 2
           Image specifiers:
                gif    = 0
                png    = 1
                jpeg   = 2
           Font specifiers:
                tiny   = 0
                small  = 1
                medium = 2
                large  = 3
                giant  = 4
           HTML level specifiers:
                HTML3  = 1
                HTML4  = 2
                XHTML  = 3


 PARAMETERS
      cvsroot string
           The absolute base directory where the CVS/RCS repository can be
           found.  A '/' will be appended to the string if it is not empty
           and does not contain a trailing '/'.
           Default is an empty string.



                                    - 4 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      cvsmodule string
           The module name in the CVS/RCS repository. This is converted into
           a subdirectory name with a trailing '/'.
           Default is an empty string.


      color_bg color
           The background color of the image.
           Default is white ("#ffffff").


      transparent_bg boolean
           The background color of the image is to be the transparent color.
           This is only useful for PNG images. Be sure to set color_bg to
           something reasonable to make sure that the image is viewable with
           programs that do not support transparency.
           Default is false.


      date_format string
           The strftime(3) format string for date and time representation in
           the '%d' expansion.
           Default is "%d-%b-%Y %H:%M:%S".


      box_shadow boolean
           A boolean whether or not to draw a shadow for the boxes of
           revisions and branches.
           Default is false.


      upside_down boolean
           Draw the entire tree upside down if set. I.e. highest revisions
           are at the top of the image. See also cvsgraph(1) option '-u'.
           Default is false.


      left_right boolean
           Draw the entire tree from left to right instead of top down if
           set.  I.e. highest revisions are at the right of the image. You
           can also draw the tree right to left when upside_down is set too.
           Default is false.


      strip_untagged boolean
           Omit all revisions that do not have tags and are not a branch
           point. This reduces the image-size, but can be confusing when
           looking for a specific revision. See also cvsgraph(1) option '-
           s'.



                                    - 5 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



           Default is false.


      strip_first_rev boolean
           Also omit the first revision in a branch if it does not have tags
           and is not a branch point. This has only effect if strip_untagged
           is set. See also cvsgraph(1) option '-S'.
           Default is false.


      auto_stretch boolean
           Try to stretch the inter-revision spacing to move the trunks more
           to the left, effectively reducing the image's size. See also
           cvsgraph(1) option '-k'.
           Default is false.


      use_ttf boolean
           Enable TrueType rendering of strings using the FreeType interface
           of libgd.  Note that ttf rendering is significantly slower than
           libgd's bitmap fonts.
           Default is false.


      anti_alias boolean
           Enable antialias rendering of TrueType fonts. This has only
           effect if use_ttf is set. Enabling anti_alias gives very nice
           results.  However, that is at the expense of 8-bit vs. 4-bit
           colormap images, which can be a major drawback because the size
           of 8-bit images is 3..4 times that of 4-bit images (with
           compressed PNG as output).
           Default is true.


      thick_lines number
           Set the thickness of connector lines between boxes. Normally,
           lines are drawn one pixel wide, but can look somewhat thin.
           Setting the thickness to anything over 5 would be plain ugly (but
           hey, who is to debate taste :-).  Values less than 1 and over 11
           are clipped.
           Default is 1.


      parse_logs boolean
           Enable the parsing of the entire ,v file to read the log-entries
           between revisions. This is necessary for the %l expansion to
           work, but slows down parsing by a very large factor. You've been
           warned.
           Default is false.



                                    - 6 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      html_level number
           Set the compliance to different types of HTML. The generated
           image map is slightly different for version 3.x, 4.x and XHTML.
           You can use the predefined identifiers (HTML3, HTML4 and XHTML)
           to set this value. Command line option '-x' overrides the
           setting.
           Default is HTML3 (3.x compatibility).


      branch_ttfont string

      branch_tag_ttfont string

      rev_ttfont string

      rev_text_ttfont string

      tag_ttfont string

      title_ttfont string

      msg_ttfont string
           Set the TrueType font face or filename for the individual
           elements. Gd's bitmap fonts are used as a fallback if the font
           cannot be found or contains errors.
           Default none.


      branch_ttsize float

      branch_tag_ttsize float

      rev_ttsize float

      rev_text_ttsize float

      tag_ttsize float

      title_ttsize float

      msg_ttsize float
           Set the TrueType font size for the individual elements. See also
           *_ttfont.
           Default 0.0.


      tag_font number
           The font used to draw tags in the revision boxes.
           Default is tiny.



                                    - 7 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      tag_color color
           The color used to draw tags in the revision boxes.
           Default is black ("#000000").


      tag_ignore string
           An extended regular expression as described in regex(7) to match
           all tags that should not be displayed in the graph. Note that a
           tag will always be displayed if it matches the
           merge_from/merge_to expressions regardless to it being set to
           ignore here.
           Example: tag_ignore = "(test|alpha)_release.*";
           Default is empty (no matching occurs).


      tag_nocase boolean
           Ignore the case in regex matching in tag_ignore.
           Default is false.


      tag_negate boolean
           Negate the matching criteria of the tag_ignore setting. If set,
           tags that match the tag_ignore will be shown, instead of matches
           being ignored. In any case, tags that match merge_from/merge_to
           expressions will never be suppressed.
           Default is false.


      tag_ignore_merge boolean
           If set, then tags matched with tag_ignore will no longer be
           considered for matching by merge_from and merge_to.
           Default is false.


      rev_font number
           Default is tiny.


      rev_color color
           The color of revision boxes, including the revision number.
           Default is black ("#000000").


      rev_bgcolor color
           Revision box background color. This is the interior fill of the
           box.
           Default is white ("#ffffff").





                                    - 8 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      rev_separator number
           Space between tags in revision boxes.
           Default is 0.


      rev_minline number
           The minimum vertical distance between revision boxes.
           Default is 0.


      rev_maxline number
           The maximum vertical distance between revision boxes.  This has
           only effect if auto_stretch is set to true (or option '-k' is
           specified).
           Default is 5 times rev_minline.


      rev_lspace number

      rev_rspace number

      rev_tspace number

      rev_bspace number
           Interior spacing in revision boxes of left, right, top and bottom
           respectively. Note that the left right spacing is not used
           separately because text is center aligned.
           Default is 0.


      rev_idtext conditional string
           The revision ID or revision number in a revision box.
           Default is "%R".


      rev_text conditional string
           The additional text in a revision box under the revision number.
           Default is "%d".


      rev_text_font number
           The font of the additional text in a revision box under the
           revision number.
           Default is tiny.


      rev_text_color color
           The font color of the additional text in a revision box under the
           revision number.



                                    - 9 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



           Default is black ("#000000").


      rev_maxtags number
           Limit the number of tags in a revision box. Old trees tend to
           have some revisions with extremely many tags attached, which
           would generate a huge revision box when drawn. Limiting the
           number is a fair solution. Note that tag sorting is not specified
           in the rcsfile(7), but cvs(1) will normally have the newest tags
           located before older ones. Therefore, limiting the number of tags
           would most likely only affect older tags to be stripped.
           However, no guarantees are given that a specific tag is present
           when the limit is imposed. An ellipsis (...) is shown in the
           revision box when the number of tags got truncated.
           Default is 0, meaning all tags shown.


      rev_hidenumber boolean
           If set, then no revision number is displayed in the
           revisionboxes. This reduces size for those graphs where the
           actual revision-number is irrelevant.
           Default is false.


      msg_font number
           The font used to draw error and warning messages at the bottom of
           the graph.
           Default is tiny.


      msg_color color
           The color used to draw error and warning messages.
           Default is black ("#000000").


      merge_color color
           The color of the lines to show merges.
           Default is black ("#000000").


      merge_front boolean
           The merge lines are drawn on top of the image if true. Otherwise,
           merge lines are drawn underneath.
           Default is false.


      merge_nocase boolean
           Ignore the case in regex matching in merge_from and merge_to.
           Default is false.



                                   - 10 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      merge_from string
           The merge_from is an extended regular expression as described in
           regex(7) and POSIX 1003.2 (see also Single Unix Specification at
           http://www.opengroup.com ). The matching tags describe source
           revisions of merges. Each match is subsequently used in a search
           for the destination tag as described by the merge_to parameter.
           Note: normal string rules apply. Therefore, all backslashes '\'
           must be escaped, e.g. "\." must be written as "\\.".
           Example: merge_from = "^from_(.*)";
           Default is empty (no matching occurs).


      merge_to string
           The merge_to is an extended regular expression with a twist. All
           subexpressions from the merge_from are expanded into merge_to
           using %[1-9] (in contrast to \[1-9] for backreferences). Care is
           taken to escape the constructed expression. A '$' at the end of
           the merge_to expression can be important to prevent 'near match'
           references. Normally, you want the destination to be a good
           representation of the source. However, this depends on how well
           you defined the tags in the first place.
           Example: merge_to = "^merge_%1$";
           Above example, combined with the merge_from example would match a
           tag "from_BugFix_2002" to the merge-destination with tag
           "merge_BugFix_2002".
           Default is empty (no matching occurs).


      merge_findall boolean
           Normally, merge_from/merge_to will only find the first matching
           tag-combination and draw a line between them, If merge_findall is
           set, then all matching merge_tos will result in lines from the
           from-tag to the to-tag.
           Default is false.


      merge_arrows boolean
           Enable the use of arrows pointing to the merge destination.
           Default is true.


      merge_on_tag boolean
           Draw merge lines originating from/to the actual tags that are
           matched when left_right is enabled. This improves the usability
           of the lines drawn but can under circumstances be difficult to
           visualize without revision boxes overlapping the lines and
           arrows.
           Default is false.




                                   - 11 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      merge_cvsnt boolean
           Enable drawing of mergepoints as used by CVSNT.
           Default is true.


      merge_cvsnt_color color
           The color of the lines to show merges from mergepoints.
           Default is black ("#000000").


      arrow_width number

      arrow_length number
           Specifies the size of the arrow pointing to the merge
           destination.
           Default is arrow_width=3, arrow_length=12.


      branch_font number
           The font of the number in a branch box.
           Default is tiny.


      branch_tag_font number
           The font of the tags in a branch box.
           Default is tiny.


      branch_color color
           All branch element's color excluding tags.
           Default is black ("#000000").


      branch_bgcolor color
           Branch box background color. This is the interior fill of the
           box.
           Default is white ("#ffffff").


      branch_tag_color color
           All branch tags' color.
           Default is black ("#000000").


      branch_lspace number

      branch_rspace number

      branch_tspace number



                                   - 12 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      branch_bspace number
           Interior spacing of branch boxes.
           Default is 0.


      branch_margin number
           Exterior spacing of branches. Each branch will be spaced with a
           minimum of this value.
           Default is 0.


      branch_connect number
           Length of the vertical connector from a revision to the branch
           box.
           Default is 0.


      branch_dupbox boolean
           Add an extra branch box at the end of the trunk. Useful for
           upside down drawn trees. If there are no commits on a branch,
           then no extra box is added, regardless of the setting of this
           option.
           Default is false.


      branch_fold boolean
           Fold branches that have no commits into one branch-box. This
           helps to reduce the size of the overall image by a huge factor
           (5..10 in most cases). Many applications of CVS use many
           branches, but not all files in the repository change for each
           branch. Especially stable files line .cvsignore or older code
           tend to accumulate many empty branches at one and the same
           revision. Folding these branches into one box reduces the width
           of these images considerably.
           Default is true.


      branch_foldall boolean
           Fold all empty branches that sprout from the save revision in one
           box. If this option is not set, then multiple boxes will be
           created if the empty branches are interspaced with ones that have
           revisions attached. When this option is set, then all empty
           branches will be collected and put into the box of the first
           occurring empty branch on the revision's branch point.  Setting
           this option will reduce image size with interspaced commits to
           the a maximum.
           Default is false.





                                   - 13 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      branch_resort boolean
           Resort the branches according to the number of revisions they
           have, where less revisions will stick closer to the sprouting
           trunk. This will reduce image size under circumstances where many
           branches have significant different number of revisions.
           Default is false.


      branch_subtree string
           Reduce the tree only to include the subtree from the branch-
           number given in the argument. If the argument is a revision which
           is the root of branches, then all those branches will be shown.
           The argument can also be a symbolic tag (either a branch- or
           revision-tag). You normally would set this option from the
           command line with the -O option for interactive flexibility.
           Example: branch_subtree = "1.2.4";
           Default is empty (all branches shown).


      title string
           The title of the image.
           Default is empty string.


      title_x number

      title_y number
           Position of title.
           Default is 0.


      title_font number
           The font of the title.
           Default is tiny.


      title_align number
           Horizontal alignment of the title.
           Default is left.


      title_color color
           The color of the title.
           Default is black ("#000000").


      margin_top number

      margin_bottom number



                                   - 14 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



      margin_left number

      margin_right number
           Margins of the image. Note: the title position is not affected by
           the margin.
           Default is 0.


      image_type number
           Image types are available if they can be found in the gd library.
           Some versions of gd do not have gif, although newer version have
           it implemented again.  CvsGraph will automatically generate png
           images if gif is not available.
           Default is dependent on availability and is prioritized in the
           order png, gif and jpeg.


      image_quality number
           The quality of a jpeg image (1..100)
           Default is 100.


      image_compress number
           Set the compression level of png images (-1..9). Zero means no
           compression. A higher number means higher compression. Minus one
           selects the default library setting.
           Default is -1.


      image_interlace boolean
           Write png and jpeg images in interlaced format. This enables
           progressive loading in your browser (if supported).
           Default is false.


      map_name string
           The name= attribute in <map name="mapname">...</map> in the
           generated HTML map.
           Default is "CvsGraphImageMap".


      map_branch_href string

      map_rev_href string

      map_diff_href string

      map_merge_href string
           These are the href= attributes in the <area> tags of HTML.



                                   - 15 -      Formatted:  November 14, 2024






 cvsgraph.conf(5)               B. Stultiens                cvsgraph.conf(5)
 CVS/RCS Utilities                                         CVS/RCS Utilities

                                    1.7.0



           Default are:
           branch: "href=\"unset: conf.map_branch_href\""
           revision: "href=\"unset: conf.map_rev_href\""
           diff: "href=\"unset: conf.map_diff_href\""
           merge: "href=\"unset: conf.map_merge_href\""


      map_branch_alt string

      map_rev_alt string

      map_diff_alt string

      map_merge_alt string
           These are the alt= attributes in the <area> tags of HTML.
           Default are "alt=\"%B\"", "alt=\"%R\"", "alt=\"%P &lt;-&gt; %R\""
           and "alt=\"%P &lt;-&gt; %R\"" respectively.


 AUTHOR
      CvsGraph is written and maintained by B. Stultiens.
      Send comments and bug reports to cvsgraph@akhphd.au.dk (read the
      mailnote in the README file first) and visit the homepage at:
      http://www.akhphd.au.dk/~bertho/cvsgraph/.

 SEE ALSO
      cvsgraph(1)

























                                   - 16 -      Formatted:  November 14, 2024