aeannotate(1) aeannotate(1) NNAAMMEE aeannotate - annotated source file listing SSYYNNOOPPSSIISS aaeeaannnnoottaattee [ _o_p_t_i_o_n... ] _f_i_l_e_n_a_m_e aaeeaannnnoottaattee --HHeellpp aaeeaannnnoottaattee --LLiisstt aaeeaannnnoottaattee --VVEERRSSiioonn DDEESSCCRRIIPPTTIIOONN The _a_e_a_n_n_o_t_a_t_e command is used to produce an annotated listing of the named source file. The columns specified by the user (see the --ccoolluummnn 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. If no columns are specified, the default columns are -column '${change date %Y-%m}' Date 7 -column '$version' Version 9 -column '${change developer}' Who 8 The _$_v_e_r_s_i_o_n string always contains enough information to reproduce the entire project baseline at the time of the delta. The first por- tion 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 _a_e_c_p(1) command. At the end of the listing, accumulated statistics are presented, cor- related to the unique columns values see in the listing. OOPPTTIIOONNSS The following options are understood: --CCOOLLuummnn _f_o_r_m_u_l_a [[ _h_e_a_d_i_n_g ]][[ _w_i_d_t_h ]] This option may be used to specify columns you wish to see in the output. The formula is in the for of an _a_e_s_u_b(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. --FFiillee__SSttaattiissttiiccss 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 _v_i_c_e _v_e_r_s_a. --HHeellpp This option may be used to obtain more information about how to use the _a_e_a_n_n_o_t_a_t_e program. --DDiiffff__OOppttiioonn _s_t_r_i_n_g 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 inopera- ble, or yield meaningless results. Probably the best use of this option is to pass the --bb option, to ignore white space changes, because this ignores the vast majority of cosmetic formatting changes, showing you the content changes instead. The --ii option, to ignore case, can also be useful for case- insensitive languages. --OOuuttppuutt _f_i_l_e_n_a_m_e This option may be used to specify the output file. The out- put is sent to the standard output by default. --PPrroojjeecctt _n_a_m_e This option may be used to select the project of interest. When no --PPrroojjeecctt option is specified, the _A_E_G_I_S___P_R_O_J_E_C_T envi- ronment variable is consulted. If that does not exist, the user's _$_H_O_M_E_/_._a_e_g_i_s_r_c file is examined for a default project field (see _a_e_u_c_o_n_f(5) for more information). If that does not exist, when the user is only working on changes within a sin- gle project, the project name defaults to that project. Oth- erwise, it is an error. See also _a_e_g_i_s(1) for options common to all aegis commands. 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. All options are case insensitive, you may type them in upper case or lower case or a combination of both, case is not important. For example: the arguments "-project", "-PROJ" and "-p" are all inter- preted to mean the --PPrroojjeecctt option. The argument "-prj" will not be understood, because consecutive optional characters were not supplied. Options and other command line arguments may be mixed arbitrarily on the command line, after the function selectors. The GNU long option names are understood. Since all option names for _a_e_a_n_n_o_t_a_t_e are long, this means ignoring the extra leading '-'. The "----_o_p_t_i_o_n==_v_a_l_u_e" convention is also understood. EEXXIITT SSTTAATTUUSS The _a_e_a_n_n_o_t_a_t_e command will exit with a status of 1 on any error. The _a_e_a_n_n_o_t_a_t_e command will only exit with a status of 0 if there are no errors. EENNVVIIRROONNMMEENNTT VVAARRIIAABBLLEESS See _a_e_g_i_s(1) for a list of environment variables which may affect this command. See _a_e_p_c_o_n_f(5) for the project configuration file's _p_r_o_j_e_c_t___s_p_e_c_i_f_i_c field for how to set environment variables for all commands executed by Aegis. EEXXAAMMPPLLEESS If you wanted to list only the year against the lines of the file, use this column specification: -column '${change date %Y}' Year 4 If you wanted to list the developer and the reviewer against the lines of the file (commonly called a "blame" listing) use this column speci- fication: -column '${change developer}' Develop. 8 -column '${change reviewer}' Reviewer 8 If you wanted to see the change cause of each line, use this column specification: -column '$version' Version 9 -column '${change cause}' Cause 20 All of the _a_e_s_u_b(5) substitutions are available, however only the _$_{_c_h_a_n_g_e _._._._} variants are particularly useful. To see only content changes, and ignore changes in indentation (assum- ing you are using GNU diff), use this command: aeannotate -diff-opt -b _f_i_l_e_n_a_m_e CCOOPPYYRRIIGGHHTT aeannotate version 4.25.D611 Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Peter Miller The aeannotate program comes with ABSOLUTELY NO WARRANTY; for details use the '_a_e_a_n_n_o_t_a_t_e _-_V_E_R_S_i_o_n _L_i_c_e_n_s_e' command. This is free software and you are welcome to redistribute it under certain conditions; for details use the '_a_e_a_n_n_o_t_a_t_e _-_V_E_R_S_i_o_n _L_i_c_e_n_s_e' command. AAUUTTHHOORR Peter Miller E-Mail: pmiller@opensource.org.au /\/\* WWW: http://miller.emu.id.au/pmiller/ Reference Manual Aegis aeannotate(1)