# ViewVC 1.2 Template Authoring Guide

## Introduction

This document represents an (unfinished) attempt at providing instructions for how to customize ViewVC's HTML output via modification of its templates.

## Table of Contents

## Using EZT

### TODO ###

## Variables Available to ViewVC Templates

### Common Template Variable Set (COMMON)

Variable | Type | Description
--- | --- | ---
annotate_href | String | URL of the ViewVC annotation view for the current resource. Valid only when pathtype is `file`.
cfg | Object | Representation of the object used by ViewVC for runtime configuration parameters such as those parsed from `viewvc.conf`. Dot-qualified children of this object map to configuration sections and option keys. For example, cfg.options.show_logs contains the value of the show_logs variable in the options section of the configuration file.
docroot | String | URL of the static documents directory, generally used for referencing stylesheets and images stored in and under that directory (which is typically relative to the template location).
download_href | String | ViewVC file contents download URL for the current resource. Valid only when pathtype is `file`.
download_text_href | String | ViewVC file contents as-text download URL for the current resource. Valid only when pathtype is `file`.
graph_href | String | URL of the ViewVC revision graph view for the current resource. Valid only when pathtype is `file`.
home_href | String | URL of the root of ViewVC instance. Depending on configuration, this could be a link to either the root directory of the `default_root` or to the roots listing.
kv | Object | Representation of the object used by ViewVC for user-defined key/value mappings. Dot-qualified children of this object map to named key/value files and the sections and keys within them. For example, kv.l10n.labels.directory maps to the value of the directory key under the labels section of the key/value file whose configured abstract name is l10n.
lockinfo | String | Information about the lock status of the current resource.
log_href | String | URL of the ViewVC revision log view for the current resource. Valid only when pathtype is `file` or (for Subversion roots) `dir`.
nav_path | List | Ordered list of path components from the repository root to the current resource.
nav_path.href | String | URL of the default ViewVC view for the path component.
nav_path.name | String | Name of the path component.
pathtype | String | Path kind of the current resource. Valid values: `file` (file), `dir` (directory); may be empty.
prefer_markup | Boolean | Indicates whether to make the default file link a link to the markup page instead of the checkout page. Valid only when pathtype is `file`.
queryform_href | String | URL for a query form returning results from this directory. Valid only when pathtype is `dir`.
rev | String | Revision of the current resource.
revision_href | String | URL of the Subversion revision view for the current revision.
rootname | String | Name of the current repository (root).
roots_href | String | URL of ViewVC root listing view. Valid only when ViewVC is configured in roots-as-url-components mode.
rootpath | String | Server-local location of the current repository. WARNING: Revealing information to untrusted guests about the details of your server configuration can have negative security implications. Use this token at your own risk.
roottype | String | Version control type of the current repository (root). Valid values: `cvs` (CVS), `svn` (Subversion).
rss_href | String | URL of RSS feed for current location.
tarball_href | String | URL to download tarball of the current directory.
up_href | String | Link to the current object's parent directory view.
username | String | Authenticated username of the requesting user.
view | String | Name of the current view. Valid values: `annotate` (annotation view), `diff` (file difference view), `roots` (root listing view), `dir` (directory listing view), `graph` (revision graph view), `log` (revision log view), `markup` (file contents view), `query` (revision history query results view), `queryform` (revision history query form view), `rev` (revision/changeset view).
view_href | String | URL of the ViewVC file contents view for the current resource. Valid only when pathtype is `file` or `dir`.
vsn | String | ViewVC version identifier.
where | String | Path (relative to the current repository root) of the current resource.

### Path Revision Form Variable Set (PATHREV)

Variable | Type | Description
--- | --- | ---
lastrev | String | If the current path is deleted in a future revision, last revision where the path is available. (Subversion only)
pathrev | String | Current sticky revision (Subversion) or sticky tag (CVS)
pathrev_action | String | Form action URL for the sticky revision/tag selection form.
pathrev_hidden_values | List | Hidden field name/value pairs for the revision/tag selection form.
pathrev_clear_action | String | Form action URL for the path revision clear button.
pathrev_clear_hidden_values | List | Hidden field name/value pairs for the path revision clear button.

