JAL-1503 update version in GPL header
[jalview.git] / help / html / features / groovy.html
index d9aa13f..d4b9f7f 100644 (file)
@@ -1,67 +1,95 @@
-<html>\r
-<!--\r
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6.1)\r
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle\r
- * \r
- * This file is part of Jalview.\r
- * \r
- * Jalview is free software: you can redistribute it and/or\r
- * modify it under the terms of the GNU General Public License \r
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\r
- * \r
- * Jalview is distributed in the hope that it will be useful, but \r
- * WITHOUT ANY WARRANTY; without even the implied warranty \r
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
- * PURPOSE.  See the GNU General Public License for more details.\r
- * \r
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.\r
--->\r
-<head><title>Groovy Shell</title></head>\r
-<body>\r
-<p><strong>The Groovy Shell</strong></p>\r
-<p><a href="http://groovy.codehaus.org/">Groovy</a> is an &quot;<em>agile and dynamic \r
-language for the Java platform</em>&quot;. The groovy scripting language makes it \r
-extremely easy to programmatically interact with Java programs, in much the same \r
-way that Javascript is used to generate and interact with applets and other \r
-objects on the page.</p>\r
-<p><strong><em>Getting Groovy...</em></strong><br>\r
-Jalview Groovy support is only possible if the core groovy \r
-jars which include the GroovyShell are present on the CLASSPATH \r
-when Jalview is started.</p><p>The jars are obtained from the \r
-<em>embedded</em> directory within the <a \r
-href="http://dist.codehaus.org/groovy/distributions">groovy \r
-distribution</a>. The easiest way of adding them to the \r
-Jalview classpath is to download and build jalview from \r
-it's source distribution, and then add the groovy-all-*.jar \r
-to the lib directory whose path is given in the java.ext.dirs property.</p>\r
-<p><strong>Opening Jalview's Groovy Console</strong><br>If groovy is available, then the \r
-<strong>Tools&#8594;Groovy Console...</strong> menu entry will be available \r
-from the Jalview Desktop's drop-down menu. Selecting this will open the\r
-<a href="http://groovy.codehaus.org/Groovy+Console">Groovy Console</a> which \r
-allows you to interactively execute Groovy scripts within the Jalview run-time environment.</p>\r
-<p><strong>Executing groovy scripts on Jalview startup</strong><br>\r
-The -groovy &lt;script&gt; option on the <a href="commandline.html"/>\r
-Jalview command line</a> will execute the contents of \r
-&lt;script&gt;. &lt;script&gt; may be a file, or alternatively if it is &quot;STDIN&quot; \r
-then the standard input will be used.</p>\r
-<p><strong>Access to Jalview's functions from Groovy Scripts</strong><br>\r
-There is as yet no properly defined scripting interface to Jalview, but all the\r
-public methods of the jalview class hierarchy can be called from Groovy scripts. \r
-The access point for this is the <strong>Jalview</strong> object defined in\r
-the groovy environent which corresponds to the <pre>jalview.gui.Desktop</pre> object which\r
-manages all the Jalview windows.</p>  \r
-Here's an example to get you started:<br>\r
-<ul><li>Getting the title, alignment and first sequence from the current alignFrame<br>\r
-<pre>\r
-def alf = Jalview.getAlignframes();\r
-print alf[0].getTitle();\r
-def alignment = alf[0].viewport.alignment;\r
-def seq = alignment.getSequenceAt(0);\r
-</pre>\r
-</li>\r
-</ul>\r
-</p>\r
-\r
-<p>&nbsp;</p>\r
-</body>\r
-</html>\r
+<html>
+<!--
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview 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.
+ *  
+ * Jalview 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 Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+-->
+<head>
+<title>Groovy Shell</title>
+</head>
+<body>
+       <p>
+               <strong>The Groovy Shell</strong>
+       </p>
+       <p>
+               <a href="http://groovy.codehaus.org/">Groovy</a> is an &quot;<em>agile
+                       and dynamic language for the Java platform</em>&quot;. The groovy
+               scripting language makes it extremely easy to programmatically
+               interact with Java programs, in much the same way that Javascript is
+               used to generate and interact with applets and other objects on the
+               page.
+       </p>
+       <p>
+               <strong><em>Getting Groovy...</em>
+               </strong><br> Jalview Groovy support is only possible if the core groovy
+               jars which include the GroovyShell are present on the CLASSPATH when
+               Jalview is started.
+       </p>
+       <p>
+               The jars are obtained from the <em>embedded</em> directory within the
+               <a href="http://dist.codehaus.org/groovy/distributions">groovy
+                       distribution</a>. The easiest way of adding them to the Jalview classpath
+               is to download and build jalview from it's source distribution, and
+               then add the groovy-all-*.jar to the lib directory whose path is given
+               in the java.ext.dirs property.
+       </p>
+       <p>
+               <strong>Opening Jalview's Groovy Console</strong><br>If groovy is
+               available, then the <strong>Tools&#8594;Groovy Console...</strong>
+               menu entry will be available from the Jalview Desktop's drop-down
+               menu. Selecting this will open the <a
+                       href="http://groovy.codehaus.org/Groovy+Console">Groovy Console</a>
+               which allows you to interactively execute Groovy scripts within the
+               Jalview run-time environment.
+       </p>
+       <p>
+               <strong>Executing groovy scripts on Jalview startup</strong><br>
+               The -groovy &lt;script&gt; option on the <a href="commandline.html" />
+               Jalview command line</a> will execute the contents of &lt;script&gt;.
+               &lt;script&gt; may be a file, a URL, or alternatively if it is
+               &quot;STDIN&quot; then the standard input will be used.<br>
+               <em>Note: The groovy script will be executed <strong>after</strong>
+                       any data is loaded, and <strong>before</strong> images or any output
+                       files are written. This allows you to perform customised jalview
+                       analysis workflows with groovy.</em>
+       </p>
+       <p>
+               <strong>Access to Jalview's functions from Groovy Scripts</strong><br>
+               There is as yet no properly defined scripting interface to Jalview,
+               but all the public methods of the jalview class hierarchy can be
+               called from Groovy scripts. The access point for this is the <strong>Jalview</strong>
+               object defined in the groovy environent which corresponds to the
+       <pre>jalview.gui.Desktop</pre>
+       object which manages all the Jalview windows.
+       </p>
+       Here's an example to get you started:
+       <br>
+       <ul>
+               <li>Getting the title, alignment and first sequence from the
+                       current alignFrame<br> <pre>
+def alf = Jalview.getAlignframes();
+print alf[0].getTitle();
+def alignment = alf[0].viewport.alignment;
+def seq = alignment.getSequenceAt(0);
+</pre></li>
+<li>When running a groovy script from the command line, the alignment that was just loaded can be referred to like so:<br><pre>
+print currentAlFrame.getTitle();</pre>
+       </ul>
+       </p>
+
+       <p>&nbsp;</p>
+</body>
+</html>