update author list in license for (JAL-826)
[jalview.git] / utils / jalopy / docs / environment.html
1
2 <!--
3  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
4  * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
5  * 
6  * This file is part of Jalview.
7  * 
8  * Jalview is free software: you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License 
10  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
11  * 
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
18 -->
19     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
20   <html><head>
21       <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
22    <title>4.3.8.&nbsp;Environment</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="imports.html" title="4.3.7.&nbsp;Imports"><link rel="next" href="javadoc.html" title="4.3.9.&nbsp;Javadoc"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="environment.html#environment-user" title="4.3.8.1.&nbsp;User environment variables"><link rel="subsection" href="environment.html#environment-system" title="4.3.8.2.&nbsp;System environment variables"><link rel="subsection" href="environment.html#environment-local" title="4.3.8.3.&nbsp;Local environment variables"><link rel="subsection" href="environment.html#environment-usage" title="4.3.8.4.&nbsp;Usage">
23       <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
24       <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
25     </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
26                     <a href="./download.html" class="navlink">Download</a> &#149;
27                     <a href="./docs.html" class="navlink">Documentation</a> &#149;
28                     <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
29                     <a href="./links.html" class="navlink">Links</a> &#149;
30                     <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
31                     <a href="./history.html" class="navlink2">History</a> |
32                     <a href="./manual.html" class="navlink2">Manual</a> |
33                     <a href="./faq.html" class="navlink2">FAQ</a> |
34                     <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
35                     This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.8.&nbsp;Environment</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="imports.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="javadoc.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="environment"></a>4.3.8.&nbsp;Environment</h3></div></div><div></div></div><a class="indexterm" name="d0e4252"></a><a class="indexterm" name="d0e4257"></a><a class="indexterm" name="d0e4262"></a><a class="indexterm" name="d0e4265"></a><a class="indexterm" name="d0e4268"></a><p>
36 Lets you specify/view environment variables. Environment variables can be used
37 in headers, footers and Javadoc templates to form variable expressions that will
38 be resolved during printing. I call this process <span class="emphasis"><em>variable interpolation</em></span>.
39 </p><p>
40 Environment variables are simple key/value pairs. Valid keys take the form
41 <tt class="literal">([a-zA-Z_][a-zA-Z0-9_.])+</tt> and are case-sensitive. Values can be
42 freely choosen.
43 </p><div class="example"><a name="environment-variable-ex"></a><p class="title"><b>Example&nbsp;4.142.&nbsp;Sample environment variables</b></p><div class="variablelist"><dl><dt></dt><dd>
44 author = &lt;a href="http://jalopy.sf.net/contact.html"&gt;Marco Hunsicker&lt;/a&gt;
45 </dd><dt></dt><dd>
46 project = Jalopy Java Source Code Formatter
47 </dd></dl></div></div><p></p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-user"></a>4.3.8.1.&nbsp;User environment variables</h4></div></div><div></div></div><p>
48 Lets you specify you're user specific environment variables. Use the
49 <span><b class="guibutton">Add...</b></span> and <span><b class="guibutton">Remove</b></span> buttons to
50 add or remove items to and from the list.
51 </p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-system"></a>4.3.8.2.&nbsp;System environment variables</h4></div></div><div></div></div><p>
52 All system environment variables are automatically available as well but
53 cannot be changed from within Jalopy.
54 </p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-local"></a>4.3.8.3.&nbsp;Local environment variables</h4></div></div><div></div></div><p>Additionaly, Jalopy provides some local variables that are automatically set
55 depending on the execution context.</p><p>
56 The current list of valid local variables reads as follows:
57 </p><div class="table"><a name="tab-environment-local"></a><p class="title"><b>Table&nbsp;4.1.&nbsp;Local environment variables</b></p><table summary="Local environment variables" cellspacing="0" cellpadding="3" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr><td style="">file</td><td style="">The absolute path of the currently processed Java file (e.g. <tt class="filename">/usr/projects/test/MyFile.java</tt>)</td></tr><tr><td style="">fileName</td><td style="">The name of the currently processed Java file (e.g. <tt class="filename">MyFile.java</tt>)</td></tr><tr><td style="">fileFormat</td><td style="">A string represention of the file format that will be used to write a file (e.g. UNIX or DOS)</td></tr><tr><td style="">package</td><td style="">The package name of the currently processed Java file (e.g. com.foo.mypackage)</td></tr><tr><td style="">convention</td><td style="">The name of the currently active code convention (as specified in the settings)</td></tr><tr><td style="">tabSize</td><td style="">The current indentation setting (as specified in the settings)</td></tr><tr><td style="">objectType</td><td style="">Only applies to Javadoc templates: Holds the type name of the class for a constructor.</td></tr><tr><td style="">paramType</td><td style="">Only applies to Javadoc templates: Holds the type name of a parameter.</td></tr><tr><td style="">exceptionType</td><td style="">Only applies to Javadoc templates: Holds the type name of a throws clause.</td></tr></tbody></table></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-usage"></a>4.3.8.4.&nbsp;Usage</h4></div></div><div></div></div><p>
58 Once defined, variables can then be enclosed with the dollar sign to form variable expressions.
59 Variable expressions thus take the form <tt class="literal">$([a-zA-Z_][a-zA-Z0-9_.]+)$</tt>.
60 </p><p>
61 During printing these expressions will be interpolated and
62 the value of the variable inserted into the output file.
63 </p><div class="example"><a name="ex-environment-header-before"></a><p class="title"><b>Example&nbsp;4.143.&nbsp;Header template with environment variable expressions</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
64 //==============================================================================
65 // file :       $fileName$
66 // project:     $project$
67 //
68 // last change: date:       $Date$
69 //              by:         $Author$
70 //              revision:   $Revision$
71 //------------------------------------------------------------------------------
72 // copyright:   BSJT Software License (see class documentation)
73 //==============================================================================
74 </pre></td></tr></table></div><p></p><div class="example"><a name="ex-environment-header-after"></a><p class="title"><b>Example&nbsp;4.144.&nbsp;Header after interpolation</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
75 //==============================================================================
76 // file :       Byte.java
77 // project:     bsjt-rt
78 //
79 // last change: date:       $Date$
80 //              by:         $Author$
81 //              revision:   $Revision$
82 //------------------------------------------------------------------------------
83 // copyright:   BSJT Software License (see class documentation)
84 //==============================================================================
85 </pre></td></tr></table></div><p>
86 As you see with the above example, if a variable is not defined, Jalopy won't
87 touch the expression and simply preserve the original content. This way Jalopy
88 works nicely with other source code tools and SCM products.
89 </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="imports.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="javadoc.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.7.&nbsp;Imports&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.9.&nbsp;Javadoc</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
90             Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>