### Paging Form Variable Set (PAGING)

Variable | Type | Description
--- | --- | ---
picklist | List | List of pages that make up the current directory or log view.
picklist.count | String | Number of the first item on the page (indexed from 0)
picklist.end | String | Name of last item on the page
picklist.more | Boolean | If set, indicates that this picklist item is a placeholder for an unspecified number of additional pages. In this case, `picklist.end` is undefined.
picklist.page | String | Page number (indexed from 1)
picklist.start | String | Name of first item on the page
picklist_len | String | Number of pages in picklist

### Property Listing Variable Set (PROPERTIES)

Variable | Type | Description
--- | --- | ---
properties | List | List of item properties set on the current directory, minus those with undisplayable names.
properties.name | String | Name of an item property.
properties.undisplayable | Boolean | Indicates whether or not the value of this property is undisplayable (by virtue of not being UTF-8 text).
properties.value | String | Value of this property.

### File Contents View (file.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON and PROPERTIES variable sets
ago | String | Text description of the time elapsed since date.
annotation | String | Valid values are "none" (no annotations were attempted), "annotated" (annotation was successful), "binary" (file contents are not line-based and human-readable), and "error" (something went wrong during annotation).
author | String | Author of the revision being viewed.
branch_points | String | List of branch tag names which branch off of the revision being viewed (CVS only).
branches | List | If revision currently being viewed is on a branch, list of names for the branch.
changed | String | Numbers of lines added and removed since the previous revision.
date | String | Date (in UTC if not otherwise configured) of the revision currently being viewed.
image_src_href | String | URL used to display the current revision of the file as an embedded image. (Set only if the file is not a web-viewable image.)
lines | List | Set of objects containing information about the most recent modification of a single line of file content in the current resource, naturally ordered by the line numbers they represent. Every line in the resource is represented in the set.
lines.author | String | Username of the most recent modifier of the line.
lines.date | String | Date (in UTC if not otherwise configured) of the modification of the line.
lines.diff_href | String | URL of the ViewVC file difference view which displays the modification of the line.
lines.line_number | String | Line number (1-based) of the line.
lines.prev_rev | String | Youngest revision of the resource prior to the line's modification.
lines.rev | String | Revision in which the modification of the line occured.
lines.text | String | Textual contents of the line.
log | String | Log message of the revision currently being viewed.
mime_type | String | MIME type of the current file.
orig_path | String | When viewing an old file revision through a copy of the file, this is the old file revision's original path.
orig_href | String | URL of a ViewVC log view for `orig_path`.
prev | String | Previous revision number.
size | String | Size of the file revision, in bytes. Subversion only.
state | String | State of the file revision. Possible values: `dead`, and the empty string.
tags | List | Names of tags that have been applied to the current file revision.
vendor_branch | Boolean | Indicates whether or not the current file revision is on a vendor branch.

### Revision Graph View (graph.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON variable set
gbbox | Boolean | Toggle generation of a branch box at the tip of all branches in the revision graph.
gflip | Boolean | Toggle the direction of the revision graph.
gleft | Boolean | Toggle the orientation of the revision graph.
gmaxtag | String | Number of tags per revision to display in the revision graph.
graph_action | String | Form action URL for the graph customization form.
graph_hidden_values | String | Hidden value name/value pairs for the graph customization form.
gshow | String | Classes of revisions to show in the revision graph. Valid values are `all` (all revision), `inittagged` (initial revision(s) and tagged revisions), and `tagged` (tagged revisions only).
imagemap | String | HTML markup containing the image map associated with the revision graph.
imagesrc | String | URL of the ViewVC revision graph image for the current resource.
opt_gbbox | Boolean | Specifies whether the user is allowed to toggle the generation of branch boxes at the tip of all branches in the revision graph.
opt_gflip | Boolean | Specifies whether the user is allowed to toggle the direction of the revision graph.
opt_gleft | Boolean | Specifies whether the user is allowed to toggle the orientation of the revision graph.
opt_gmaxtag | Boolean | Specifies whether the user is allowed to configure the maximum number of tags per revision show in the revision graph.
opt_gshow | Boolean | Specifies whether the user is allowed to configure which classes of revisions are shown in the revision graph.

