There are cases in which GPS needs to parse the output of the VCS commands: when querying the status, or when “annotating” a file.
The following parsers can be implemented in the vcs
node.
<status_parser>
, <local_status_parser>
and <update_parser>
They accept the following child nodes:
<regexp>
(mandatory)<file_index>
regexp
that contains the name
of a file.
<status_index>
regexp
that contains the file
status. This status is passed through the regular expressions defined in the
status_matcher
nodes, see below.
<local_revision_index>
regexp
that contains the name
of the local revision (the version of the file that was checked out).
<repository_revision_index>
regexp
that contains the name
of the repository revision (the latest version of the file in the VCS).
<status_matcher>
label
.
<annotations_parser>
It accepts the following child nodes:
<regexp>
(mandatory)<repository_revision_index>
(mandatory)regexp
that contains the
repository revision of the line.
<author_index>
regexp
that contains the
author of the line.
<date_index>
regexp
that contains the
date of the line.
<file_index>
regexp
that indicates the
part of the line that belongs to the file.
<tooltip_pattern>
regexp
using \n
(where n
represents the nth
expression in regexp
).
<log_parser>
It accepts the following child nodes:
<regexp>
(mandatory)<repository_revision_index>
(mandatory)regexp
that contains the
repository revision of the log.
<author_index>
regexp
that contains the
author of the log.
<date_index>
regexp
that contains the
date of the log.
<log_index>
regexp
that contains the
actual text of the log.
<revision_parser>
It accepts the following child nodes:
<regexp>
(mandatory)<sym_index>
(mandatory)regexp
that contains the
tags or branches symbolic name of the revision.
<repository_revision_index>
(mandatory)regexp
that contains the
repository revision number of the revision.