File: cvsgraph.conf.5

package info (click to toggle)
cvsgraph 1.4.0-3
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 376 kB
  • ctags: 458
  • sloc: ansic: 3,921; yacc: 372; lex: 183; makefile: 79; php: 42; sh: 14
file content (685 lines) | stat: -rw-r--r-- 17,676 bytes parent folder | download
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
.TH "cvsgraph.conf" "5" "1.4.0" "B. Stultiens" "CVS/RCS Utilties"
.SH "NAME"
cvsgraph.conf \- CVS/RCS repository grapher configuration
.SH "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.
.br
A configuration parameter is written as:
.br
	<keyword> = <argument> ;
.br
.LP
Keywords are defined in \fBPARAMETERS\fR. The argument
can be either numerical or string typed.

.LP
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.

.LP
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}'.
.br
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.
.br
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.
.TP
%c
cvsroot including a trailing '/' if non\-empty
.TP
%C
cvsroot without trailing '/', regardless of how it was entered
on the commandline
.TP
%m
cvsmodule including trailing '/' if non\-empty
.TP
%M
cvsmodule without trailing '/', regardless of how it was entered
on the commandline
.TP
%f
filename without path (\fIbasename <name>\fR functionality)
.TP
%F
filename without path and with ",v" stripped (\fIbasename <name> ,v\fR
functionality)
.TP
%p
path part of filename. This includes a trailing '/' if the
path is non\-empty
.TP
%r
number of revisions
.TP
%b
number of branches
.TP
%%
literal '%'
.TP
%R
the revision number (e.g. '1.2.4.4')
.TP
%P
previous revision number
.TP
%B
the branch number (e.g. '1.2.4')
.TP
%d
date of revision
.TP
%a
author of revision
.TP
%s
state of revision
.TP
%l
The logentry of the revision. You need to enable \fBparse_logs\fR for this to
work. You may append an optional truncate length by writing '[num]' (with num
the maximum length) directly after %l. If no trunction 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.
.br
For example: "%l[25]" will expand up to 25 characters of the log.
.br
Note: This expansion is obsolete. Please use "%(%L%)"; see comment below.
.TP
%L
Same as %l, but no html-entity translations are performed.
.TP
%t
current tag of branch or revision
.TP
%0..%9
command\-line argument \-0 .. \-9
.TP
%(...%)
HTMLize the string withing the parenthesis. This is usefull to prevent a
possible cross site scripting big 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.
.br
Example: a string "%(%t%)", with tag \fB><script xxx="..."><\fR will expand to
\fB&gt;&lt;script xxx=&#34;...&#34;&gt;&lt;\fR and not into the execution of
a script.
.br
Note: This method is preferred to the %l expansion, because it is more
generic solution (i.e. use "%(%L%)" for log expansions).

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

.LP
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).

.LP
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 commandline overrides
generated from (CGI-)scripts.

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

.SH "PARAMETERS"
.TP
\fBcvsroot\fR \fIstring\fR
The absolute base directory where the CSV/RCS repository can be found.
A '/' will be appended to the string if it is not empty and does not
contain a trailing '/'.
.br
Default is an empty string.

.TP
\fBcvsmodule\fR \fIstring\fR
The modulename of the CVS/RCS repository. This is converted into a
subdirectory name with a trailing '/'.
.br
Default is an empty string.

.TP
\fBcolor_bg\fR \fIcolor\fR
The background color of the image.
.br
Default is white ("#ffffff").

.TP
\fBtransparent_bg\fR \fIboolean\fR
The background color of the image is to be the transparent color. This is
only usefull for PNG images. Be sure to set \fBcolor_bg\fR to something
reasonable to make sure that the image is viewable with programs that do not
support transparency.
.br
Default is false.

.TP
\fBdate_format\fR \fIstring\fR
The \fBstrftime(3)\fR format string for date and time representation in
the '%d' expansion.
.br
Default is "%d\-%b\-%Y %H:%M:%S".

.TP
\fBbox_shadow\fR \fIboolean\fR
A boolean whether or not to draw a shadow for the boxes of
revisions and branches.
.br
Default is false.

.TP
\fBupside_down\fR \fIboolean\fR
Draw the entire tree upside down if set. I.e. highest revisions are
at the top of the image. See also \fBcvsgraph(1)\fR option '\fB-u\fR'.
.br
Default is false.

.TP
\fBleft_right\fR \fIboolean\fR
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 \fBupside_down\fR is set too.
.br
Default is false.

.TP
\fBstrip_untagged\fR \fIboolean\fR
Ommit all revisions that do not have tags and are not a branchpoint. This
reduces the image-size, but can be confusing when looking for a specific
revision. See also \fBcvsgraph(1)\fR option '\fB-s\fR'.
.br
Default is false.

.TP
\fBstrip_first_rev\fR \fIboolean\fR
Also ommit the first revision in a branch if it does not have tags and is not a
branchpoint. This has only effect if \fBstrip_untagged\fR is set. See also
\fBcvsgraph(1)\fR option '\fB-S\fR'.
.br
Default is false.