### File Difference View (diff.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON variable set
diffs | List | List of all blocks of differences between the two sides, including content and property differences.
diffs.diff_block_format | String | Indicates the type of this block. One of the `anchor` (no display, create an anchor), `raw` (non-colored diff, display as produced), `sidebyside-1` (traditional side-by-side diff), `sidebyside-2` (newer side-by-side diff with intraline changes), `unified` (colored unified diff).
diffs.anchor | String | If diffs.diff_block_format is `anchor`, this variable specifies the anchor name.
diffs.changes | List/Container | Set of objects which contain information about a change in a single object (file or property). Not present if diffs.diff_block_format is `anchor`, otherwise has different format depending on diffs.diff_block_format (applicable as indicated in brackets below).
diffs.changes.raw | String | [raw] Diff text. Valid only if diffs.changes.type is `raw`.
diffs.changes.type | String | [raw] The type of change. Values: `binary-diff`, `error`, `no-changes`, `raw`.
diffs.changes.have_left | Boolean | [sidebyside-1] Specifies whether the left file has a line of content relevant to the difference data line. Valid only when changes.type is `change`.
diffs.changes.have_right | Boolean | [sidebyside-1] Specifies whether the right file has a line of content relevant to the difference data line. Valid only when changes.type is `change`.
diffs.changes.left | String | [sidebyside-1] Textual contents of the relevant line in the left file. Valid only when changes.type is `change`, `context`, or `remove`. When changes.type is `change`, valid only when changes.have_left is set (in order to delineate between missing lines and empty lines, which EZT does not support).
diffs.changes.right | String | [sidebyside-1] Textual contents of the relevant line in the right file. Valid only when changes.type is `add`, `change`, or `context`. When changes.type is `change`, valid only when changes.have_left is set (in order to delineate between missing lines and empty lines, which EZT does not support).
diffs.changes.line_info_extra | String | [sidebyside-1] Additional line information for the current difference hunk. Valid only when changes.type is `header`.
diffs.changes.line_info_left | String | [sidebyside-1] First line number represented by the current hunk in the left file. Valid only when changes.type is `header`.
diffs.changes.line_info_right | String | [sidebyside-1] First line number represented by the current hunk in the right file. Valid only when changes.type is `header`.
diffs.changes.line_number | String | [sidebyside-1] Line number (1-based) of the line.
diffs.changes.type | String | [sidebyside-1] The type of change. Values: `add`, `binary-diff`, `change`, `context`, `error`, `header`, `no-changes`, `remove`.
diffs.changes.columns | List | [sidebyside-2] List of two columns for left and right parts of the diff.
diffs.changes.columns.line_number | String | [sidebyside-2] Line number in the left/right column.
diffs.changes.columns.segments | List | [sidebyside-2] Left/right line, broken into change segments.
diffs.changes.columns.segments.text | String | [sidebyside-2] Text of this segment.
diffs.changes.columns.segments.type | String | [sidebyside-2] Not set if the segment is the same in both left and right sides; otherwise, one of the `add`, `remove` or `change`.
diffs.changes.gap | Boolean | [sidebyside-2] If true, indicates that change blocks are non-contiguous and that the template should display some sort of ellipsis before the current block.
diffs.changes.type | String | [sidebyside-2] The type of change. Values: `binary-diff`, `error`, `intraline`, `no-changes`.
diffs.changes.segments | List | [unified] Left/right line, broken into change segments.
diffs.changes.segments.text | String | [unified] Text of this segment.
diffs.changes.segments.type | String | [unified] Not set if the segment is the same in both left and right sides; otherwise, one of the `add`, `remove` or `change`.
diffs.changes.type | String | [unified] The type of change. Values: `add`, `binary-diff`, `error`, `no-changes`, `remove` or empty string if the line was not changed (context line).
diffs.left | Container | Container object for grouping information about the left file.
diffs.left.ago | String | Text description of the time elapsed since left.date.
diffs.left.annotate_href | String | URL of the ViewVC annotation view for the left file. Valid only when entries.pathtype is `file`.
diffs.left.author | String | Author of the revision of the left file.
diffs.left.date | String | Date (in UTC if not otherwise configured) in which the left file revision was created.
diffs.left.download_href | String | URL to download the HEAD revision of the left file.
diffs.left.download_text_href | String | URL to download the HEAD revision of the left file as `text/plain`.
diffs.left.log | String | Log message of the left file revision.
diffs.left.path | String | Path of the left file.
diffs.left.prefer_markup | Boolean | Indicates whether to make the default file link a link to the markup page instead of the checkout page.
diffs.left.rev | String | Revision of the left file.
diffs.left.revision_href | String | URL of the Subversion revision view for the left file's current revision. Valid only when roottype is `svn`.
diffs.left.size | String | Size of the left file revision, in bytes. Subversion only.
diffs.left.tag | String | Tag of the left file.
diffs.left.view_href | String | This is a URL for the markup view of the left file.
diffs.right | Container | Container object for grouping information about the right file.
diffs.right.ago | String | Text description of the time elapsed since right.date.
diffs.right.annotate_href | String | URL of the ViewVC annotation view for the right file. Valid only when entries.pathtype is `file`.
diffs.right.author | String | Author of the revision of the right file.
diffs.right.date | String | Date (in UTC if not otherwise configured) in which the right file revision was created.
diffs.right.download_href | String | URL to download the HEAD revision of the right file.
diffs.right.download_text_href | String | URL to download the HEAD revision of the right file as `text/plain`.
diffs.right.log | String | Log message of the right file revision.
diffs.right.path | String | Path of the right file.
diffs.right.prefer_markup | Boolean | Indicates whether to make the default file link a link to the markup page instead of the checkout page.
diffs.right.rev | String | Revision of the right file.
diffs.right.revision_href | String | URL of the Subversion revision view for the right file's current revision. Valid only when roottype is `svn`.
diffs.right.size | String | Size of the right file revision, in bytes. Subversion only.
diffs.right.tag | String | Tag of the right file.
diffs.right.view_href | String | This is a URL for the markup view of the right file.
diff_format | String | Difference display format: Valid values are `c` (context), `f` (full human-readable), `h` (human-readable, or colored), `l` (long human-readable), `s` (side-by-side), `u` (unified).
diff_format_action | String | Form action URL for the diff format selection form.
diff_format_hidden_values | List | Hidden field name/value pairs for the diff format selection form.
hide_legend | Boolean | Indicates whether the display format requires displaying a legend
patch_href | String | URL of the patch view for the file.

