\begindata{text,538010656}
\textdsversion{12}
\template{help}
\define{global
}
\chapter{Dogtags: Automatic substitution of information in templates

}
\section{What dogtags are

}\leftindent{
`Dogtags' are single words delimited by <@ @> characters.  Normally used in 
templates, the dogtags, when detected in a file being read, are removed and 
replaced with the appropriate information.  They are probably of little 
importance to you unless you are creating templates.

}
\section{Where dogtags are used

}\leftindent{
Dogtags only function in source code views (such as ctext, m3text, plmitext, 
hlptext, etc).

}
\section{List of available dogtags

}\leftindent{
The following are the currently available dogtags, and examples of what 
information is substituted when the file is loaded:  (note the ending @> was 
omitted to avoid corrupting the examples with actual information next time 
this help file is edited). (also note that <@log is intentionally recursive).


<@name		myfile

<@NAME		MYFILE

<@filename		myfile.c

<@pathname		/afs/rchland.ibm.com/usr3/rskm/myfile.c

<@year		1991

<@date		Fri Sep 20 1991

<@time		16:10:20

<@programmer	Robert Kemmetmueller

<@userid		rskm

<@log		<@log

		Fri Sep 20 1991  16:10:21  by Robert Kemmetmueller

		<reason><version><Brief description and why change was made.>


}\section{Warnings

}\leftindent{
Note that dogtags have no respect for strings, whitespace, language syntax, 
being inside comments, or anything.  This is by design; it is also why such 
obscure delimiters were chosen.


Remember, in the examples shown above, the ending @> was omitted.  To be 
recognized, a dogtag must have both delimiters; they are case-sensitive and 
cannot have any other characters within the delimiters.

}
\section{Future Enhancement Plans

}\leftindent{
Some programmers like to make fancy box comments in fixed width fonts.  To 
facilitate the lining-up of the right margin, a new (optional) syntax could be 
<@name_____ and <@_____name.  The dogtag substitution routine would count the 
number of underscore characters, and when substituting the actual information, 
left- or right-justify that information within the confines of that many 
spaces.

}
\section{Recent changes to dogtags

}\leftindent{
Sept.'91: Added the uppercase <@NAME dogtag.

}
\section{Related tools}  


\leftindent{Move your mouse cursor to one of the following names and click 
your left mouse button to see the help file for:


\leftindent{\helptopic{ez}

\helptopic{srctext}

\helptopic{templates}

\helptopic{hlptext}}}


\begindata{bp,537558784}
\enddata{bp,537558784}
\view{bpv,537558784,483,0,0}
Copyright 1992 Carnegie Mellon University and IBM.  All rights reserved.

\smaller{\smaller{$Disclaimer: This software is part of version 6.1 of the 

Andrew User Interface System and is 

the property of IBM, Carnegie Mellon University, 

and the other copyright holders.  The source 

code of this version is for the sole use of 

the individual named in ./config/allsys.h.  

This source code is not to be redistributed.  

Binary object code compiled or derived from 

these sources is not to be distributed to non-

members.  Members may have additional 

distribution rights granted by prior written 

permission of Carnegie Mellon University.



IBM, CARNEGIE MELLON UNIVERSITY, 

AND THE OTHER COPYRIGHT HOLDERS

 DISCLAIM ALL WARRANTIES WITH 

REGARD TO THIS SOFTWARE, INCLUDING 

ALL IMPLIED WARRANTIES OF MERCHANT-

ABILITY AND FITNESS. IN 

NO EVENT SHALL  IBM, CARNEGIE 

MELLON UNIVERSITY, OR ANY OTHER 

COPYRIGHT HOLDER BE LIABLE FOR 

ANY SPECIAL, INDIRECT OR CONSE-

QUENTIAL DAMAGES OR ANY DAMAGES 

WHATSOEVER RESULTING FROM LOSS OF

USE, DATA OR PROFITS, WHETHER IN AN

ACTION OF CONTRACT, NEGLIGENCE OR

OTHER TORTIOUS ACTION, ARISING OUT 

OF OR IN CONNECTION WITH THE USE OR

PERFORMANCE OF THIS SOFTWARE.

 $

}}\enddata{text,538010656}
