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.