.TP
\fBauto_stretch\fR \fIboolean\fR
Try to stretch the inter\-revision spacing to move the trunks more to the left,
effectively reducing the image's size. See also \fBcvsgraph(1)\fR option '\fB-k\fR'.
.br
Default is false.

.TP
\fBuse_ttf\fR \fIboolean\fR
Enable truetype rendering of strings using the FreeType interface of libgd.
Note that ttf rendering is significantly slower than libgd's bitmap fonts.
.br
Default is false.

.TP
\fBanti_alias\fR \fIboolean\fR
Enable antialias rendering of truetype fonts. This has only effect if
\fBuse_ttf\fR 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).
.br
Default is true.

.TP
\fBthick_lines\fR \fInumber\fR
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 tast:-).
Values less than 1 and over 11 are clipped.
.br
Default is 1.

.TP
\fBparse_logs\fR \fIboolean\fR
Enable the parsing of the \fIentire\fR ,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.
.br
Default is false.

.TP
\fBhtml_level\fR \fInumber\fR
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. Commandline option '\fB-x\fR'
overrides the setting.
.br
Default is HTML3 (3.x compatibility).

.TP
\fBbranch_ttfont\fR \fIstring\fR
.TP
\fBbranch_tag_ttfont\fR \fIstring\fR
.TP
\fBrev_ttfont\fR \fIstring\fR
.TP
\fBrev_text_ttfont\fR \fIstring\fR
.TP
\fBtag_ttfont\fR \fIstring\fR
.TP
\fBtitle_ttfont\fR \fIstring\fR
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.
.br
Default none.

.TP
\fBbranch_ttsize\fR \fIfloat\fR
.TP
\fBbranch_tag_ttsize\fR \fIfloat\fR
.TP
\fBrev_ttsize\fR \fIfloat\fR
.TP
\fBrev_text_ttsize\fR \fIfloat\fR
.TP
\fBtag_ttsize\fR \fIfloat\fR
.TP
\fBtitle_ttsize\fR \fIfloat\fR
Set the truetype font size for the individual elements. See also *_ttfont.
.br
Default 0.0.

.TP
\fBtag_font\fR \fInumber\fR
The font used to draw tags in the revision boxes.
.br
Default is tiny.

.TP
\fBtag_color\fR \fIcolor\fR
The color used to draw tags in the revision boxes.
.br
Default is black ("#000000").

.TP
\fBrev_font\fR \fInumber\fR
.br
Default is tiny.

.TP
\fBrev_color\fR \fIcolor\fR
The color of revision boxes, including the revision number.
.br
Default is black ("#000000").

.TP
\fBrev_bgcolor\fR \fIcolor\fR
Revision box background color. This is the interior fill of the
box.
.br
Default is white ("#ffffff").

.TP
\fBrev_separator\fR \fInumber\fR
Space between tags in revision boxes.
.br
Default is 0.

.TP
\fBrev_minline\fR \fInumber\fR
The minimum vertical distance between revision boxes.
.br
Default is 0.

.TP
\fBrev_maxline\fR \fInumber\fR
The maximum vertical distance between revision boxes.
This has only effect if \fBauto_stretch\fR is set to true (or option '\fB-k\fR'
is specified).
.br
Default is 5 times \fBrev_minline\fR.

.TP
\fBrev_lspace\fR \fInumber\fR
.TP
\fBrev_rspace\fR \fInumber\fR
.TP
\fBrev_tspace\fR \fInumber\fR
.TP
\fBrev_bspace\fR \fInumber\fR
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.
.br
Default is 0.

.TP
\fBrev_text\fR \fIstring\fR
The additional text in a revision box under the revision number.
.br
Default is "%d".

.TP
\fBrev_text_font\fR \fInumber\fR
The font of the additional text in a revision box under the revision number.
.br
Default is tiny.

.TP
\fBrev_text_color\fR \fIcolor\fR
The font color of the additional text in a revision box under the revision
number.
.br
Default is black ("#000000").

.TP
\fBrev_maxtags\fR \fInumber\fR
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 \fBrcsfile(7)\fR, but \fBcvs(1)\fR 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 ellispsis (...) is shown in the revision box when the number of
tags got truncated.
.br
Default is 0, meaning all tags shown.

.TP
\fBmerge_color\fR \fIcolor\fR
The color of the lines to show merges.
.br
Default is black ("#000000").

.TP
\fBmerge_front\fR \fIboolean\fR
The mergelines are drawn on top of the image if true. Otherwise, mergelines
are drawn underneath.
.br
Default is false.

.TP
\fBmerge_nocase\fR \fIboolean\fR
Ignore the case in regex matching.
.br
Default is false.

.TP
\fBmerge_from\fR \fIstring\fR
The \fBmerge_from\fR is an extended regular expression as described in
\fBregex(7)\fR 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 \fBmerge_to\fR parameter.
.br
Note: normal string rules apply. Therefore, all backslashes '\\' must be
escaped, e.g. "\\." must be written as "\\\\.".
.br
Example: merge_from = "^from_(.*)";
.br
Default is empty (no matching occurs).

