table of contents
cvsgraph.conf(5) | CVS/RCS Utilities | cvsgraph.conf(5) |
NAME¶
cvsgraph.conf - CVS/RCS repository grapher configurationOVERVIEW¶
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.- %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
- %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.
- %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.
color/string = [ "key" op "content" truecase falsecase ];
- =~
- 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
* 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
rev_bgcolor = [ "state" =~ "dead" "#e08080" "#f0f0f0" ];
branch_color= [ "rev" < "2.1.2" "#000000" [ "tag" =~ "XyZ.*" "#123456" "#654321" ] ];
rev_idtext = [ "state" == "dead" "Dead %R" "%R" ]
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 '/'.
- cvsmodule string
- The module name in the CVS/RCS repository. This is
converted into a subdirectory name with a trailing '/'.
- color_bg color
- The background color of the image.
- 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.
- date_format string
- The strftime(3) format string for date and time
representation in the '%d' expansion.
- box_shadow boolean
- A boolean whether or not to draw a shadow for the boxes of
revisions and branches.
- 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'.
- 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.
- 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'.
- 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'.
- 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'.
- 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.
- 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).
- 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.
- 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.
- 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.
- 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.
- 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.
- tag_font number
- The font used to draw tags in the revision boxes.
- tag_color color
- The color used to draw tags in the revision boxes.
- 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.
- tag_nocase boolean
- Ignore the case in regex matching in tag_ignore.
- 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.
- 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.
- rev_font number
-
- rev_color color
- The color of revision boxes, including the revision number.
- rev_bgcolor color
- Revision box background color. This is the interior fill of
the box.
- rev_separator number
- Space between tags in revision boxes.
- rev_minline number
- The minimum vertical distance between revision boxes.
- 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).
- 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.
- rev_idtext conditional string
- The revision ID or revision number in a revision box.
- rev_text conditional string
- The additional text in a revision box under the revision
number.
- rev_text_font number
- The font of the additional text in a revision box under the
revision number.
- rev_text_color color
- The font color of the additional text in a revision box
under the revision number.
- 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.
- 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.
- msg_font number
- The font used to draw error and warning messages at the
bottom of the graph.
- msg_color color
- The color used to draw error and warning messages.
- merge_color color
- The color of the lines to show merges.
- merge_front boolean
- The merge lines are drawn on top of the image if true.
Otherwise, merge lines are drawn underneath.
- merge_nocase boolean
- Ignore the case in regex matching in merge_from and
merge_to.
- 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.
- merge_to string
-
- 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.
- merge_arrows boolean
-
- merge_on_tag boolean
-
- merge_cvsnt boolean
-
- merge_cvsnt_color color
- The color of the lines to show merges from mergepoints.
- arrow_width number
- arrow_length number
-
- branch_font number
- The font of the number in a branch box.
- branch_tag_font number
- The font of the tags in a branch box.
- branch_color color
- All branch element's color excluding tags.
- branch_bgcolor color
- Branch box background color. This is the interior fill of
the box.
- branch_tag_color color
- All branch tags' color.
- branch_lspace number
- branch_rspace number
- branch_tspace number
- branch_bspace number
- Interior spacing of branch boxes.
- branch_margin number
- Exterior spacing of branches. Each branch will be spaced
with a minimum of this value.
- branch_connect number
- Length of the vertical connector from a revision to the
branch box.
- 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.
- 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.
- 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.
- 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.
- 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.
- title string
- The title of the image.
- title_x number
- title_y number
- Position of title.
- title_font number
- The font of the title.
- title_align number
- Horizontal alignment of the title.
- title_color color
- The color of the title.
- margin_top number
- margin_bottom number
- margin_left number
- margin_right number
- Margins of the image. Note: the title position is not
affected by the margin.
- 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.
- image_quality number
- The quality of a jpeg image (1..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.
- image_interlace boolean
- Write png and jpeg images in interlaced format. This
enables progressive loading in your browser (if supported).
- map_name string
- The name= attribute in <map
name="mapname">...</map> in the generated HTML map.
- 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.
- 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.
AUTHOR¶
CvsGraph is written and maintained by B. Stultiens.SEE ALSO¶
cvsgraph(1)1.7.0 | B. Stultiens |