### Directory Listing View (directory.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON, PATHREV, PAGING, and PROPERTIES variable sets
attic_showing | Boolean | Indicates whether or not the directory list include "dead" files (files not available in, perhaps deleted from, the current tag). CVS only.
branch_tags | List | Set of branch tag names in use by files in the current directory. CVS only.
dir_pagestart | String | Item number (zero-based) of the first directory entry requested to be shown on the page. Corresponds to the dir_pagestart CGI parameter.
dir_paging_action | String | Form action URL for the page selection form.
dir_paging_hidden_values | List | Hidden field name/value pairs for the page selection form.
dirs_shown | String | Number of directories displayed.
entries | List | Set of objects which represent the entries of this directory.
entries.ago | String | Textual description of the time since entries.date.
entries.annotate_href | String | URL of the ViewVC annotation view for the directory entry. Valid only when entries.pathtype is `file`.
entries.author | String | Username of the last modifier of the directory entry.
entries.date | String | Date (in UTC if not otherwise configured) of the last modification of the directory entry.
entries.download_href | String | URL to download the HEAD revision of the directory entry.
entries.download_text_href | String | URL to download the HEAD revision of the directory entry as `text/plain`.
entries.errors | List | List of strings containing error messages encountered by the version control backend as it attempted to harvest information about this directory entry. At this time the strings are somewhat freeform; in the future it would be nice to expose these as testable error code or somesuch.
entries.graph_href | String | URL of the ViewVC revision graph view for the directory entry.
entries.is_binary | Boolean | Indicates whether the file's contents are not deemed to be "human-readable".
entries.is_viewable_image | Boolean | Indicates whether the file is a web-friendly image that can be expected to display in-browser without additional plugins (JPEG, GIF, or PNG).
entries.lockinfo | String | Information about the lock status of the directory entry.
entries.log | String | Log message of last modification to the directory entry.
entries.log_file | String | ViewVC optionally calculates the log message of a CVS directory as the log message associated with the most recently modified file in that directory. When that occurs, this is the name of that file. Valid only when entries.pathtype is `dir`. See also entries.log_rev.
entries.log_href | String | URL of the ViewVC revision log view for the directory entry.
entries.log_rev | String | ViewVC optionally calculates the log message of a CVS directory as the log message associated with the most recently modified file in that directory. When that occurs, this is the revision of that file. Valid only when entries.pathtype is `dir`. See also entries.log_file.
entries.mime_type | String | MIME type of the directory entry.
entries.name | String | Name of the directory entry.
entries.pathtype | String | Path kind of the directory entry. Valid values: `file` (file), `dir` (directory); may be empty.
entries.prefer_markup | Boolean | Indicates whether to make the default file link a link to the markup page instead of the checkout page. Valid only when entries.pathtype is `file`.
entries.rev | String | Revision of the directory entry. For CVS repositories, this is a revision at the tip of the selected tag or branch; for Subversion, this is the youngest revision as of the revision of the directory being viewed.
entries.revision_href | String | URL of the Subversion revision view for the directory entry's current revision. Valid only when roottype is `svn`.
entries.short_log | String | Log message of last modification to the directory entry, truncated to contain no more than the number of characters specified by the `short_log_len` configuration option.
entries.size | String | Size (in bytes) of the directory entry. Valid only when roottype is `svn` and entries.pathtype is `file`.
entries.state | String | State of the directory entry. If the state is uninteresting (a typical, versioned object), this field is empty. Valid, non-empty states include: `dead` (the object is not available on, or possible removed from, this branch; CVS only).
entries.view_href | String | This is a URL for the markup view if the entry is a file, and a URL for a directory listing if the entry is a directory.
files_shown | String | Number of files displayed.
hide_attic_href | String | URL for the current view, but with "dead" files hidden. CVS only.
num_dead | String | Number of dead files in the current directory.
plain_tags | List | List of tag names in use by files in the current directory. CVS only.
search_re | String | Current search expression, if any.
search_re_action | String | Form action URL for the regular expression search form, if searching is available.
search_re_hidden_values | List | Hidden field name/value pairs for the regular expression search form.
show_attic_href | String | URL for the current view, but with "dead" files shown. CVS only.
sortby | String | Current sorting mode. Valid values: `file`, `rev`, `date`, `author`, and `log`.
sortby_author_href | String | URL for the current view, but sorted by author.
sortby_date_href | String | URL for the current view, but sorted by date.
sortby_file_href | String | URL for the current view, but sorted by filename.
sortby_log_href | String | URL for the current view, but sorted by log message.
sortby_rev_href | String | URL for the current view, but sorted by revision number.
sortdir | String | Current sorting mode. Valid values: `up` (ascending) and `down` (descending)
tree_rev | String | Last revision number where the current directory (or any path underneath it) was modified. Subversion only.
tree_rev_href | String | URL for revision view showing information about the tree_rev revision. Subversion only.
youngest_rev | String | Last revision number in the repository. Subversion only
youngest_rev_href | String | URL for revision view showing information about the youngest_rev revision. Subversion only.