.TP
\fBmerge_to\fR \fIstring\fR
.br
The \fBmerge_to\fR is an extended regular expression with a twist. All
subexpressions from the \fBmerge_from\fR are expanded into \fBmerge_to\fR using
%[1-9] (in contrast to \\[1-9] for backreferences). Care is taken to escape
the constructed expression. A '$' at the end of the \fBmerge_to\fR 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.
.br
Example: merge_to = "^merge_%1$";
.br
Above example, combined with the merge_from example would match a tag
"from_BugFix_2002" to the merge-destination with tag "merge_BugFix_2002".
.br
Default is empty (no matching occurs).

.TP
\fBbranch_font\fR \fInumber\fR
The font of the number in a branch box.
.br
Default is tiny.

.TP
\fBbranch_tag_font\fR \fInumber\fR
The font of the tags in a branch box.
.br
Default is tiny.

.TP
\fBbranch_color\fR \fIcolor\fR
All branch element's color excluding tags.
.br
Default is black ("#000000").

.TP
\fBbranch_tag_color\fR \fIcolor\fR
All branch tags' color.
.br
Default is black ("#000000").

.TP
\fBbranch_lspace\fR \fInumber\fR
.TP
\fBbranch_rspace\fR \fInumber\fR
.TP
\fBbranch_tspace\fR \fInumber\fR
.TP
\fBbranch_bspace\fR \fInumber\fR
Interior spacing of branch boxes.
.br
Default is 0.

.TP
\fBbranch_margin\fR \fInumber\fR
Exterior spacing of branches. Each branch will be spaced
with a minimum of this value.
.br
Default is 0.

.TP
\fBbranch_connect\fR \fInumber\fR
Length of the vertical connector from a revision to the branch box.
.br
Default is 0.

.TP
\fBbranch_dupbox\fR \fIboolean\fR
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.
.br
Default is false.

.TP
\fBbranch_fold\fR \fIboolean\fR
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.
.br
Default is true.

.TP
\fBbranch_foldall\fR \fIboolean\fR
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 firts occuring empty branch on the revision's branchpoint.
Setting this option will reduce imagesize with interspaced commits to the
a maximum.
.br
Default is false.

.TP
\fBtitle\fR \fIstring\fR
The title of the image.
.br
Default is empty string.

.TP
\fBtitle_x\fR \fInumber\fR
.TP
\fBtitle_y\fR \fInumber\fR
Postion of title.
.br
Default is 0.

.TP
\fBtitle_font\fR \fInumber\fR
The font of the title.
.br
Default is tiny.

.TP
\fBtitle_align\fR \fInumber\fR
Horizontal alignment of the title.
.br
Default is left.

.TP
\fBtitle_color\fR \fIcolor\fR
The color of the title.
.br
Default is black ("#000000").

.TP
\fBmargin_top\fR \fInumber\fR
.TP
\fBmargin_bottom\fR \fInumber\fR
.TP
\fBmargin_left\fR \fInumber\fR
.TP
\fBmargin_right\fR \fInumber\fR
Margins of the image. Note: the title position is not affected by
the margin.
.br
Default is 0.

.TP
\fBimage_type\fR \fInumber\fR
Image types are available if they can be found in
the gd library. Newer versions of gd do not have
gif anymore. CvsGraph will automatically generate
png images instead.
.br
Default is dependent on availability and is prioritized in the order
png, gif and jpeg.

.TP
\fBimage_quality\fR \fInumber\fR
The quality of a jpeg image (1..100)
.br
Default is 100.

.TP
\fBmap_name\fR \fIstring\fR
The name= attribute in <map name="mapname">...</map> in the
generated HTML map.
.br
Default is "CvsGraphImageMap".

.TP
\fBmap_branch_href\fR \fIstring\fR
.TP
\fBmap_rev_href\fR \fIstring\fR
.TP
\fBmap_diff_href\fR \fIstring\fR
These are the href= attributes in the <area>
tags of html.
.br
Default are:
.br
branch: "href=\\"unset: conf.map_branch_href\\""
.br
revision: "href=\\"unset: conf.map_rev_href\\""
.br
diff: "href=\\"unset: conf.map_diff_href\\""

.TP
\fBmap_branch_alt\fR \fIstring\fR
.TP
\fBmap_rev_alt\fR \fIstring\fR
.TP
\fBmap_diff_alt\fR \fIstring\fR
These are the alt= attributes in the <area>
tags of html.
.br
Default are "alt=\\"%B\\"", "alt=\\"%R\\"" and
"alt=\\"%P &lt;\-&gt; %R\\"" respectively.

.SH "AUTHOR"
\fBCvsGraph\fR is written and maintained by B. Stultiens.
.br
Send comments and bugreports to \fIcvsgraph@akhphd.au.dk\fR and
visit the homepage at:
.br
\fIhttp://www.akhphd.au.dk/~bertho/cvsgraph\fR.
.SH "SEE ALSO"
.BR cvsgraph(1)