'\" t .\" aegis - project change supervisor .\" Copyright (C) 2002-2008 Peter Miller .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .\" .\" aegis - project change supervisor .\" Copyright (C) 1991-1993, 1997, 2006-2008 Peter Miller .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .ds n) aegis .ds N) Aegis .if n .nr )M 8n .if n .nr IN 8n .if n .nr )I 8n .if n .po 0 .hy 0 .if n .ad l .de r) .if !'\\*(R)'no' \{\ .PP See also .IR \*(n) (1) for options common to all \*(n) commands. .\} .. .de eB .RS .nf .ft CW .ta 8n 16n 24n 32n .. .de eE .ft P .fi .RE .. .ds n) aeannotate .TH "\*(n)" 1 \*(N) "Reference Manual" "" .SH NAME aeannotate \- annotated source file listing .XX "aeannotate(1)" "annotated source file listing" .SH SYNOPSIS .B \*(n) [ .IR option \&... ] .IR filename .br .B \*(n) .B -Help .br .B \*(n) .B -List .br .B \*(n) .B -VERSion .SH DESCRIPTION The .I "\*(n)" command is used to produce an annotated listing of the named source file. .PP The columns specified by the user (see the \fB\--column\fP option, below) are used of the left hand side of the output. Two additional columns are always added: the line number and the source code. .PP If no columns are specified, the default columns are .TS center,tab(;); l l l l. \-column;'${change date %Y-%m}';Date;7 \-column;'$version';Version;9 \-column;'${change developer}';Who;8 .TE The \fI$version\fP string always contains enough information to reproduce the entire project baseline at the time of the delta. The first portion is the project branch, and the second portion (following the `D') is the delta number; use these to form the -branch and -delta options for an \fIaecp\fP(1) command. .PP At the end of the listing, accumulated statistics are presented, correlated to the unique columns values see in the listing. .SH OPTIONS The following options are understood: .TP 8n .B \-COLumn \fIformula \fP [ \fIheading\fP ][ \fIwidth\fP ] This option may be used to specify columns you wish to see in the output. The formula is in the for of an \fIaesub\fP(5) string. The heading is a string to be used as the column heading; defaults to the formula if not specified. The width is the width of the columns; defaults to 7 if not specified. .TP 8n .B \-File_Statistics This option causes file statistics to be appended. This lists the number of lines in the file were changed at the same time as another file. For example, this allows you to see tests associated with source files, and \fIvice versa\fP. .\" .\" aegis - project change supervisor .\" Copyright (C) 1991-1993, 2006-2008 Peter Miller. .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .TP 8n .B -Help .br This option may be used to obtain more information about how to use the .I \*(n) program. .TP 8n \fB\-Diff_Option\fP \fIstring\fP This option may be used to pass addition arguments to the diff commands that is run between each delta of the file. Use with caution: poor choice of options can render aeannotate inoperable, or yield meaningless results. Probably the best use of this option is to pass the \fB\-b\fP option, to ignore white space changes, because this ignores the vast majority of cosmetic formatting changes, showing you the content changes instead. The \fB\-i\fP option, to ignore case, can also be useful for case-insensitive languages. .\" .\" aegis - project change supervisor .\" Copyright (C) 2001, 2006-2008 Peter Miller .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .TP 8n \fB\-Output\fP \fIfilename\fP This option may be used to specify the output file. The output is sent to the standard output by default. .\" .\" aegis - project change supervisor .\" Copyright (C) 1991-1993, 2006-2008 Peter Miller. .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .TP 8n \fB-Project\fP \fIname\fP This option may be used to select the project of interest. When no .B -Project option is specified, the .I AEGIS_PROJECT environment variable is consulted. If that does not exist, the user's .I $HOME/.aegisrc file is examined for a default project field (see .IR aeuconf (5) for more information). If that does not exist, when the user is only working on changes within a single project, the project name defaults to that project. Otherwise, it is an error. .\" .\" aegis - project change supervisor .\" Copyright (C) 1991-1993, 2006-2008 Peter Miller. .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .r) .PP All options may be abbreviated; the abbreviation is documented as the upper case letters, all lower case letters and underscores (_) are optional. You must use consecutive sequences of optional letters. .PP All options are case insensitive, you may type them in upper case or lower case or a combination of both, case is not important. .PP For example: the arguments "-project, "-PROJ" and "-p" are all interpreted to mean the \fB-Project\fP option. The argument "-prj" will not be understood, because consecutive optional characters were not supplied. .PP Options and other command line arguments may be mixed arbitrarily on the command line, after the function selectors. .br .ne 4 .PP The GNU long option names are understood. Since all option names for .I \*(n) are long, this means ignoring the extra leading '-'. The "\fB--\fIoption\fB=\fIvalue\fR" convention is also understood. .\" .\" aegis - project change supervisor .\" Copyright (C) 1991-1993, 1995, 1997, 2004, 2006-2008 Peter Miller .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .SH EXIT STATUS The .I \*(n) command will exit with a status of 1 on any error. The .I \*(n) command will only exit with a status of 0 if there are no errors. .SH ENVIRONMENT VARIABLES See \fIaegis\fP(1) for a list of environment variables which may affect this command. See \fIaepconf\fP(5) for the project configuration file's \fIproject_\%specific\fP field for how to set environment variables for all commands executed by Aegis. .SH EXAMPLES If you wanted to list only the year against the lines of the file, use this column specification: .TS center,tab(;); l l l l. \-column;'${change date %Y}';Year;4 .TE .PP If you wanted to list the developer and the reviewer against the lines of the file (commonly called a \[lq]blame\[rq] listing) use this column specification: .TS center,tab(;); l l l l. \-column;'${change developer}';Develop.;8 \-column;'${change reviewer}';Reviewer;8 .TE .PP If you wanted to see the change cause of each line, use this column specification: .TS center,tab(;); l l l l. \-column;'$version';Version;9 \-column;'${change cause}';Cause;20 .TE .PP All of the \fIaesub\fP(5) substitutions are available, however only the \fI${change ...}\fP variants are particularly useful. .PP To see only content changes, and ignore changes in indentation (assuming you are using GNU diff), use this command: .RS aeannotate -diff-opt -b \fIfilename\fP .RE .\" .\" aegis - project change supervisor .\" Copyright (C) 1991-1995, 1997, 2006-2008 Peter Miller .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 3 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see .\" . .\" .br .ne 2i .SH COPYRIGHT .ds v) 4.24.3 .ds V) 4.24.3.D001 .ds o) 0 .ds p) 4.25 .ds u) 4.24 .ds Y) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 \*(n) version \*(V) .br .if t .ds C) \(co .if n .ds C) (C) Copyright \*(C) \*(Y) Peter Miller .PP The \*(n) program comes with ABSOLUTELY NO WARRANTY; for details use the '\fI\*(n) -VERSion License\fP' command. This is free software and you are welcome to redistribute it under certain conditions; for details use the '\fI\*(n) -VERSion License\fP' command. .br .ne 1i .SH AUTHOR .TS tab(;); l r l. Peter Miller;E-Mail:;millerp@canb.auug.org.au \f(CW/\e/\e*\fR;WWW:;http://www.canb.auug.org.au/~millerp/ .TE