### Error View (error.ezt)

Variable | Type | Description
--- | --- | ---
msg | String | Message describing the current error.
stacktrace | String | Python stack trace showing where the error occurred.
status | String | HTTP status code like "404 Not Found" that was sent to the browser with this error message.

### Revision Log View (log.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON, PATHREV, and PAGING variable sets
branch_tags | List | Names of branch tags in the file. CVS only.
default_branch | List | Default branch names (CVS only)
diff_format | String | Currently selected diff format in the diff selection form. Valid values are `c` (context), `h` (human-readable, or colored), `l` (long human-readable), `s` (side-by-side), `u` (unified).
diff_select_action | String | Form action URL for the diff selection form.
diff_select_hidden_values | List | Hidden field name/value pairs for the diff selection form.
entries | List | List of revisions where the file or directory was modified.
entries.ago | String | Text description of the time elapsed since entries.date.
entries.annotate_href | String | URL for the annotate view of the file revision.
entries.author | String | Author of the revision.
entries.branch_names | List | If this last revision on a branch, a list of names for that branch.
entries.branch_point | String | If the revision is on a branch, this is the revision number the branch branched off from. CVS only.
entries.branch_points | String | List of branch tags which branch off of this revision. CVS only.
entries.branch_points.name | String | Name of the branch tag.
entries.branch_points.href | String | URL for the current view, but with this tag set as the sticky tag.
entries.branches | String | List of branch tags that include this file revision. CVS only.
entries.branches.name | String | Name of the branch tag.
entries.branches.href | String | URL for the current view, but with this tag set as the sticky tag.
entries.changed | String | Numbers of lines added and removed since the previous revision. CVS only.
entries.copy_href | String | URL for log view of entries.copy_path.
entries.copy_path | String | If the file revision was copied from somewhere, this is the path it was copied from. Subversion only.
entries.copy_rev | String | If the file revision was copied from somewhere, this is the revision number of the path it was copied from. Subversion only.
entries.date | String | Date (in UTC if not otherwise configured) of the revision.
entries.diff_to_branch_href | String | URL for a diff view of this file revision showing the changes since the branch was created at (entries.branch_point). CVS only.
entries.diff_to_main_href | String | If this revision is at the tip of a branch, URL for a diff view of this file revision showing the differences between it and the latest revision on the parent branch (entries.next_main). CVS only.
entries.diff_to_prev_href | String | URL for a diff view of this file revision showing the changes since the previous revision (entries.prev).
entries.diff_to_sel_href | String | URL for a diff view of this file revision and the currently selected revision (rev_selected).
entries.download_href | String | URL to download the file revision.
entries.download_text_href | String | URL to download the file revision as `text/plain`.
entries.lockinfo | String | Information about the lock status of this revision.
entries.log | String | Revision log message.
entries.next_main | String | If this revision is on the tip of the branch, this is the latest revision of the parent branch, a likely merge candidate.
entries.orig_href | String | URL for log view of entries.orig_path
entries.orig_path | String | If this file revision is located at a different path than the newest file revision (because it precedes a copy or move), this is the path it was originally located at. Subversion only.
entries.prefer_markup | Boolean | Indicates whether to make the default file link a link to the markup page instead of the checkout page.
entries.prev | String | Previous revision number.
entries.rev | String | Revision number.
entries.revision_href | String | URL for revision view showing more information about the revision.
entries.sel_for_diff_href | String | URL for current view, but with this revision selected for diffs.
entries.size | String | Size of the file revision, in bytes. Subversion only.
entries.state | String | State of the file revision. Possible values: `dead`, and the empty string.
entries.tag_names | List | List of tag names which refer to the revision.
entries.tags | List | List of tags which refer to the revision
entries.tags.name | String | Name of the tag.
entries.tags.href | String | URL for the current page, but with this tag set as the sticky tag.
entries.vendor_branch | Boolean | Indicates if this revision is on a vendor branch.
entries.view_href | String | URL for markup view for a file revision, or directory listing view for a directory revision.
head_annotate_href | String | URL for annotate view of the HEAD revision of the file.
head_download_href | String | URL to download the HEAD revision of the file.
head_download_text_href | String | URL to download the HEAD revision of the file as `text/plain`.
head_prefer_markup | Boolean | Indicates whether to make the default HEAD file link a link to the markup page instead of the checkout page.
head_view_href | String | URL for markup view of the HEAD revision of the file.
human_readable | Boolean | Indicates whether or not currently selected diff format (diff_format) is human readable (colored).
log_pagestart | String | Item number (zero based) of the first directory entry requested to be shown on the page. Corresponds to the log_pagestart query parameter.
log_paging_action | String | Form action URL for the page selection form.
log_paging_hidden_values | List | Hidden field name/value pairs for the page selection form.
logsort | String | Current sorting mode. Possible values: `date` and `rev`.
logsort_action | String | Form action URL for log sort drop down box.
logsort_hidden_values | List | Hidden field name/value pairs for the log sort drop down box
mime_type | String | MIME type of current file.
plain_tags | List | Names of non-branch in the file. CVS only.
rev_selected | String | Revision number currently selected for diffs.
tag_annotate_href | String | URL for annotate view of the file at currently selected sticky tag.
tag_download_href | String | URL to download the file at currently selected sticky tag. CVS only.
tag_download_text_href | String | URL to download the file as `text/plain` at the currently selected sticky tag. CVS only
tag_prefer_markup | Boolean | Indicates whether to make the default sticky tag file link a link to the markup page instead of the checkout page.
tag_view_href | String | URL for markup view of the file at the currently selected sticky tag. CVS only.
tags | String | List of tags that in the current file. CVS only.
tags.rev | String | Revision number for a non-branch tag, or the latest revision number on the branch for a branch tag.
tags.name | String | Tag name

