update author list in license for (JAL-826)
[jalview.git] / utils / jalopy / docs / environment.html
index 62e881d..1451f11 100755 (executable)
@@ -1,7 +1,7 @@
 
 <!--
  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
  * 
  * This file is part of Jalview.
  * 
  * 
  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
 -->
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+  <html><head>
+      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+   <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">
+      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
+      <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))'> 
+    </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;
+                    <a href="./download.html" class="navlink">Download</a> &#149;
+                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
+                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
+                    <a href="./links.html" class="navlink">Links</a> &#149;
+                    <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> |
+                    <a href="./history.html" class="navlink2">History</a> |
+                    <a href="./manual.html" class="navlink2">Manual</a> |
+                    <a href="./faq.html" class="navlink2">FAQ</a> |
+                    <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">
+                    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>
+Lets you specify/view environment variables. Environment variables can be used
+in headers, footers and Javadoc templates to form variable expressions that will
+be resolved during printing. I call this process <span class="emphasis"><em>variable interpolation</em></span>.
+</p><p>
+Environment variables are simple key/value pairs. Valid keys take the form
+<tt class="literal">([a-zA-Z_][a-zA-Z0-9_.])+</tt> and are case-sensitive. Values can be
+freely choosen.
+</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>
+author = &lt;a href="http://jalopy.sf.net/contact.html"&gt;Marco Hunsicker&lt;/a&gt;
+</dd><dt></dt><dd>
+project = Jalopy Java Source Code Formatter
+</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>
+Lets you specify you're user specific environment variables. Use the
+<span><b class="guibutton">Add...</b></span> and <span><b class="guibutton">Remove</b></span> buttons to
+add or remove items to and from the list.
+</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>
+All system environment variables are automatically available as well but
+cannot be changed from within Jalopy.
+</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
+depending on the execution context.</p><p>
+The current list of valid local variables reads as follows:
+</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>
+Once defined, variables can then be enclosed with the dollar sign to form variable expressions.
+Variable expressions thus take the form <tt class="literal">$([a-zA-Z_][a-zA-Z0-9_.]+)$</tt>.
+</p><p>
+During printing these expressions will be interpolated and
+the value of the variable inserted into the output file.
+</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">
+//==============================================================================
+// file :       $fileName$
+// project:     $project$
+//
+// last change: date:       $Date$
+//              by:         $Author$
+//              revision:   $Revision$
+//------------------------------------------------------------------------------
+// copyright:   BSJT Software License (see class documentation)
+//==============================================================================
+</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">
+//==============================================================================
+// file :       Byte.java
+// project:     bsjt-rt
+//
+// last change: date:       $Date$
+//              by:         $Author$
+//              revision:   $Revision$
+//------------------------------------------------------------------------------
+// copyright:   BSJT Software License (see class documentation)
+//==============================================================================
+</pre></td></tr></table></div><p>
+As you see with the above example, if a variable is not defined, Jalopy won't
+touch the expression and simply preserve the original content. This way Jalopy
+works nicely with other source code tools and SCM products.
+</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">
+            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>