### Revision History Query Results View (query_results.ezt, rss.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON variable set
backout_href | String | URL for a page that shows a list of commands that can be applied to a working copy to revert all the changes returned by the query.
commits | List | List of commits to files under the current directory that meet the query criteria.
commits.author | String | Author of the commit.
commits.files | List | List of files under the current directory affected by the commit.
commits.files.author | String | Author of the commit.
commits.files.date | String | Date (in UTC if not otherwise configured) the change to the file was committed.
commits.files.dir | String | Path of the directory containing the file.
commits.files.dir_href | String | URL for directory listing of commits.files.dir.
commits.files.file | String | File name.
commits.files.rev | String | Revision number of the file.
commits.files.branch | File | Branch the commit occurred on.
commits.files.diff_href | String | URL to diff page showing changes since previous file revision.
commits.files.log_href | String | URL for file's log page.
commits.files.minus | String | Number of lines removed from the file by the commit.
commits.files.plus | String | Number of lines added to the file by the commit.
commits.files.type | String | Type of change made to the file by the commit. Possible values: `Change`, `Add`, `Remove`
commits.log | String | Commit log message.
commits.limited_files | Boolean | True if files list was cut short due to `limit_changes`.
commits.minus | String | Total number of lines removed from files in this commit.
commits.num_files | String | Total number of files in the commits.files list.
commits.plus | String | Number of lines added to files in this commit.
commits.rev | String | Commit revision number. Subversion only.
commits.rss_date | String | Date of the commit formatted for RSS.
commits.rss_url | String | Absolute URL of the revision page for the commit. Subversion only.
commits.short_log | String | Truncated commit log message.
english_query | String | Text description of the current query criteria.
limit_changes | String | Current `limit_changes` value, maximum number of changed files to show per commit.
limit_changes_href | String | URL for the current view but with `limit_changes` disabled.
minus_count | String | Total number of lines removed from all files across all returned commits.
plus_count | String | Total number of lines added to all files across all returned commits.
querysort | String | Indicates how query results are being sorted. Possible values: `date`, `author`, and `file`.
row_limit_reached | Boolean | Indicates whether the internal database row limit threshold (set via the `cvsdb.row_limit` and `cvsdb.rss_row_limit` configuration options) was reached by the query.
show_branch | Boolean | Indicates whether or not to list branch names in the results. True when query results can include more than a single branch.
sql | String | SQL string used to query database. Included for debugging purposes.

### Revision History Query Form View (query_form.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON variable set
branch | String | Query string for filtering results by branch.
branch_match | String | Type of match to perform with branch query string. Valid values: `exact`, `like`, `glob`, `regex`, `notregex`.
comment | String | Query string for filtering results by log message.
comment_match | String | Type of match to perform with comment query string. Possible values: `exact`, `like`, `glob`, `regex`, `notregex`.
date | String | Option for filtering results by date. Possible values: `hours`, `day`, `week`, `month`, `all`, `explicit`.
dir | String | Query string for filtering results by subdirectory.
dir_href | String | URL for directory list of current directory.
file | String | Query string for filtering results by file name.
file_match | String | Type of match to perform with file query string. Valid values: `exact`, `like`, `glob`, `regex`, `notregex`.
hours | String | If date is `hours`, number of hours back to include results from.
limit_changes | String | Current `limit_changes` value, maximum number of changed files to show per commit.
maxdate | String | If date is `explicit`, latest date to include results from.
mindate | String | If date is `explicit`, earliest date to include results from.
query_action | String | Form action URL for query form.
query_hidden_values | List | Hidden field name/value pairs for query form.
querysort | String | Option for sorting query results. Possible values: `date`, `author`, and `file`.
who | String | Query string for filtering results by author.
who_match | String | Type of match to perform with who query string. Possible values: `exact`, `like`, `glob`, `regex`, `notregex`.

### Revision/ChangeSet View (revision.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON variable set
ago | String | Text description of the time elapsed since date.
author | String | Author of the revision.
changes | List | List of paths changed in this revision.
changes.action | String | Indicates what happened to the path in this revision. Valid values are: `added`, `modified`, `replaced`, and `deleted`.
changes.copy_path | String | Original path if path was copied from somewhere in this revision.
changes.copy_rev | String | Revision number of original path if path was copied from somewhere in this revision
changes.diff_href | String | URL for diff of changed path against previous revision.
changes.is_copy | Boolean | Indicates whether path was copied from another path in this revision.
changes.log_href | String | URL for log view of changed path.
changes.path | String | Changed path.
changes.pathtype | String | Type of changed path. Valid values: `file` or `dir`
changes.prop_mods | Boolean | Indicates whether the path's properties changed in this revision
changes.text_mods | Boolean | Indicates whether the path's file contents changed in this revision.
changes.view_href | String | URL for markup view of changed path.
date | String | Revision date (in UTC if not otherwise configured).
first_changes | String | Configured value for `limit_changes`.
first_changes_href | String | URL for the current view but with `limit_changes` set to the configured value.
jump_rev_action | String | Form action URL for revision jump form.
jump_rev_hidden_values | List | Hidden field name/value pairs for revision jump form.
limit_changes | String | Current `limit_changes` value, maximum number of changed files to show per commit.
log | String | Revision log message.
more_changes | String | Number of changes not being shown due to `limit_changes`.
more_changes_href | String | URL for the current view but with `limit_changes` disabled.
num_changes | String | Number of paths changed in this revision.
next_href | String | URL for revision page of the next revision.
prev_href | String | URL for revision page of the previous revision.
rev | String | Revision number.

### Root Listing View (roots.ezt)

Variable | Type | Description
--- | --- | ---
Includes all variables from the COMMON variable set
roots | List | Set of configured viewable repositories.
roots.ago | String | Textual description of the time since roots.date.
roots.author | String | Username of the last modifier of the root.
roots.date | String | Date (in UTC if not otherwise configured) of the last modification of the root.
roots.href | String | URL of root directory view for a configured repository.
roots.log | String | Log message of last modification to the root.
roots.log_href | String | URL of log revision view for the top-most (root) directory of the root (repository).
roots.name | String | Name of a configured repository.
roots.path | String | Server-local location of a configured repository. WARNING: Revealing information to untrusted guests about the details of your server configuration can have negative security implications. Use this token at your own risk.
roots.rev | String | Youngest revision of the root.
roots.short_log | String | Log message of last modification to the root, truncated to contain no more than the number of characters specified by the `short_log_len` configuration option.
roots.type | String | Version control type of a configured repository. Valid values: `cvs`, `svn`.
roots_shown | List | Number of repositories displayed.