From c53aeee9a688f68d64106a968876e542f701fbc6 Mon Sep 17 00:00:00 2001 From: jprocter Date: Fri, 30 Apr 2010 15:11:37 +0000 Subject: [PATCH] get the html header comment right! --- doc/AddingGroovySupport.html | 42 + doc/building.html | 54 ++ doc/developing.html | 25 +- doc/index.html | 133 ++- doc/newdmobj.html | 20 +- help/html/calculations/consensus.html | 17 + help/html/calculations/conservation.html | 26 + help/html/calculations/pairwise.html | 19 + help/html/calculations/pca.html | 63 ++ help/html/calculations/quality.html | 31 + help/html/calculations/recoverInputdata.html | 12 + help/html/calculations/redundancy.html | 15 + help/html/calculations/sorting.html | 54 ++ help/html/calculations/tree.html | 67 ++ help/html/calculations/treeviewer.html | 92 ++ help/html/colourSchemes/abovePID.html | 7 + help/html/colourSchemes/annotationColouring.html | 28 + help/html/colourSchemes/blosum.html | 7 + help/html/colourSchemes/buried.html | 7 + help/html/colourSchemes/clustal.html | 7 + help/html/colourSchemes/conservation.html | 26 + help/html/colourSchemes/helix.html | 7 + help/html/colourSchemes/hydrophobic.html | 7 + help/html/colourSchemes/index.html | 10 + help/html/colourSchemes/nucleotide.html | 7 + help/html/colourSchemes/pid.html | 7 + help/html/colourSchemes/strand.html | 7 + help/html/colourSchemes/taylor.html | 7 + help/html/colourSchemes/textcolour.html | 19 + help/html/colourSchemes/turn.html | 7 + help/html/colourSchemes/user.html | 21 + help/html/colourSchemes/zappo.html | 7 + help/html/editing/index.html | 55 ++ help/html/features/annotation.html | 90 ++ help/html/features/annotationsFormat.html | 160 ++++ help/html/features/clarguments.html | 176 ++++ help/html/features/codingfeatures.html | 17 +- help/html/features/commandline.html | 34 + help/html/features/creatinFeatures.html | 37 + help/html/features/cursorMode.html | 54 ++ help/html/features/dasfeatures.html | 44 + help/html/features/dassettings.html | 36 + help/html/features/editingFeatures.html | 25 + help/html/features/featuresFormat.html | 124 +++ help/html/features/featureschemes.html | 55 ++ help/html/features/featuresettings.html | 59 ++ help/html/features/groovy.html | 51 +- help/html/features/hiddenRegions.html | 80 ++ help/html/features/jalarchive.html | 20 + help/html/features/jmol.html | 151 ++- help/html/features/multipleViews.html | 58 ++ help/html/features/newkeystrokes.html | 32 + help/html/features/overview.html | 11 + help/html/features/pdbviewer.html | 142 +++ help/html/features/preferences.html | 146 +++ help/html/features/search.html | 7 + help/html/features/seqfeatures.html | 63 ++ help/html/features/seqfetch.html | 33 + help/html/features/seqmappings.html | 23 +- help/html/features/viewingpdbs.html | 50 + help/html/features/wrap.html | 317 +++++++ help/html/index.html | 18 + help/html/io/export.html | 39 + help/html/io/fileformats.html | 8 + help/html/io/index.html | 56 ++ help/html/io/modellerpir.html | 44 + help/html/jalviewjnlp.html | 59 ++ help/html/keys.html | 246 +++++ help/html/memory.html | 100 ++ help/html/menus/alignmentMenu.html | 486 ++++++++++ help/html/menus/alwannotations.html | 69 ++ help/html/menus/alwcalculate.html | 63 ++ help/html/menus/alwcolour.html | 43 + help/html/menus/alwedit.html | 83 ++ help/html/menus/alwfile.html | 93 ++ help/html/menus/alwformat.html | 61 ++ help/html/menus/alwselect.html | 30 + help/html/menus/alwview.html | 73 ++ help/html/menus/desktopMenu.html | 106 +++ help/html/menus/index.html | 21 + help/html/menus/popupMenu.html | 147 +++ help/html/menus/wsmenu.html | 63 ++ help/html/misc/aaproperties.html | 30 + help/html/misc/aminoAcids.html | 8 + help/html/misc/geneticCode.html | 7 + help/html/privacy.html | 58 ++ help/html/vamsas/index.html | 118 +++ help/html/webServices/clustalw.html | 27 + help/html/webServices/dbreffetcher.html | 61 +- help/html/webServices/index.html | 82 ++ help/html/webServices/jnet.html | 94 ++ help/html/webServices/mafft.html | 17 + help/html/webServices/msaclient.html | 37 + help/html/webServices/muscle.html | 13 + help/html/webServices/urllinks.html | 71 ++ utils/jalopy/docs/acknowledge.html | 48 + utils/jalopy/docs/bi01.html | 20 + utils/jalopy/docs/build.html | 123 +++ utils/jalopy/docs/comments.html | 116 +++ utils/jalopy/docs/contact.html | 32 + utils/jalopy/docs/contributors.html | 30 + utils/jalopy/docs/dedication.html | 21 + utils/jalopy/docs/dependencies.html | 26 + utils/jalopy/docs/docs.html | 29 + utils/jalopy/docs/download.html | 30 + utils/jalopy/docs/environment.html | 72 ++ utils/jalopy/docs/faq.html | 88 ++ utils/jalopy/docs/features.html | 88 ++ utils/jalopy/docs/footer.html | 23 + utils/jalopy/docs/header.html | 97 ++ utils/jalopy/docs/history.html | 1001 ++++++++++++++++++++ utils/jalopy/docs/imports.html | 120 +++ utils/jalopy/docs/indentation.html | 427 +++++++++ utils/jalopy/docs/index.html | 52 + utils/jalopy/docs/inspector-naming.html | 54 ++ utils/jalopy/docs/inspector.html | 169 ++++ utils/jalopy/docs/installation.html | 32 + utils/jalopy/docs/introduction.html | 37 + utils/jalopy/docs/ix01.html | 18 + utils/jalopy/docs/javadoc.html | 152 +++ utils/jalopy/docs/license-antlr.html | 46 + utils/jalopy/docs/license-apache.html | 61 ++ utils/jalopy/docs/license-bsd.html | 18 - utils/jalopy/docs/license-common-public.html | 80 ++ utils/jalopy/docs/license-gnu-doc.html | 373 ++++++++ utils/jalopy/docs/license-gnu.html | 155 +++ utils/jalopy/docs/license-sun-public.html | 46 + utils/jalopy/docs/links.html | 26 + utils/jalopy/docs/manual.html | 25 + utils/jalopy/docs/messages.html | 60 ++ utils/jalopy/docs/misc.html | 165 ++++ utils/jalopy/docs/part-core.html | 22 + utils/jalopy/docs/part-plugins.html | 20 + utils/jalopy/docs/plugin-ant-config.html | 26 + utils/jalopy/docs/plugin-ant-license.html | 24 + utils/jalopy/docs/plugin-ant-usage.html | 128 +++ utils/jalopy/docs/plugin-ant.html | 65 ++ utils/jalopy/docs/plugin-console-license.html | 25 + utils/jalopy/docs/plugin-console-usage.html | 94 ++ utils/jalopy/docs/plugin-console.html | 56 ++ utils/jalopy/docs/plugin-eclipse-integration.html | 52 + utils/jalopy/docs/plugin-eclipse-license.html | 25 + utils/jalopy/docs/plugin-eclipse.html | 48 + utils/jalopy/docs/plugin-jbuilder-integration.html | 48 + utils/jalopy/docs/plugin-jbuilder-license.html | 24 + utils/jalopy/docs/plugin-jbuilder.html | 49 + utils/jalopy/docs/plugin-jdev-integration.html | 53 ++ utils/jalopy/docs/plugin-jdev-license.html | 24 + utils/jalopy/docs/plugin-jdev.html | 48 + utils/jalopy/docs/plugin-jedit-integration.html | 39 + utils/jalopy/docs/plugin-jedit-license.html | 25 + utils/jalopy/docs/plugin-jedit.html | 53 ++ utils/jalopy/docs/plugin-netbeans-integration.html | 45 + utils/jalopy/docs/plugin-netbeans-license.html | 25 + utils/jalopy/docs/plugin-netbeans.html | 58 ++ utils/jalopy/docs/plugins.html | 22 + utils/jalopy/docs/printer.html | 199 ++++ utils/jalopy/docs/project.html | 39 + utils/jalopy/docs/separation.html | 285 ++++++ utils/jalopy/docs/settings.html | 72 ++ utils/jalopy/docs/sorting.html | 75 ++ utils/jalopy/docs/usage.html | 20 + utils/jalopy/docs/whitespace.html | 224 +++++ utils/jalopy/docs/wrapping.html | 585 ++++++++++++ utils/jalopy/readme.html | 52 + 165 files changed, 12122 insertions(+), 26 deletions(-) diff --git a/doc/AddingGroovySupport.html b/doc/AddingGroovySupport.html index e18e273..275ddb0 100644 --- a/doc/AddingGroovySupport.html +++ b/doc/AddingGroovySupport.html @@ -16,3 +16,45 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Adding Groovy Support to Jalview + + +

+Adding Groovy Support to Jalview +

+

+There is currently no scripting language +extension within Jalview, in part because a +scripting API has not yet been developed. +

+

It is, however, really easy to embed scripting +engines like groovy. If groovy is detected on the +classpath, a new menu entry on the Desktop's Tools +menu will open the GroovyShell. +

+

Here are some scripts to get you started:

+ +

Getting Groovy...

+

+You need the core groovy jars which include the GroovyShell. The easiest way of doing +this is to add the groovy-all-*.jar to the lib directory whose path is given in the java.ext.dirs property.

+

The is obtained from the embedded directory within the groovy distribution). +

+

TODO

+

+Using Java class methods from Groovy is straightforward, but currently, there isn't a set of easy to use methods for the jalview objects. A Jalview Scripting API needs to be developed to make this easier.

+

Making it easier

+

jalview.bin.JalviewScript could be a top level jalview instance of a script execution thread, creating and maintaining the context for scripts operating on the jalview datamodel and interfacing with the Jalview GUI. +

+ + + diff --git a/doc/building.html b/doc/building.html index e18e273..455251f 100755 --- a/doc/building.html +++ b/doc/building.html @@ -16,3 +16,57 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Building Jalview from Source + + +

Building Jalview from Source

+

+

+You will need the following (hopefully):
+

    +
  • Java development kit (we used JDK1.4SE but JDK1.5 will work too, +and maybe even jikes). +
  • Ant (we think 1.5.4 is quite sufficient to use the simple build +file supplied). +
+With any luck, after setting your paths and JAVA_HOME correctly, you +just need to change to the Jalview directory and run ant (this works +from JBuilder and eclipse too). +
+   ant
+
+ +

+

Building a webstart version of jalview

+Jalview depends on several libraries contained in the libs directory +of the distribution. In order to access them, they must all be signed +jars - using the same jarsigner key as jalview itself. There is a +build target in ant to make the signed jar files in a directory called +dist. But first you need to make your own key: +

Making your own key

+ +

The ant 'makefulldist' target assumes that a keystore exists in a +directory 'keys'. To make a key accessible using the default settings +in the build.xml file then make the keys directory and add the +jarsigner key with the following : +

+
+mkdir keys
+keytool -genkey -keystore keys/.keystore -keypass alignmentisfun
+-storepass alignmentisfun -alias jalview
+ (you will have to answer some personal questions here)
+ant makedist
+ (should eventually generate a Jalview.jnlp file
+  in ./dist along with a set of signed jars using the jalview
+  key)
+
+ +

+ +

+

+Jalview development team +
+ + diff --git a/doc/developing.html b/doc/developing.html index 422b99a..4008a98 100644 --- a/doc/developing.html +++ b/doc/developing.html @@ -15,4 +15,27 @@ * 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 . ---> +--> + + Developing Jalview + +

Developing Jalview

+

+
    +
  • Basic Source Structure Guidelines
  • +
  • The Applet and The Application - whats the difference ?
  • +
  • Package Architecture
    +
  • +
  • Specific Development Guidelines +
      +
    • Adding new datamodel objects to Jalview
    • +
    • Adding new IO capabilities to Jalview
    • +
    • Adding new database types to Jalview
    • +
    • Working with the Jalview DAS annotation fetcher
    • +
    • Adding new analysis methods to jalview
    • +
    • Adding new web service functionality to jalview
    • +
    +
  • +
+ + diff --git a/doc/index.html b/doc/index.html index 422b99a..c1e3718 100644 --- a/doc/index.html +++ b/doc/index.html @@ -15,4 +15,135 @@ * 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 . ---> +--> + + +Jalview Source Documentation + + +

Jalview Source Documentation

+

The file structure of the Jalview Source tree is as follows: +

    +
  • README - basic info for getting started with the source tree.
  • +
  • LICENCE - the GPL Licence
  • +
  • RELEASE - contains the name of the tag for the latest + 'official' Jalview release associated with the source.
  • +
  • build.xml - ant build for jalview - the 'help' task gives + information about each task, and there's lots of comments too.
  • +
  • +
  • src - all jalview source packages, including any specially + adapted code from other GPL programs. See Jalvew + Development for more info.
  • +
  • lib - All the libraries that Jalview depends on. Every jar + file in this directory should be added to the classpath when building + or running the jalview application.
  • +
  • help - the jalview JavaHelp documents
    +
      +
    • help.hs - the main index page. This is generated by the + jhindexer program run by the 'buildindices' task in build.xml
    • +
    • help.jhm - helpTOC map - an XML document listing simple names + for each html page that is linked to in the help contents structure.
    • +
    • helpTOC.xml - the table of contents presented to the user + when the help is opened.
    • +
    • icons - widgets needed for the help system GUI
    • +
    • html - the help documentation. It loosely follows the + following structure:
      +
        +
      • calculations - pages concerning the calculations menu
      • +
      • webServices - pages describing web services
      • +
      • colourSchemes - the ways amino acids can be coloured and the + user interface for defining them
      • +
      • editing - mechanisms and interfaces for editing alignments
      • +
      • features - used to be the sequence features documentation, + but now contains all sorts of jalview 'features'.
      • +
      • io - getting data in and out of jalview
      • +
      • menus - all the menus in Jalview (and the applet)
      • +
      • misc - useful info
      • +
      • By convention, we try to maintain the whatsNew.html document + with each release and complete the releases.html matrix to detail + what has changed from one version to another.
      • +
      • keys.html contains all the keystrokes in Jalview - please + keep this up to date.
      • +
      +
    • +
    +
  • +
  • resources - files needed at run-time for jalview execution.
    +
      +
    • images - icons used by jalview
    • +
    • log4j and commons-logging.properties - configure default + appenders and logging for Jalview, castor.
    • +
    • embl_mapping.xml - castor mapping file for the EMBL XML + Schema.
    • + . +
    • uniprot_mapping.xml - castor mapping file for the Uniprot XML + Schema.
    • +
    +
  • +
  • schemas - XML schema definitions used or understood by + Jalview.
    + Jalview uses castor to bind java to XML - either using mapping files + hand-crafted from a schema in this directory, or from java objects + generated from the schema and an associated set of properties.
    + See the castorbinding task in the ant build.xml file for more info. +
      +
    • Jalview Project Archive XML Version 1
      + vamsasJvV1.xsd
      + jalviewJvV1.xsd
      + jalview.nodesc.properties - sourcegenerator properties file
    • +
    • jalview Project Archive XML Version 2
      + Jalview works out which version a project is by first trying + to parse XML with these schema definitions, and then if there are + problems, falls back to the V1 schema classes. +
        +
      • vamsas.xsd
        + jalview.xsd
        + jalview.properties - sourcegenerator properties file
      • +
    • +
    • JalviewUserColours.xsd is used by both V1 and V2 project XML + definitions. This schema is also used to store user colour schemes + externally from the project file.
    • +
    +
  • +
  • utils - various resources needed when building or deploying + jalview. +
      +
    • InstallAnywhere +
        +
      • Jalview.iap_xml is the InstallAnywhere XML project used to + create the Jalview InstallAnywhere distribution.
      • +
      • All the other files are bundled into this for installer + displays. The README_IA appears in the installation directory.
      • +
      +
    • jalopy
      + This is a legacy directory - we intended to use jalopy for + standardising the jalview source formatting, but found it had a number + of bugs.
    • +
    • axis-ant.jar - tasks for constructing client skeletons from + WSDL documents.
    • +
    • roxes-ant-tasks-1.2-2004-01-30.jar - conditionals and other + useful ant tasks.
    • +
    • castor-*-codegen.jar and castor-*-anttask.jar - codegenerator + task and library for regenerating the Java classes from schemas. It is + important to update these and rebuild the source if the version of + castor that Jalview uses is updated.
    • +
    • gff2annot.pl - useful script to translate gff to jalview + features file format - although its not needed since Jalview can parse + GFF natively (normally at least).
    • +
    • jhall.jar, jhindexer.jar - the java help system and indexer + code to build the jalview help in the help directory.
    • +
    • proguard.jar - obfuscator used when creating + jalviewApplet.jar. See the build.xml file and the building jalview + documentation.
    • +
    +
  • +
  • dist - where the Jars and JNLP file for the java webstart distribution is generated.
  • +
  • installAnywhere - where the installAnywhere build is generated
  • +
  • keys - you might not have this - see building for info on how to create it.
  • +
+ + + + + diff --git a/doc/newdmobj.html b/doc/newdmobj.html index 66edaf9..9c17f9c 100644 --- a/doc/newdmobj.html +++ b/doc/newdmobj.html @@ -15,4 +15,22 @@ * 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 . ---> +--> + +Adding New Datamodel Objects To Jalview + + +

Adding New Datamodel Objects To Jalview

+

There are some basic requirements for all Jalview datamodel objects. None of them are mandatory, but each one makes it easier to integrate a new datamodel object into Jalview.

+

The primary requirement of classes within jalview.datamodel is that all class implementations must be byte-code compatible with a java 1.1 runtime environment. This is an imposition from the Jalview applet, which is dependent on the core jalview.datamodel package. It is possible to include dependencies to objects which are not available to the JRE1.1 environment, providing you ensure that a test is made at run-time to decide if these dependencies are followed within any particular method. But generally, it is best to stick to 1.1 coding style - that is no generics, no fancy Iterators or use of specific JRE object methods and interfaces introduced after 1.1 (such as the get method for java.util.Vector).

+

Steps for integrating a new class into the datamodel

+
  1. Implement in Java 1.1 compatible source.
  2. +
  3. Implement copy constructors for the benefit of any datamodel classes that reference it: +
      +
    • If it is referenced by AlignmentI or SequenceI
      +The jalview cut and paste mechanism relies on copy constructors and a 'pseudo-copy constructor' method to make new versions of datamodel objects which correctly inherit references to a subset of attributes referenced by the original objects, and otherwise contain complete duplicates of data (sequence characters, annotation and sequence features) local to that object. +
    • +
  4. +
  5. + + diff --git a/help/html/calculations/consensus.html b/help/html/calculations/consensus.html index e18e273..dfb568e 100644 --- a/help/html/calculations/consensus.html +++ b/help/html/calculations/consensus.html @@ -16,3 +16,20 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Alignment Consensus Annotation + +

    Alignment Consensus Annotation

    +

    The consensus displayed below the alignment is the percentage of the modal + residue per column. By default this calculation takes includes gaps in column. + You can choose to ignore gaps in the calculation by right clicking on the label + "Consensus" to the left of the consensus bar chart. +

    If the modal value is shared by more than 1 residue, a "+" symbol + is used in the display for the simple reason that it is not possible to display + multiple characters in a single character space. +

    Copying the consensus sequence

    +

    Select the "Copy Consensus Sequence" entry from +the consensus annotation label to copy the alignment's consensus sequence to the +clipboard. +

    + + diff --git a/help/html/calculations/conservation.html b/help/html/calculations/conservation.html index e18e273..904c323 100755 --- a/help/html/calculations/conservation.html +++ b/help/html/calculations/conservation.html @@ -16,3 +16,29 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Alignment Conservation Annotation +

    Alignment Conservation Annotation

    +

    This is an automatically calculated quantitative alignment +annotation which measures the number of conserved physico-chemical +properties conserved for each column of the alignment. Its calculation +is based on the one used in + the AMAS method of multiple sequence alignment analysis :
    +

      Livingstone + C.D. and Barton G.J. (1993), Protein Sequence Alignments: A Strategy + for the Hierarchical Analysis of Residue Conservation.CABIOS Vol. 9 + No. 6 (745-756)). +
    +

    +

    Conservation is measured as a numerical index reflecting the conservation of + physico-chemical + properties in the alignment: Identities score highest, and the next most + conserved group contain substitutions to amino acids lying in the same physico-chemical + class.

    + +

    Colouring an alignment by conservation
    +Conservation scores can be used to colour an alignment. This is +explained further in the help page for conservation colouring. +

    + + diff --git a/help/html/calculations/pairwise.html b/help/html/calculations/pairwise.html index e18e273..1b7aaf5 100755 --- a/help/html/calculations/pairwise.html +++ b/help/html/calculations/pairwise.html @@ -16,3 +16,22 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Pairwise Alignment + +

    Pairwise alignment (Proteins only)

    +

    This calculation is performed on the selected sequences only. Java is not the + fastest language in the world and aligning more than a handful of sequences + will take a fair amount of time.
    + For each pair of sequences the best global alignment is found using BLOSUM62 + as the scoring matrix. The scores reported are the raw scores. The sequences + are aligned using a dynamic programming technique and using the following gap + penalties :

    +

    Gap open : 12
    + Gap extend : 2

    +

    When you select the pairwise alignment option a new window will come up which + will display the alignments in a text format as they are calculated. Also displayed + is information about the alignment such as alignment score, length and percentage + identity between the sequences.

    +

     

    + + diff --git a/help/html/calculations/pca.html b/help/html/calculations/pca.html index e18e273..d9b4b45 100755 --- a/help/html/calculations/pca.html +++ b/help/html/calculations/pca.html @@ -16,3 +16,66 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Principal Component Analysis + + +

    Principal Component Analysis

    +

    This calculation creates a spatial representation of the +similarities within a selected group, or all of the sequences in an +alignment. After the calculation finishes, a 3D viewer displays the set +of sequences as points in 'similarity space', and similar sequences tend +to lie near each other in the space.

    +

    Note: The calculation is computationally expensive, and may fail +for very large sets of sequences - usually because the JVM has run out +of memory. A future release of Jalview will be able to avoid this by +executing the calculation via a web service.

    +

    Principal components analysis is a technique for examining the +structure of complex data sets. The components are a set of dimensions +formed from the measured values in the data set, and the principle +component is the one with the greatest magnitude, or length. The sets of +measurements that differ the most should lie at either end of this +principle axis, and the other axes correspond to less extreme patterns +of variation in the data set.

    + +

    In this case, the components are generated by an eigenvector +decomposition of the matrix formed from the sum of BLOSUM scores at each +aligned position between each pair of sequences. The matrix is not +symmetric - elements in the upper diagonal give the sum of scores for +mutating in one direction, and the lower diagonal is the sum of scores +for mutating in the other. This is a refinement of the method described +in the paper by G. Casari, C. Sander and A. Valencia. Structural Biology +volume 2, no. 2, February 1995 (pubmed) +and implemented at the SeqSpace server at the EBI.

    + +

    The PCA Viewer

    +

    This is an interactive display of the sequences positioned within +the similarity space, as points in a rotateable 3D scatterplot. The +colour of each sequence point is the same as the sequence group colours, +white if no colour has been defined for the sequence, and green if the +sequence is part of a the currently selected group.

    +

    The 3d view can be rotated by dragging the mouse with the left +mouse button pressed. The view can also be zoomed in and out with the up +and down arrow keys (and the roll bar of the mouse if +present). Labels will be shown for each sequence if the entry in the +View menu is checked, and the plot background colour changed from the +View→Background Colour.. dialog box. The File menu allows the view +to be saved (File→Save submenu) as an EPS or PNG +image or printed, and the original alignment data and matrix resulting +from its PCA analysis to be retrieved.

    +

    A tool tip gives the sequence ID corresponding to a point in the +space, and clicking a point toggles the selection of the corresponding +sequence in the associated alignment window views. Rectangular region +based selection is also possible, by holding the 'S' key whilst +left-clicking and dragging the mouse over the display. By default, +points are only associated with the alignment view from which the PCA +was calculated, but this may be changed via the View→Associate +Nodes sub-menu.

    +

    Initially, the display shows the first three components of the +similarity space, but any eigenvector can be used by changing the +selected dimension for the x, y, or z axis through each ones menu +located below the 3d display.

    +

    + + diff --git a/help/html/calculations/quality.html b/help/html/calculations/quality.html index e18e273..28841b2 100755 --- a/help/html/calculations/quality.html +++ b/help/html/calculations/quality.html @@ -16,3 +16,34 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Alignment Quality Annotation + +

    Alignment Quality Annotation

    +

    Alignment Quality is one of the automatically calculated +quantitative alignment +annotations displayed below the columns of a multiple sequence +alignment (and can be used to shade the alignment). It is an ad-hoc +measure of the likelihood of observing the mutations (if any) in a +particular column of the alignment.

    +

    +More precisely, the quality score is inversely proportional to the +average cost of all pairs of mutations oberved in a particular column +of the alignment - a high alignment quality score for a column would +suggest that there are no mutations, or most mutations observed are +favourable. +

    + +

    The Algorithm
    +The quality score is calculated for each column in an alignment by +summing, for all mutations, the ratio of the two BLOSUM 62 scores for +a mutation pair and each residue's conservered BLOSUM62 score (which +is higher). This valueis normalised for each column, and then plotted +on a scale from 0 to 1. +

    +

    +Multiple alignment algorithms using the BLOSUM 62 substition matrices +should, in theory, maximise alignment quality for an un-gapped +alignment, and locally maximise quality for gapped alignments. +

    + + diff --git a/help/html/calculations/recoverInputdata.html b/help/html/calculations/recoverInputdata.html index e18e273..71ecd09 100644 --- a/help/html/calculations/recoverInputdata.html +++ b/help/html/calculations/recoverInputdata.html @@ -16,3 +16,15 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Viewing Input Data to PCA and Tree calculations + + +

    Viewing Input Data to PCA and Tree calculations

    +

    It is always possible to retrieve the input data used to calculate + a tree or PCA plot by using the analysis window's + "File + -> Input Data..." menu item. The Input Data will be + shown in a new alignment window, with any hidden columns + preserved.

    + + diff --git a/help/html/calculations/redundancy.html b/help/html/calculations/redundancy.html index e18e273..1c39419 100755 --- a/help/html/calculations/redundancy.html +++ b/help/html/calculations/redundancy.html @@ -16,3 +16,18 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Removing Redundancy + + +

    Removing redundancy

    +

    Selecting the option in the Alignment window's Edit +menu or pressing 'CONTROL+D' brings up a dialog box +asking you to select a threshold. If the percentage identity between the +aligned positions of any two sequences in the visible alignment exceeds +this value, the shorter sequence is discarded.
    Note: The redundancy +calculation is done when the dialog box is opened. For large numbers +of sequences this can take a long time as all pairs have to be compared. +

    + + diff --git a/help/html/calculations/sorting.html b/help/html/calculations/sorting.html index e18e273..d11976f 100755 --- a/help/html/calculations/sorting.html +++ b/help/html/calculations/sorting.html @@ -16,3 +16,57 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Sorting Sequences + + +

    Sorting Sequences

    +

    Any group of selected sequences may be reordered by pressing the +up or down arrow keys. The whole alignment may also be reordered by +the use of the functions in the Sort menu (Calculate→Sort): +

    +
      +
    • Sort by ID

      +

      Orders the sequences by the alphanumeric (0-9A-Za-z) +precedence of their names.

      +

    • +
    • Sort by Group

      +

      Places sequences in the same group adjacent to each other.

      +

    • +
    • Sort by Pairwise Identity

      +

      Places pairs of sequences together that align with the greatest +fraction of conserved residues. +

      +

    • +
    • Sort by Tree Order

      +

      The leaf ordering of a particular phylogenetic tree is used to +order the sequences corresponding to those leaves in the +alignment.
      +If a tree has been calculated from or associated with the current +alignment, its name will appear in the submenu Sort→By Tree Order.

      +

    • +
    • Sort by alignment ordering

      +

      Multiple alignment methods often order the sequences in their +alignments by some measure of sequence identity.
      +If the current alignment has been generated by one of Jalview's +alignment web services, the alignment ordering can be recovered by +its corresponding entry in the Sort menu. +

      +
    • +
    • Sort by Score

      +

      This menu appears if the alignment contains any sequence associated +alignment annotation with associated score values. Each entry is the +label for a distinct group of sequence associated annotation +scores which can be used for sorting.

      +
    +

    Reversing the Order

    +

    Selecting any item from the Sort menu will sort sequences in an +ascending order according to the property defining the sort. If the +same sort is re-applied, the sequences will be sorted in the inverse +order. In the case of trees and alignment orderings, Jalview will +remember your last choice for sorting the alignment and only apply the +inverse ordering if you select the same tree or alignment ordering +item again.

    + + + diff --git a/help/html/calculations/tree.html b/help/html/calculations/tree.html index e18e273..e2629bc 100755 --- a/help/html/calculations/tree.html +++ b/help/html/calculations/tree.html @@ -16,3 +16,70 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Tree Calculation + +

    Calculation of trees from alignments

    +

    Trees are calculated on either the complete alignment, or just the +currently selected group of sequences, using the functions in the +Calculate→Calculate tree submenu. +Once calculated, trees are displayed in a new tree viewing window. There are +four different calculations, using one of two distance measures and +constructing the tree from one of two algorithms : +

    +

    Distance Measures

    +

    Trees are calculated on the basis of a measure of similarity +between each pair of sequences in the alignment : +

      +
    • PID
      The percentage identity between the two +sequences at each aligned position.
      • PID = Number of equivalent +aligned non-gap symbols * 100 / Smallest number of non-gap positions +in either of both sequences
        This is essentially the 'number of +identical bases (or residues) per 100 base pairs (or residues)'.
      +
    • BLOSUM62
      The sum of BLOSUM62 scores for the +residue pair at each aligned position. +
    +

    +

    Tree Construction Methods

    +

    Jalview currently supports two kinds of agglomerative clustering +methods. These are not intended to substitute for rigorous +phylogenetic tree construction, and may fail on very large alignments. +

      +
    • UPGMA tree
      + UPGMA stands for Unweighted Pair-Group Method using Arithmetic + averages. Clusters are iteratively formed and extended by finding a + non-member sequence with the lowest average dissimilarity over the + cluster members. +

      +
    • +
    • Neighbour Joining tree
      + First described in 1987 by Saitou and Nei, this method applies a + greedy algorithm to find the tree with the shortest branch + lengths.
      + This method, as implemented in Jalview, is considerably more + expensive than UPGMA. +
    • +
    +

    +

    A newly calculated tree will be displayed in a new tree viewing window. In +addition, a new entry with the same tree viewer window name will be added in the Sort +menu so that the alignment can be reordered to reflect the ordering of +the leafs of the tree. If the tree was calculated on a selected region +of the alignment, then the title of the tree view will reflect this.

    + +

    External Sources for Phylogenetic Trees

    +

    A number of programs exist for the reliable construction of + phylogenetic trees, which can cope with large numbers of sequences, + use better distance methods and can perform bootstrapping. Jalview + can read Newick + format tree files using the 'Load Associated Tree' entry of the + alignment's File menu. Sequences in the alignment will be + automatically associated to nodes in the tree, by matching Sequence + IDs to the tree's leaf names. +

    + + + + diff --git a/help/html/calculations/treeviewer.html b/help/html/calculations/treeviewer.html index e18e273..b0cbb46 100755 --- a/help/html/calculations/treeviewer.html +++ b/help/html/calculations/treeviewer.html @@ -16,3 +16,95 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +The Tree Viewing Window + + +

    The Tree Viewing Window

    +

    + The tree viewing window is opened when a tree has been calculated + from an alignment, or imported via a file or web service. It includes menus for + controlling layout and file and figure creation, and enables + various selection and colouring operations on the + associated sequences in the alignment.

    +

    +Selecting Sequence Leaf Nodes
    + Selecting sequence ids at the leaves of the tree selects the + corresponding sequences in the original alignment. These selections + are also reflected in any other analysis windows associated with the + alignment, such as another tree viewer.

    +

    Grouping sequences by partitioning the tree at a particular distanec
    + Clicking anywhere along the extent of the tree (but not on a leaf or + internal node) defines a tree 'partition', by cutting every branch + of the tree spanning the depth where the mouse-click occurred. Groups + are created containing sequences at the leaves of each connected + sub tree. These groups are each given a different colour, which are + reflected in other windows in the same way as if the sequence ids + were selected, and can be edited in the same way as user defined + sequence groups. +

    +

    Tree partitions are useful for comparing clusters produced by +different methods and measures. They are also an effective way of +identifying specific patterns of conservation and mutation +corresponding to the overall phylogenetic structure, when combined +with the conservation +based colour scheme.

    +

    +Selecting Subtrees and changing the branch order and subtree group colour
    +Moving the mouse over an internal node of the tree will highlight + it. You can then :

      +
    • Click the highlighted node to select all the sequences in that branch. +
    • Double-click the highlighted node to rearrange the tree + diagram by inverting the branch ordering at that + node. +
    • Right-click to open the 'Select Sub-Tree Colour' dialog box, to + pick a new colour for the sub-tree and associated sequences. +
    +

    +

    +File Menu

    +

    This menu allows the displayed tree to be saved as a Newick tree +file (Save→Newick File), printed or exported as an image (PNG) or +Postscript file. Finally, data used to calculate the tree can be +retrieved with the 'Input Data...' entry. +

    +

    View Menu

    +

    When the tree viewer is opened, it displays all the annotation +associated with a tree. Trees calculated by Jalview have branch +lengths, which correspond to the distance measure used to construct +the tree. Tree imported from outside may also contain bootstrap information, +and additional leaves from sequences not present in the associated +alignment. +

    +

    The view menu contains options controlling the way a tree is +rendered and labelled: +

      +
    • Fit to Window

      +The tree layout will be scaled to fit in the display +window. You may need to reduce the font size to minimise the leaf +label overlap when this option is selected. +

    • +
    • Font Size ...n

      +Brings up a dialog box to set the font size for the leaf +names. n is the current font size. +

    • +
    • Show Distances

      +Labels each branch or leaf with its associated branch +length.

    • +
    • Show Bootstrap values

      +Labels each branch or leaf with its associated bootstrap value. +

    • +
    • Mark unlinked leaves

      +Toggles the display of a '*' at the beginning of a leaf label to +indicate that there is no sequence corresponding to that leaf in the +associated alignment. +

    • +
    • Associate Leaves with ...

      +Only visible when there are multiple views of the same +alignment to show and edit which alignment views are associated with +the leaves of the displayed tree. +

      +
    +

    + + diff --git a/help/html/colourSchemes/abovePID.html b/help/html/colourSchemes/abovePID.html index 7c03cfa..ed9c840 100755 --- a/help/html/colourSchemes/abovePID.html +++ b/help/html/colourSchemes/abovePID.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Above PID Colours + diff --git a/help/html/colourSchemes/annotationColouring.html b/help/html/colourSchemes/annotationColouring.html index e18e273..9275a09 100755 --- a/help/html/colourSchemes/annotationColouring.html +++ b/help/html/colourSchemes/annotationColouring.html @@ -16,3 +16,31 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Annotation Colouring + + +

    Annotation Colouring

    +

    Jalview 2.08 allows an alignment to be coloured on a per-column basis based + on any numerical annotation added to that alignment.

    +Select "Colour" ".. + by Annotation" to bring up the Colour by Annotation settings window.
    +
    +
    +
      +
    • Select which annotation to base the colouring scheme on using the top left + selection box.
    • +
    • If the "Use Original Colours" box is selected, the colouring + scheme will use the colouring scheme present on the alignment before the Annotation + Colour Settings window was displayed.
    • +
    • The colour scheme can display a colour gradient from a colour representing + the minimum value in the selected annotation to a colour representing the + maximum value in the selected annotation. Use the "Min Colour" and + "Max Colour" to set the colour gradient range.
    • +
    • Select whether to colour the alignment above or below an adjustable threshold + with the selection box center left of the window.
    • +
    • Change the threshold value with the slider, or enter the exact value in + the text box.
    • +
    +

    + + diff --git a/help/html/colourSchemes/blosum.html b/help/html/colourSchemes/blosum.html index 1f749be..fc840ce 100755 --- a/help/html/colourSchemes/blosum.html +++ b/help/html/colourSchemes/blosum.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Blosum Colour Scheme + diff --git a/help/html/colourSchemes/buried.html b/help/html/colourSchemes/buried.html index f5b2eb4..f3aa716 100755 --- a/help/html/colourSchemes/buried.html +++ b/help/html/colourSchemes/buried.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Buried Colour Scheme + diff --git a/help/html/colourSchemes/clustal.html b/help/html/colourSchemes/clustal.html index d97deca..1635b74 100755 --- a/help/html/colourSchemes/clustal.html +++ b/help/html/colourSchemes/clustal.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Clustal Colour Scheme + diff --git a/help/html/colourSchemes/conservation.html b/help/html/colourSchemes/conservation.html index e18e273..37804bc 100755 --- a/help/html/colourSchemes/conservation.html +++ b/help/html/colourSchemes/conservation.html @@ -16,3 +16,29 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Colouring by Conservation + +

    Colouring by Conservation

    +

    This is an approach to alignment colouring which highlights + regions of an alignment where physicochemical properties are + conserved. It is based on the one used in + the AMAS method of multiple sequence alignment analysis (Livingstone + C.D. and Barton G.J. (1993), Protein Sequence Alignments: A Strategy + for the Hierarchical Analysis of Residue Conservation.CABIOS Vol. 9 + No. 6 (745-756)). See the conservation calculation help page for + a more thorough explanation of the calculation. +

    +

    For an already coloured alignment, the conservation index at each + alignment position is used to modify the shading intensity of the + colour at that position. This means that the most conserved columns + in each group have the most intense colours, and the least conserved + are the palest. The slider controls the contrast between these + extremes.

    +

    Conservation can be calculated over all sequences in an alignment, or just + within specific groups (such as those defined by + phylogenetic tree partitioning). + The option 'apply to all groups' controls whether the contrast + slider value will be applied to the indices for the currently + selected group, or all groups defined over the alignment.

    + + diff --git a/help/html/colourSchemes/helix.html b/help/html/colourSchemes/helix.html index 33fc5dd..fc5be4a 100755 --- a/help/html/colourSchemes/helix.html +++ b/help/html/colourSchemes/helix.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Helix Colour Scheme + diff --git a/help/html/colourSchemes/hydrophobic.html b/help/html/colourSchemes/hydrophobic.html index a09d63b..f4a3af4 100755 --- a/help/html/colourSchemes/hydrophobic.html +++ b/help/html/colourSchemes/hydrophobic.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Hydrophobic Colour Scheme + diff --git a/help/html/colourSchemes/index.html b/help/html/colourSchemes/index.html index 7b0b6a5..f7e2050 100755 --- a/help/html/colourSchemes/index.html +++ b/help/html/colourSchemes/index.html @@ -16,6 +16,16 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Colour Schemes + diff --git a/help/html/colourSchemes/nucleotide.html b/help/html/colourSchemes/nucleotide.html index 1898888..9d68fd5 100755 --- a/help/html/colourSchemes/nucleotide.html +++ b/help/html/colourSchemes/nucleotide.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Nucleotide Colour Scheme + diff --git a/help/html/colourSchemes/pid.html b/help/html/colourSchemes/pid.html index f46b10c..c956c29 100755 --- a/help/html/colourSchemes/pid.html +++ b/help/html/colourSchemes/pid.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Percentage Identity Colour Scheme + diff --git a/help/html/colourSchemes/strand.html b/help/html/colourSchemes/strand.html index 949b9f9..e7a15ed 100755 --- a/help/html/colourSchemes/strand.html +++ b/help/html/colourSchemes/strand.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Strand Colour Scheme + diff --git a/help/html/colourSchemes/taylor.html b/help/html/colourSchemes/taylor.html index 638f202..14a809a 100755 --- a/help/html/colourSchemes/taylor.html +++ b/help/html/colourSchemes/taylor.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Taylor Colour Scheme + diff --git a/help/html/colourSchemes/textcolour.html b/help/html/colourSchemes/textcolour.html index e18e273..054b26c 100644 --- a/help/html/colourSchemes/textcolour.html +++ b/help/html/colourSchemes/textcolour.html @@ -16,3 +16,22 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Background Dependent Text Colour + + +Background Dependent Text Colour +

    The Colour→Text Colour menu entry opens +the "Adjust Foreground Text Colour Threshold" +dialog box, allowing the colour of symbols rendered on dark or light +backgrounds to be set for the current selection or the whole alignment. +

    +

    +

    The dialog box contains a slider, and two colour icons showing +the text colour for dark backgrounds (left hand end of slider), and +light backgrounds (right hand end of slider). Drag the slider to change +the threshold for transitioning between dark and light background +colours, and select either of the colour boxes to open a colour chooser +to select a different text colour.

    + + diff --git a/help/html/colourSchemes/turn.html b/help/html/colourSchemes/turn.html index 0c1900e..8a3d10f 100755 --- a/help/html/colourSchemes/turn.html +++ b/help/html/colourSchemes/turn.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Turn Colour Scheme + diff --git a/help/html/colourSchemes/user.html b/help/html/colourSchemes/user.html index e18e273..066ea17 100755 --- a/help/html/colourSchemes/user.html +++ b/help/html/colourSchemes/user.html @@ -16,3 +16,24 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +User Defined Colours + +

    User Defined Colours

    +

    +

    You may define any number of new colour schemes, each with a unique name.
    +
    + Each of the residues in a new colour scheme may be assigned a new user defined + colour.
    +
    + Click "Apply" or "OK" to set your new colours on the active + alignment window.

    +

    Click "Cancel" to undo your changes if you pressed the "Apply" + button.
    +
    + If you save your colour scheme with a unique name the colour scheme name will + be added to the "Colour" menu on each new alignment window.
    +
    + Any saved colour schemes will be automatically loaded the next time you use + Jalview.

    + + diff --git a/help/html/colourSchemes/zappo.html b/help/html/colourSchemes/zappo.html index c7589c5..3c29caa 100755 --- a/help/html/colourSchemes/zappo.html +++ b/help/html/colourSchemes/zappo.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Zappo Colour Scheme + diff --git a/help/html/editing/index.html b/help/html/editing/index.html index e18e273..eaa5971 100755 --- a/help/html/editing/index.html +++ b/help/html/editing/index.html @@ -16,3 +16,58 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Editing + +

    Editing

    +

    There are two major ways to edit alignments - in 'Normal mode', +gaps are inserted and deleted at the mouse pointer in various ways by +clicking the left mouse button and pressing a combination of either +shift and control (or the apple key on Macs) and dragging the mouse. Pressing +F2 toggles the alternative 'Cursor +mode' keyboard editing facility, where the space bar and delete +keys add and remove gaps at the current editing position. The key +strokes for both these modes are summarised in the keystrokes table.

    +

    Tip: For large alignments, deselect "Calculate -> + Autocalculate Consensus" to prevent the alignment performing lengthy calculations + after every edit.

    +

    Inserting / removing gaps - hold down the + "Shift" key. Click on a residue with the mouse and drag it + to the left or right to insert gaps and remove gaps.
    + If the current selection is a group over all sequences in the + alignment, or a group over some sequences or all columns in the + alignment, then hold down either "Control" + key and drag the residue left or right to edit all sequences in the defined + group at once.

    +

    Copy/paste/cut/delete - any sequences which are in the current selection + box (indicated in red) may be cut and / or copied to a new alignment or deleted. +

    +

    Undo / redo - editing of sequences (insertion/removal of gaps, removal + of sequences, trimming sequences etc) may be undone or redone at any time using + the appropriate menu items from the edit menu. The undo history list only allows + a maximum of 10 actions. +

    Trimming alignment - First select a column by clicking the scale indicator + (above the sequences) The alignment may then be trimmed to the left or right + of this column. If multiple columns are selected, the alignment is trimmed to + the right of the rightmost selected column (or to the left of the leftmost selected + column)

    +

    Remove gapped columns - Removes columns within the alignment which + contain only space characters ("-" or "." or " ")

    +

    Removing gaps - Removes all gaps from the alignment. Gaps are "-" + or "." or " ".

    +

    Set gap character - Switches the gap character between "." + and "-". If the "Render Gaps" option from the "View" + menu is unticked all gaps will appear as blank spaces.

    +

     

    +

    Editing In Selection Areas

    +Editing can be restricted to the current selection area. +This allows the user to "Lock" the alignment either side of the selection +area. Any gap insertions or deletions will only affect the current selection area. +

    +

    In this example, if Sequence IL2RA_MACMU has gaps removed from position 98-104, + the same number of gaps will be inserted at position 116, (between M and L). +

    +

    Locked selection area based editing was introduced in Jalview 2.08

    +

     

    + + diff --git a/help/html/features/annotation.html b/help/html/features/annotation.html index e18e273..95e233b 100755 --- a/help/html/features/annotation.html +++ b/help/html/features/annotation.html @@ -16,3 +16,93 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Alignment Annotation + +

    Alignment Annotation

    + +

    In addition to the definition of groups and sequence features, + Jalview can display symbols and graphs under the columns of an + alignment, and allow you to mark particular columns of an alignment and add symbols and text + in the annotation area shown below the alignment (which may be hidden if View→Show + Annotation is not ticked). Any displayed annotation row can be hidden (using the pop-up + menu obtained by right-clicking the label), or re-ordered by dragging the label to a new + position with the left mouse button.

    +

    Web services can also add annotation to an alignment (see the + JNet web service), and as of Jalview 2.08 quantitative and symbolic + annotations can be added to an alignment via an Annotations + File dragged into the alignment window or loaded from the + alignment's file menu.

    +

    Interactive Alignment Annotation

    +

    +Annotation rows are added using the Annotation Label +menu, which is obtained by clicking anywhere on the annotation row labels +area (below the sequence ID area). +

    +
      +
    • Add New Row
      + Adds a new, named annotation row (a dialog box will pop up for you to + enter the label for the new row).
    • +
    • Hide Row
      + Hides the annotation row whose label was clicked in order to bring up + the menu.
    • +
    • Delete Row
      + Deletes the annotation row whose label was clicked in order to bring up + the menu.
    • +
    • Show All Hidden Rows
      + Shows all hidden annotation rows.
    • +
    • Export Annotation (Application only)
      + Annotations can be saved to file or output to a text window in either the + Jalview annotations format or as a spreadsheet style set of comma separated values (CSV).
    • +
    • Show Values in Text Box (applet only)
      + Opens a text box with a list of comma-separated values corresponding + to the annotation (numerical or otherwise) at each position in the row. + This is useful to export alignment quality measurements for further analysis. +
    • +
    • Scale Label To Column(introduced in 2.5)
      + Selecting this toggles whether column labels will be shrunk to fit within each column, or displayed using the view's standard font size.
    • +
    +

    +Editing Label and secondary structure Annotation

    +

    +Use the left mouse button to select a position along the row that are to +be annotated - these regions will be coloured red. Control and shift in combination +with the left-click will select more than one position, or a range of +positions on the alignment. +

    +

    Once the desired position has been selected, use the right mouse +button to open the annotation menu:

    +
      +
    • Helix
      Mark selected positions with a helix glyph (a red +oval), and optional text label (see below). A +dialog box will open for you to enter the text. Consecutive ovals +will be rendered as an unbroken red line. +
    • +
    • Sheet
      Mark selected positions with a sheet glyph (a green +arrow oriented from left to right), and optional text label (see +below). A dialog box will open for you to enter the text. Consecutive +arrows will be joined together to form a single green arrow. +
    • +
    • Label
      Set the text label at the selected positions. A +dialog box will open for you to enter the text. If +more that one consecutive position is marked with the same label, only +the first position's label will be rendered. +
    • +
    • Colour
      Changes the colour of the annotation text label. +
    • +
    • Remove Annotation
      Blanks any annotation at the selected positions on +the row. Note: This cannot be undone +
    • +
    +

    +User defined annotation is stored and retrieved using Jalview Archives. +

    +

    Current Limitations

    +

    As of version 2.4, the Jalview user interface does not support the +creation and editing quantitative annotation (histograms and line graphs), or +to create annotation associated with a specific sequence. It is also incapable of +annotation grouping or changing the style of existing annotation (to change between line or bar charts, or to make multiple line graphs). These annotation capabilities are only possible by the import of an +Annotation file.
    +

    + + diff --git a/help/html/features/annotationsFormat.html b/help/html/features/annotationsFormat.html index e18e273..7abe66a 100755 --- a/help/html/features/annotationsFormat.html +++ b/help/html/features/annotationsFormat.html @@ -16,3 +16,163 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +The Alignment Annotations File + + + +

    The Alignment Annotations File

    +

    Alignment annotations can be imported onto an alignment since +version 2.08 of Jalview, via an annotations file. It is a simple ASCII +text file consisting of tab delimited records similar to the Sequence Features File, and introduced +primarily for use with the Jalview applet.

    +

    Alignment annotations files are imported into Jalview in the +following ways:
    +

      +
    • from the command line
      + -annotations <Annotations filename>
    • +
    • Dragging an annotations file onto an alignment window
    • +
    • Via the "Load Features / Annotations" entry in the File + menu of an alignment window.
    • +
    +

    +

    Annotations File Format

    +

    The File consists of lines containing an instruction followed by +tab delimited fields, and any lines starting with "#" are +ignored. The first non-commented out line of a valid Annotations file +must begin with :

    JALVIEW_ANNOTATION

    +

    A row of annotation is added with a line like

    GRAPH_TYPE	Label	Values

    +

    The GRAPH_TYPE field, which appears first, defines the +appearance of the annotation row when rendered by Jalview. The next field is the row label for the annotation. The final Values field contains a series of "|" +separated value fields. Each value field is itself a comma separated list of fields of a particular type defined by the annotation row's +GRAPH_TYPE. The allowed values of GRAPH_TYPE and the format of their respective value fields (with the trailing "|" symbol) are shown below:

      +
    • BAR_GRAPH
      + Plots a histogram with labels below each bar.
      + number,text character,Tooltip text
    • +
    • LINE_GRAPH
      + Draws a line between values on the annotation row.
      + number
    • +
    • NO_GRAPH
      + For a row consisting of text labels and/or secondary structure symbols.
      + {Secondary Structure Symbol},text label,Tooltip text
      + Currently supported secondary structure structure symbols are H (for helix) and E (for strand)
    • +
    +Any or all value fields may be left empty, as well as the BAR_GRAPH's +text character field, and either or both of the text-label and secondary +structure symbol fields of the NO_GRAPH type annotation rows.

    +

    Color strings can be embedded in a value field by enclosing an RGB triplet in square brackets to colour that position in an annotation row. +

    +

    You can associate an annotation with a sequence by preceding its +definition with the line: +

    SEQUENCE_REF	seq_name	[startIndex]
    +All Annotations defined after a SEQUENCE_REF command will then be +associated with that sequence, and the first field in the Value field +list will (optionally) be placed at the startIndex'th column.

    +
      New in Jalview 2.4: the tooltip displayed when the mouse is moved over the row +label for sequence associated annotation gives the associated +sequence's name followed by the annotation row's description.
      +New in Jalview 2.5 Desktop: Clicking on a sequence or group associated annotation row's label will highlight the sequence or sequence group in the alignment, and double clicking the annotation row label will select the associated sequence or group.
    +

    Sequence associations are turned off for subsequent annotation +definitions by: +

    SEQUENCE_REF	ALIGNMENT
    +

    +

    Since version 2.5, Jalview allows annotation rows to be associated with a group defined on the alignment, by preceding the annotation row with the line: +

    GROUP_REF	group_name
    +Group association is turned off for subsequent annotation rows by +
    GROUP_REF	ALIGNMENT
    +Annotations may be associated with both a sequence and a group, however - group annotations are still experimental and unexpected behaviour may be observed when editing alignments containing both group and sequence associated annotation rows.

    +

    LINE_GRAPH type annotations can be given a colour +(specified as 24 bit RGB triplet in hexadecimal or comma separated +values), combined onto the same vertical axis, and have ordinate lines +(horizontal lines at a particular vertical axis value) using the +following commands (respectively): +

    COLOUR	graph_name	colour
    +COMBINE	graph_1_name	graph_2_name
    +GRAPHLINE	graph_name	value	label	colour
    +
    +

    (Since Jalview 2.5) ROWPROPERTIES

    +

    The visual display properties for a set of annotation rows can be modified using the following tab-delimited line:

    +
    ROWPROPERTIES	Row label	centrelabs=true( or false)	showalllabs=true(default is false)	scaletofit=true (default is false)
    +

    This sets the visual display properties according to the given values for all the annotation rows with labels matching Row label. The properties mostly affect the display of multi-character column labels, and are as follows: +

    • centrelabs Centre each label on its column.
    • +
    • showalllabs Show every column label rather than only the first of a run of identical labels (setting this to true can have a drastic effect on secondary structure rows).
    • +
    • scaletofit Shrink each label's font size so that the label fits within the column. Useful when annotating an alignment with a specific column numbering system. (Not available in Jalview applet due to AWT 1.1 limitations)
    • +

    +

    (Since Jalview 2.2.1) SEQUENCE_GROUP

    +

    Groups of sequences can be defined using the tab delimited line

    +
    SEQUENCE_GROUP	Group_Name	Group_Start	Group_End	Sequences
    +

    The sequences can be defined by alignment index and a range of sequences can + be defined in a comma delimited field such as

    +

    2-5,8-15,20,22

    +

    Enter * to select all groups.

    +

    If the alignment indices are not known, enter -1 then a tab delimited list + of sequence ids.

    +

    If the SEQUENCE_REF has been defined, the group_start and group_end will be + relative to the sequence residue numbering, otherwise the group_start and group_end + will be the alignment column indices.

    +

    The group can (optionally) be assigned various visualisation properties via + another tab delimited line thus:

    +
    PROPERTIES	Group_name	tab_delimited_key_value_pairs
    +
    +

    The key_value_pairs allow you to define a description and to colour the group + in various ways. All, none or some of the following values could be used for + a group:

    +

    description=Text
    + colour=Helix Propensity
    + pidThreshold=0
    + consThreshold=0
    + outlineColour=red
    + displayBoxes=true
    + displayText=false
    + colourText=false
    + textCol1=black
    + textCol2=black
    + textColThreshold=0
    + idColour=ff3322
    + + showunconserved=false

    +
    • New Features in 2.4:
      if the idColour property +is given without specifying a colour scheme with the colour +property, then the idColour will also be used to colour the sequence.
    • +
    • the colour property can take either a colour scheme name, + or a single colour specification (either a colour name like 'red' or an RGB + triplet like 'ff0066'). If a single colour is specified, then the group + will be coloured with that colour.
    • + +
    • Sequence associated Groups
      If a group is defined after a valid + SEQUENCE_REF sequence reference statement, the sequence representative + for the group will be set to the referenced sequence.
    • +
    +

    +

    An example Annotation file is given below: +

    #Comment lines follow the hash symbol
    +JALVIEW_ANNOTATION
    +SEQUENCE_REF	FER1_MESCR	5
    +BAR_GRAPH	Bar Graph 1	||-100,-|-200,-|-300,-|-400,-|200,+|300,+|150,+
    +LINE_GRAPH	Green Values	1.1|2.2|1.3|3.4|0.7|1.4|3.3|2.2|2.1|-1.1|3.2
    +LINE_GRAPH	Red Values	2.1|3.2|1.3|-1.4|5.5|1.4|1.3|4.2|-1.1|1.1|3.2
    +BAR_GRAPH	Bar Graph	2 1,.|2,*|3,:|4,.|5,*|4,:|3,.|2|1|1|2|3|4|5|4
    +NO_GRAPH	Icons 	||||E,Sheet1|E|E||||H,Sheet 2|H|H|H||||||
    +NO_GRAPH	Purple Letters	m|y|p|r|o|t|e|i|n
    +COLOUR	Bar Graph 2	blue
    +COLOUR	Red Values	255,0,0
    +COLOUR	Green Values	green
    +COLOUR	Purple Letters	151,52,228
    +COMBINE	Green Values	Red Values
    +GRAPHLINE	Red Values	2.6	threshold	black
    +
    +SEQUENCE_GROUP Group_A 30 50 *
    +SEQUENCE_GROUP Group_B 1 351 2-5
    +SEQUENCE_GROUP Group_C 12 14 -1 seq1	seq2	seq3
    +PROPERTIES Group_A description=This is the description colour=Helix Propensity pidThreshold=0 outlineColour=red displayBoxes=true displayText=false	colourText=false textCol1=black textCol2=black textColThreshold=0
    +PROPERTIES Group_B outlineColour=red
    +PROPERTIES Group_C colour=Clustal
    +
    +

    + + diff --git a/help/html/features/clarguments.html b/help/html/features/clarguments.html index e18e273..9bca344 100644 --- a/help/html/features/clarguments.html +++ b/help/html/features/clarguments.html @@ -16,3 +16,179 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Jalview Command Line Arguments + + +

    The Jalview Executable's Command Line + Arguments

    + See running Jalview from the command + line for more information.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    -nodisplay
    Run Jalview without User Interface. (automatically disables questionnaire, version and usage stats checks)
    -props FILE
    Use the given Jalview properties file instead + of users default.
    -features FILE
    +

    Use the given file to add sequence features to an alignment. + See Features + File (Known as Groups file prior to 2.08) description.

    + +
    +
    -annotations FILE
    +
    Add precalculated annotations to the alignment. See Annotation File + description.
    +
    -tree FILE
    +
    +
    Load the given newick format tree file onto + the alignment
    +
    +
    -questionnaire URL
    +
    +
    Queries the given URL for information about + any Jalview user questionnaires
    +
    +
    -noquestionnaire
    +
    +
    Turn off questionnaire check
    +
    +
    -nousagestats
    +
    +
    Turn off google analytics usage tracking
    +
    +
    -[no]sortbytree
    +
    +
    Enable or disable automatic sorting of associated view when a new tree is displayed
    +
    +
    -dasserver nickname=URL
    +
    +
    Add and enable a DAS server with given + nickname (alphanumeric or underscores only) for retrieval of features + for all alignments
    + Sources that also support the sequence command may be specified by prepending the URL with 'sequence:'
    + e.g. sequence:http://localdas.somewhere.org/das/source
    +
    +
    -fetchfrom nickname
    +
    +
    Query a DAS source called nickname for features for the alignments + and display them
    +
    +
    -groovy FILE
    +
    +
    Execute groovy script in FILE (where FILE may be 'STDIN' to read from the standard input) after all other + arguments have been processed
    +
    +
    -vdoc VAMSAS DOCUMENT FILE or URL
    +
    +
    Import the given vamsas document into a new session.
    New in 2.5
    +
    +
    -vsess VAMSAS SESSION URL
    +
    +
    Join the given vamsas session
    If a document was also specified, this will be imported first and then committed as new data from Jalview to the specified session (Experimental - not yet enabled!).New in 2.5
    +
    +
    -groovy FILE
    +
    +
    Execute groovy script in FILE (where FILE may be 'STDIN' to read from the standard input) after all other + arguments have been processed
    +
    +
    -fasta FILE
    +
    +
    Create alignment file FILE in Fasta format.
    +
    -clustal FILE
    Create alignment file FILE in Clustal format.
    -msf FILE
    Create alignment file FILE in MSF format.
    -pileup FILE
    Create alignment file FILE in Pileup format.
    -pir FILE
    Create alignment file FILE in PIR format.
    -pfam FILE
    Create alignment file FILE in PFAM format.
    -blc FILE
    Create alignment file FILE in BLC format.
    -jalview FILE
    Create alignment file FILE in Jalview format.
    -png FILE
    Create PNG image FILE from alignment.
    -imgMap FILE
    Create HTML file FILE with image map of PNG + image.
    -eps FILE
    Create EPS file FILE from alignment.
    + + diff --git a/help/html/features/codingfeatures.html b/help/html/features/codingfeatures.html index 66edaf9..d428c10 100644 --- a/help/html/features/codingfeatures.html +++ b/help/html/features/codingfeatures.html @@ -15,4 +15,19 @@ * 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 . ---> +--> + +DNA Sequence Coding Region Definition + + +

    DNA Sequence Coding Region Definition

    +

    Jalview includes the standard DNA codon translation table in +order to be able to dynamically translate cDNA to its expressed +protein sequence. DNA Sequence Coding Regions are sequence +features that can be defined on any DNA sequence in order to +mark stretches of cDNA that will be concatenated to form the +series of codons that are translated by the " +Calculate→Translate cDNA" menu function. +

    + + diff --git a/help/html/features/commandline.html b/help/html/features/commandline.html index e18e273..6c6f3eb 100644 --- a/help/html/features/commandline.html +++ b/help/html/features/commandline.html @@ -16,3 +16,37 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Running Jalview from the command line + +

    Running Jalview from the command line

    +

    Jalview is most easily run from the command line if you have built + it from source, or via the 'Jalview' executable created from the + InstallAnywhere jalview installation. Both of these mechanisms allow + true command line execution of jalview - allowing you to provide + additional options.

    +The Java Webstart version of + jalview can be executed from the command line using something like + : +

    javaws http://www.jalview.org/webstart/jalview.jnlp -open
    + yourFileName
    + But, this is not guaranteed to work on all versions of webstart on all + operating systems, and doesn't let you execute Jalview with any + additional parameters. +

    Running jalview from the InstallAnywhere + installation

    +

    If you install with InstallAnywhere you can use several more commands. + However, if you call the application with the link provided by InstallAnywhere + any output from the application will be sent to output.txt, not standard + out.
    + The jalview application also requires a number of additional + libraries on the class path. The command line below adds the Jalview + installation's 'lib' directory to the list of directories that are + searched for jars to be added to the classpath:

    +
    java -Djava.ext.dirs=$INSTALL_DIR$/lib -cp $INSTALL_DIR$/jalview.jar jalview.bin.Jalview -open [FILE] 
    +

    Use '-help' to get more information on the command line arguments that Jalview + accepts.

    +

     

    +

     

    + + diff --git a/help/html/features/creatinFeatures.html b/help/html/features/creatinFeatures.html index e18e273..824991d 100644 --- a/help/html/features/creatinFeatures.html +++ b/help/html/features/creatinFeatures.html @@ -16,3 +16,40 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Creating Sequence Features + + +Creating Sequence Features +

    Jalview can create sequence features from the matches of a regular expression search, or from the currently +selected area via the "selection→Create +sequence feature" entry in the selection area popup menu. In both +cases, the Create Features dialog box will then be +opened:

    +

    +

    Select or enter the attributes for the features being created, +and then press OK to create the new features.

    +

    Each attribute is described below: +

      +
    • Sequence Feature Name +

      Either give the new features a new name or use the menu to + re-use an existing feature name.

      +
    • +
    • Feature group +

      Enter a new group name, or re-use an existing group from the + pull-down menu.

      +
    • +
    • Feature Colour +

      Keep the existing colour for this feature's name and group, or + select the colour box to open a colour chooser to pick a different one.

      +
    • +
    • Description +

      Enter a description for all the features being created. Each + feature defined on a sequence may have its own description that will be + displayed in the tooltip for the feature in that region.

      +
    • +
    +

    Sequence Feature Creation was introduced in Jalview Version 2.2

    + + diff --git a/help/html/features/cursorMode.html b/help/html/features/cursorMode.html index e18e273..380c32a 100755 --- a/help/html/features/cursorMode.html +++ b/help/html/features/cursorMode.html @@ -16,3 +16,57 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Cursor Mode + + +

    Cursor Mode

    +

    Cursor mode is a new feature in Jalview 2.08, and allows more +precise selection and editing of alignments through the use of the +keyboard for both navigation and the input of editing and selection commands.

    +

    F2 Toggles between normal and cursor editing modes. When +in cursor mode, a black cursor appears in the residue area of the +alignment, and any mouse clicks on that area will move the cursor to +that position (this means that the region selection menu is +unavailable in cursor mode).

    +

    Navigation +

      +
    • Cursor keys - Move cursor around the alignment.
    • +
    +
      +
    • S - Type a number x then press 'S' to jump to sequence x.
    • +
    +
      +
    • C - Type a number x then press 'C' to jump to column x.
    • +
    +
      +
    • P - Type a number x then press 'P' to jump to position x in current sequence.
    • +
    +
      +
    • 65,82<return> - Quick jump to column 65, sequence 82
    • +
    +

    +

    Defining Regions +

      +
    • Q - Define the top left corner of the selection area
    • +
    +
      +
    • M - Define the bottom right corner of the selection area
      +
    • +
    +

    Editing The Alignment +

      +
    • Space - Insert a gap at the cursor position.
      + To insert 12 spaces at the current cursor, type 12 before pressing Space.
      + To group insert, hold control or shift together with space.
    • +
    +
      +
    • Delete (or backspace) - Delete a gap at the cursor position.
      + To delete 12 spaces at the current cursor, type 12 before pressing + Delete (or backspace).
      + To group delete, hold down control or shift together with Delete + (or backspace).
    • +
    +

    + + diff --git a/help/html/features/dasfeatures.html b/help/html/features/dasfeatures.html index e18e273..571343c 100644 --- a/help/html/features/dasfeatures.html +++ b/help/html/features/dasfeatures.html @@ -16,3 +16,47 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +DAS Features + + + +

    DAS Sequence Feature Retrieval

    +

    Jalview includes a client for retrieving sequences and their features via +the Distributed Annotation System.

    +
      +
    1. Open the Feature Settings panel by selecting "View -> + Feature Settings..."
    2. +
    3. Click on the "DAS Settings" + tabbed pane.
    4. +
    5. Select the sources to use for DAS feature retrieval, then + click the "Fetch DAS Features" button. +
        +
      • Cancelling Feature Retrieval
        + Press the Cancel Fetch button to immediately stop + feature retrieval. This will not remove any features already added to + the alignment, but will halt any outstanding DAS requests.The + cancel fetch button is of particular use when one or more DAS + annotation servers are not responding! +
      +
    6. +
    +

    If your DAS source selection contains sources which use Uniprot +accession ids, you will be asked whether Jalview should find Uniprot +Accession ids for the given sequence names. It is important to realise +that many DAS sources only use Uniprot accession ids, rather than +Swissprot/Uniprot sequence names.
    +The database reference +fetcher documentation describes how Jalview discovers what database +references are appropriate for the sequences in the alignment. +

      +
    • Note
      + Please remember to save your alignment if either the start/end + numbering, or the sequence IDs were updated during the ID + retrieval process.
    • +
    +

      +

    DAS support was introduced in Jalview Version 2.1.

    +

      + + diff --git a/help/html/features/dassettings.html b/help/html/features/dassettings.html index e18e273..7ccbbda 100644 --- a/help/html/features/dassettings.html +++ b/help/html/features/dassettings.html @@ -16,3 +16,39 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +DAS Settings + + + +

    DAS Settings

    +

    Jalview can retrieve sequences and features from many DAS sources. The DAS sources that +it uses are discovered and selected via the DAS settings panel, +opened either from the View→Feature +Settings dialog box from the alignment window's menu bar, or the Tools→Preferences dialog box +opened from the Desktop menu bar.

    +

    +

    The available sources are listed in the table using each source's +Nickname as its identifier. Clicking on a source's entry in the table +reveals more information about that service in the panel to the right. +Select the tickbox in the "Use Source" column for a source to +add it to the set Jalview queries for alignment and sequence features.

    +

    You can filter the visible DAS sources by authority, type and +"label". You should read the DAS documentation to understand +more about these values. +

    Updating the list of sources

    +

    When the DAS Settings panel is first opened, and when the 'Refresh +source' buton is pressed, a list of DAS sources is retrieved from the +DAS registry URL (set by default to the DAS registration server at +http://das.sanger.ac.uk/registry/das1/sources/).

    +

    Adding your own DAS Sources

    +

    You can add your own DAS source to the list by clicking the +"Add Local Source" button. Enter the URL and nickname of your +additional service. It should be noted that Jalview 2.1 will not query +additional sources for more information, but this will be implemented in +future editions. +

      + + diff --git a/help/html/features/editingFeatures.html b/help/html/features/editingFeatures.html index e18e273..d30f48f 100644 --- a/help/html/features/editingFeatures.html +++ b/help/html/features/editingFeatures.html @@ -16,3 +16,28 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Amending or Deleting Sequence Features + + +Amending or Deleting Sequence Features +

    Double clicking a position in the alignment with one or more +displayed sequence features opens the "Amend/Delete +Features" dialog box.

    +

    +

    The dialog box only allows one of the features at the +double-clicked position to be edited or deleted at a time, and it will +also be highlighted in black in the alignment window.

    +

    Choose which feature is to be modified by selecting it from the Sequence +Feature Name pull down +menu. In addition to the Name, group, colour and description attributes +described for the new feature dialog +box, a feature's start and end position can be changed either by +entering a new position directly or by using the adjacent up and down +buttons.

    +

    Select Amend to update the feature, Delete +to remove the selected feature, or Cancel to leave the +feature unchanged.

    +

    Sequence feature editing was implemented in Jalview 2.2

    + + diff --git a/help/html/features/featuresFormat.html b/help/html/features/featuresFormat.html index e18e273..b802c63 100755 --- a/help/html/features/featuresFormat.html +++ b/help/html/features/featuresFormat.html @@ -16,3 +16,127 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Sequence Features File + + + +

    Sequence Features File

    +

    The Sequence features file (which used to be known as the +"Groups file" prior to version 2.08) is a simple way of +getting your own sequence annotations into Jalview. It was introduced to +allow sequence features to be rendered in the Jalview applet, and so is +intentionally lightweight and minimal because the applet is often used +in situations where data file size must be kept to a minimum, and no XML +parser is available.

    +

    Features files are imported into Jalview in the following ways:
    +

      +
    • from the command line
      + -features <Features filename>
    • +
    • Dragging a features file onto an alignment window
    • +
    • Via the "Load Features / Annotations" entry in the File + menu of an alignment window.
    • +
    +

    +

    Sequence Features File Format

    +

    A features file is a simple ASCII text file, where each line +contains tab separated text fields. No comments are +allowed.

    +

    The first set of lines contain type definitions: +

    Feature label	Feature Colour
    A feature +type has a text label, and a colour specification. This can be either: +
      +
    • A single colour specified as either a red,green,blue 24 bit + triplet in hexadecimal (eg. 00ff00) or as comma separated numbers + (ranging from 0 to 255))
    • +
    • A graduated colourscheme specified as a "|" separated list + of fields:
      +<mincolor>|<maxcolor>|[absolute|]<minvalue>|<maxvalue>[|<thresholdtype>|[<threshold value>]]
      +
      The fields are as follows +
        +
      • mincolor and maxcolor
        + Colour triplets specified as hexadecimal or comma separated values
      • +
      • absolute
        + An optional switch indicating that the minvalue and maxvalue + parameters should be left as is, rather than rescaled according to the + range of scores for this feature type. +
      • minvalue and maxvalue
        + Minimum and maximum values defining the range of scores for which the colour range will be defined over. If minvalue is greater than maxvalue then the linear mapping will have negative gradient. +
      • +
      • thresholdtype
        + Either "none", "below", or "above". below + and above require an additional threshold value + which is used to control the display of features with a score either + below or above the value.
      • +
      +
    • +
    +

    +

    The remaining lines in the file are the sequence annotation +definitions, where the now defined features are attached to regions on +particular sequences, optionally with some descriptive text (displayed +in a tooltip when the mouse is near the feature on that sequence). There +are two alternate ways of referring to a sequence, either by its text +ID, or its index in an associated alignment. +

    +description	sequenceId	sequenceIndex	start	end	featureType	score (optional)
    +Normally, sequence features are associated with sequences rather than +alignments, and the sequenceIndex field is given as "-1". In +order to specify a sequence by its index in a particular alignment, the +sequenceId should be given as "ID_NOT_SPECIFIED", otherwise +the sequenceId field will be used in preference to the sequenceIndex +field. +

    +

    The description may contain simple HTML document body tags if +enclosed by "<html></html>" and these will be +rendered as formatted tooltips in the Jalview Application (the Jalview +applet is not capable of rendering HTML tooltips, so all formatting tags +will be removed).
    +Attaching Links to Sequence Features
    +Any anchor tags in an html formatted description line will be translated +into URL links. A link symbol will be displayed adjacent to any feature +which includes links, and these are made available from the links submenu of the +popup menu which is obtained by right-clicking when a link symbol is +displayed in the tooltip.
    +Non-positional features
    +Specify the start and end for a feature to be 0 +in order to attach it to the whole sequence. Non-positional features are +shown in a tooltip when the mouse hovers over the sequence ID panel, and +any embedded links can be accessed from the popup menu. +Scores
    +Scores can be associated with sequence features, and used to sort sequences or shade the alignment (this was added in jalview 2.4.X). The score field is optional, and malformed scores will be ignored. +

    +

    Feature annotations can be collected into named groups by +prefixing definitions with lines of the form:

    startgroup	groupname
    .. +and subsequently post-fixing the group with:
    endgroup	groupname
    Feature +grouping was introduced in version 2.08, and used to control whether a +set of features are either hidden or shown together in the sequence Feature settings dialog box.

    +

    A complete example is shown below : +

    +domain	red
    +metal ion-binding site	00ff00
    +transit peptide	0,105,215
    +chain	225,105,0
    +modified residue	105,225,35
    +signal peptide	0,155,165
    +helix	ff0000
    +strand	00ff00
    +coil	cccccc
    +Your Own description here	FER_CAPAA	-1	3	93	domain
    +Your Own description here	FER_CAPAN	-1	48	144	chain
    +Your Own description here	FER_CAPAN	-1	50	140	domain
    +Your Own description here	FER_CAPAN	-1	136	136	modified residue
    +Your Own description here	FER1_LYCES	-1	1	47	transit peptide
    +Your Own description here	Q93XJ9_SOLTU	-1	1	48	signal peptide
    +Your Own description here	Q93XJ9_SOLTU	-1	49	144	chain
    +startgroup	secondarystucture
    +PDB secondary structure annotation	FER1_SPIOL	-1	52	59	strand
    +PDB secondary structure annotation	FER1_SPIOL	-1	74	80	helix
    +endgroup	secondarystructure
    +
    +
  6. +

    + + diff --git a/help/html/features/featureschemes.html b/help/html/features/featureschemes.html index e18e273..9f3d81d 100644 --- a/help/html/features/featureschemes.html +++ b/help/html/features/featureschemes.html @@ -16,3 +16,58 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Sequence feature colour schemes + + + +

    Sequence feature colour schemes

    +

    Jalview can visualize annotation present on parts of a sequence by +overlaying colours according to the annotation present at each position. +It allows features to be colored either according to type, or for a +particular type, according to an individual feature's associated label +or score. The Feature Settings dialog +box controls the order and display of each sequence annotation type, and +also allows the colour scheme used for the the feature to be changed via +the 'Graduated Colour' option in the sequence feature pop-up menu +(obtained by right-clicking on a sequence feature).

    + +

    Graduated +feature colour scheme settings dialog box
    +

    The Graduated Feature Colour dialog box has the following +controls: +

      +
    • Colour by Label - when checked this derives a colour + for each feature based on the label text.
    • +
    • Min and Max Color boxes - Click on these boxes to set + the minimum and maximum colours used to shade features by their + associated score.
    • +
    • Threshold type combo box - Allows features to be + hidden features if their score is below or above a given threshold.
      + Set the threshold using the slider or type it in to the text + box. The threshold cannot be set outside the available range of feature + scores. +
    • +
    • Threshold is Min/Max - When checked, the threshold + will be used as the upper or lower limit when shading the features + according to their score using the Min and Max colour.
    • +
    +

    +

    Icon styles for graduated feature styles
    +

    When a graduated colourscheme is applied to a feature, it is indicated in the feature settings or amend feature dialog box by the following types of icon:
    +

    + + + + + + +
    Type of ColouringIcon
    Graduated colour by Feature Score
    Graduated colour thresholded (less than) by feature Score
    Graduated colour thresholded (greater than) by feature Score
    Colour by Feature Label (may also be thresholded)
    + + The current threshold is given in the + icon's tooltip. + +

    +Graduated feature colours were introduced in Jalview 2.5 + + diff --git a/help/html/features/featuresettings.html b/help/html/features/featuresettings.html index e18e273..390ad78 100755 --- a/help/html/features/featuresettings.html +++ b/help/html/features/featuresettings.html @@ -16,3 +16,62 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Sequence Feature Settings Dialog Box + + +

    Sequence Feature Settings Dialog Box

    +

    Select View→Feature Settings... menu entry +in an alignment window to open the feature settings dialog box, which +allows you to precisely control the presence and appearance of sequence +features for the current alignment.

    +
    +
    +Sequence Feature Settings for the Jalview Application
    +

    The top section of the dialog box lists all the sequence feature +groups, along with a tickbox for each that controls whether its features +are displayed. The table in the middle lists all the features in the +currently selected groups, along with their display colour and whether +they are currently being displayed (only the ticked features and groups +are displayed). You can change the colour used +for a feature in the associated alignment by clicking on its colour box.

    +

    Feature settings pop-up menu
    +Right-click on a feature to open a pop-up menu that +allows you to sort the alignment or current selection using that feature +type (see below), or create a feature +colourscheme based on either the scores associated with that feature or +from the feature's description (e.g. to distinguish different names +associated with a DOMAIN feature).

    +

    Ordering alignment by features
    +The 'Seq Sort by Score' and 'Seq Sort by Density' buttons will sort the +alignment based on the average score or total number of currently active +features and groups on each sequence. To order the alignment using a +specific feature type, use the sort by .. entries in the pop-up +menu for that type.
    +Feature sorting and graduated feature colouring was introduced +in jalview 2.5

    + +

    Transparency and Feature Ordering

    +

    It is important to realise that sequence features are often not +distinct and often overlap (for example, a metal binding site feature +may be attached to one position along a stretch of sequence marked with +a secondary structure feature).

    +

    The ordering of the sequence features in the dialog box list is +the order used by jalview for rendering sequence features. A feature at +the bottom of the list is rendered below a feature higher up in +the list.
    +You can change the order of a feature by +dragging it up and down the list with the mouse.

    +

    The Optimise order button (currently +only available in the application) will re-order the feature render +ordering based on the average length of each feature type.

    +

    The transparency slider setting +(currently only available in the application version) controls the +visibility of features rendered below other features. Reducing the +transparency will mean that features at the top of the list can obscure +features lower down, and increasing it allows the user to 'see through' +the upper layers of a set of features.

    +

    You can save all features, with their +current colours and visibility in a Jalview format file.

    + + diff --git a/help/html/features/groovy.html b/help/html/features/groovy.html index 66edaf9..4b63c61 100644 --- a/help/html/features/groovy.html +++ b/help/html/features/groovy.html @@ -15,4 +15,53 @@ * 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 . ---> +--> +Groovy Shell + +

    The Groovy Shell

    +

    Groovy is an "agile and dynamic +language for the Java platform". 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.

    +

    Getting Groovy...
    +Jalview Groovy support is only possible if the core groovy +jars which include the GroovyShell are present on the CLASSPATH +when Jalview is started.

    The jars are obtained from the +embedded directory within the groovy +distribution. 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.

    +

    Opening Jalview's Groovy Console
    If groovy is available, then the +Tools→Groovy Console... menu entry will be available +from the Jalview Desktop's drop-down menu. Selecting this will open the +Groovy Console which +allows you to interactively execute Groovy scripts within the Jalview run-time environment.

    +

    Executing groovy scripts on Jalview startup
    +The -groovy <script> option on the +Jalview command line will execute the contents of +<script>. <script> may be a file, or alternatively if it is "STDIN" +then the standard input will be used.

    +

    Access to Jalview's functions from Groovy Scripts
    +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 Jalview object defined in +the groovy environent which corresponds to the

    jalview.gui.Desktop
    object which +manages all the Jalview windows.

    +Here's an example to get you started:
    +
    • Getting the title, alignment and first sequence from the current alignFrame
      +
      +def alf = Jalview.getAlignframes();
      +print alf[0].getTitle();
      +def alignment = alf[0].viewport.alignment;
      +def seq = alignment.getSequenceAt(0);
      +
      +
    • +
    +

    + +

     

    + + diff --git a/help/html/features/hiddenRegions.html b/help/html/features/hiddenRegions.html index e18e273..ed8c39d 100644 --- a/help/html/features/hiddenRegions.html +++ b/help/html/features/hiddenRegions.html @@ -16,3 +16,83 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Hidden Regions + + +

    Hidden Regions

    +

    Use the keyboard key "H" to hide / reveal selected +columns and sequences. To hide / reveal only selected sequences, use +"Shift H", to hide / reveal only selected columns, use +"Control H". You can also use "Shift" and +"Control" together to hide everything but the currently +selected region.

    +

    Hiding Sequences
    +To hide selected sequences in an alignment, use the "View +-> Hide -> Selected Sequences" menu item or simply select "Hide +Sequences" from the Popup menu after a right click on the sequence +Ids.

    +

    Hidden sequences will not be used in any calculations, editing or +web service alignments performed on visible sequences.

    +

    Hidden Sequences Representatives
    +A more advanced hide involves a right-mouse click on a sequence, then +selecting "SequenceID -> Represent Group with +SequenceId". Using this method of hiding sequences, any edits +performed on the visible group representative will be propogated to all +the sequences in that group.
    +The hidden representative sequences will not be used in any calculations +or web service alignments (nb. this may change in the future). +

    Hidden Sequence Representatives and +Multiple Views
    +A word of warning: hidden representative sequence groups are +(still) only partly implemented in the jalview 2.5 release, and we hope +to deal with the following issues in the future.
    +Currently, represented hidden groups are only made correctly if there is +just one alignment view. When multiple views on an alignment exist, then +the represented group will be displayed correctly in the view in which +it was made, but in other views, both representative and hidden +sequences will be visible, but will behave as if they are grouped.
    +Hidden representatives are propagated correctly to a new view if they +exist in the current view. However, if the represented sequences are +revealed in any one view, then in all other views they will simply be +marked as hidden, and their association with the representative sequence +will be lost.
    + +

    +

    Hiding Columns
    +To hide selected columns in an alignment, use the "View +-> Hide -> Selected Columns" menu item, or right click within +a region of selected columns in the scale above the alignment (only +available in non wrapped mode) and select "Hide +Columns".

    +

    When an alignment view contains hidden columns, certain +constraints apply: +

      +
    • Editing the alignment is bound by the hidden columns, i.e. + you cannot move residues across a hidden column boundary.
    • +
    • Tree, + pairwise + alignment and PCA + calculations will only be performed using the visible parts of + the alignment.
    • +
    • Multiple Sequence + Alignments are performed locally on on each visible chunk of the input, + and concatenated with the hidden regions to form the final result. +

      +
    • +
    +

    Column Separability
    +Calculations where hidden columns are excluded, and a single analysis +performed on the result, are termed column-separable. The +simple Tree and PCA calculations are column separable because +essentially the same results would be obtained if the excluded hidden +columns were replaced by gaps as the input to the calculation.

    +

    Multiple Sequence alignment and secondary structure prediction +are both non-column-separable, and so the exclusion of hidden regions +leads to only 'locally optimal' results - sometimes different to that +obtained when using the full alignment.

    +

     

    +

     

    +

     

    + + diff --git a/help/html/features/jalarchive.html b/help/html/features/jalarchive.html index e18e273..d32bbc0 100755 --- a/help/html/features/jalarchive.html +++ b/help/html/features/jalarchive.html @@ -16,3 +16,23 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Jalview Archives + + + +

    Jalview Project Archives +

    + +

    These are java archives of an XML file containing alignments, trees and Jalview + display information. A data exchange standard is currently being developed, + so there is no stable schema yet, but Jalview web services will soon make use + of the same interchange format.

    +

    For those who want to know...
    + Jalview uses java classes automatically created using Castor. + Jalview 2.08 uses descriptor classes which significantly increase the speed + of marshalling / unmarshalling java objects into XML. Files created prior to + Jalview 2.08 can still be read in, but they will be saved in the new format. +

    + + diff --git a/help/html/features/jmol.html b/help/html/features/jmol.html index 66edaf9..e7f963b 100644 --- a/help/html/features/jmol.html +++ b/help/html/features/jmol.html @@ -15,4 +15,153 @@ * 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 . ---> +--> + +The Jmol PDB Viewer + + +

    The Jmol PDB Viewer +

    The interactive structure viewing window is opened by selecting +the "Sequence→View PDB entry:" entry in +the sequence id pop-up menu. This +can only be done for sequences which have an associated +PDB structure. +

    Since Jalview 2.3, Jmol +has been integrated into Jalview. It is automatically used by the +application, and should also run in the applet in all latest web +browsers. If jmol is not available, then the original internal pdb viewer will be used as a fallback. +

    +

    Controls

    +

    The structure is by default rendered as a ribbon diagram. Moving the +mouse over the structure brings up tooltips giving the residue name, +PDB residue number and chain code, atom name and number +([RES]Num:Chain.AtomName#AtomNumber). If a mapping exists to a residue +in any associated sequences, then this will be highlighted in each +one's alignment window. The converse also occurs - moving the mouse +over an associated residue in an alignment window highlights the associated +atoms in the displayed structures.

    +

    Selecting a residue highlights its associated sequence residue +and alpha carbon location. Double clicking an atom allows distances to +be measured from it to any other atom in the structure.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ActionWindowsUnixMac/OSX
    Rotate ViewLeft Click and DragLeft Click and DragClick and Drag
    ZoomShift + Left Click
    drag mouse up or down
    Shift + Left Click
    or middle button
    drag + mouse up or down
    Left-Alt + Click and drag mouse up or down
    Select/
    + Deselect
    + Residue
    Left ClickLeft ClickClick
    Roll ViewShift + Left Click
    drag mouse to left or + right
    Shift + Left Click
    or middle button
    drag mouse to left or right
    Left-Alt + Click and drag mouse to left or right
    Move OriginShift+Control+Left Click
    or Middle Button
    + + Drag
    Middle-Button
    and
    drag
    Shift+Control+Left Click
    or Middle Button
    + and drag
    Jmol MenuRight-ClickRight-ClickApple-Click
    +

    +

    The window has four menus: +

      +
    • File
      +
      +
        +
      • Save As
        +
        Save the displayed PDB File, or the current view as an EPS or PNG file.
      • +
      • View Mapping
        +
        Opens a text window showing the alignment between the + residues corresponding to alpha-carbon atoms in the PDB structure and + the residues in the associated sequence.
      • +
      +
    • +
    • View +
        +
      • Show Chains
        Select which of the PDB + file's chains are to be displayed. +
      • +
      +
    • Colours
      +
      +
        +
      • By Sequence
        +
        Colours each residue in the structure with the colour of its + corresponding residue in the associated sequence as rendered in the + associated alignment view, including any Uniprot sequence features or + region colourings.
        + Residues which only exist in the PDB structure are coloured white if + they are insertions (relative to the associated sequence in the + alignment) and grey if they are N or C terminal flanks outside the + region mapped to the alignment window's sequence.
      • +
      • By Chain
        +
        Assigns a random colour to each PDB chain. +
      • Charge & Cysteine
        +
        Highlights cysteines in yellow, anionic (Aspartic Acid or + Glutamic Acid) residues in red, and cationic (Lysine or Arginine) + residues in blue.
      • +
      • Standard and User Defined Jalview + colourschemes.
        +
        The remaining entries apply the colourschemes available from the + standard and user defined amino + acid colours.
      • +
      +
    • +
    • Help
      • Jmol Help
        Access the Jmol Help + documentation in a new browser window. +
      • +
      +
    +

    +

    Functionality provided by Jmol +

    The Jmol menu provides access to a number of features for +controlling the colour and display of molecules, adding measurements and +labels, plotting surfaces, and display animation. The 'Set Picking' +menu controls the behaviour of single and double mouse clicking on the +structure.

    +

    The state of each Jmol display is stored within jalview archives as a jmol state recovery script +file. This means that any Jmol visualization effects that +you add beyond those provided by Jalview will be able to be stored and +recovered along with the displayed alignments in Jalview. +

    More Information +

    Jmol is a sophisticated program in its own right, with its own +command console and scripting language. Only the essentials have been +described here - the interested reader is referred to +Jmol's own comprehensive +online documenation.

    + + diff --git a/help/html/features/multipleViews.html b/help/html/features/multipleViews.html index e18e273..0191396 100644 --- a/help/html/features/multipleViews.html +++ b/help/html/features/multipleViews.html @@ -16,3 +16,61 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Multiple Alignment Views + + +

    Multiple Alignment Views

    +

    Multiple alignment views allows the same alignment to be viewed +independently in many different ways simultaneously. Each view is an +independent visualization of the same alignment, so each may have a +different ordering, colouring, row and column hiding and seuqence +feature and annotation display setting, but alignment, feature and +annotation edits are common to all, since this affects the underlying +data.

    +

    Create a new view using the "View→New +View" menu item, or by pressing Control+T. A newly +created view will be identical to the view it was created from, but any +changes to the way the alignment is coloured or displayed will only +affect the new view.

    + +

    A particular view may focus on some specific aspect of an +alignment - for example, hiding all but the region of an alignment +containing a particular domain. Right-clicking a view's +tab opens the View Name dialog box, allowing it to be renamed to +something more meaningful.

    +

    Viewing Multiple Views Simultaneously

    +

    Multiple views of an alignment are, by default, gathered together +as tabs within a single alignment window. They can be viewed +simultanously by pressing X (or via "View→Expand") +to expand each view into its own linked alignment window. Expanded views +are gathered back into into a single tabbed alignment window by pressing +G, or by selecting "View→Gather"). +

    +

    Hidden Sequence Representatives and Multiple +Views

    +

    There are some unexpected interactions between hidden sequence +representatives and their display in multiple views. See the +corresponding entry in the documentation +for hidden regions.

    +

    Structure and Analysis Viewers and Multiple +Views

    +

    A tree calculated on a particular view, or loaded onto it, is by +default associated with just that view. However, the Tree Viewer's "View→Associate +leaves" submenu allows a tree's view association to be changed to +to any or all other views.

    +

    The results of a PCA +calculation on a particular view may also be associated with other +views, using the PCA Viewer's "View→Associate +Nodes" submenu.

    +

    PDB Structure Viewers +opened on a structure associated with a sequence in a particular view are now (as of Jalview 2.3) associated with the same sequence in all views. This means that when 'Colour by Sequence' is selected in the structure view, the colour will be updated to the colours given in the view with the current input focus. + +

    Multiple Views were introduced in Jalview 2.2

    + + diff --git a/help/html/features/newkeystrokes.html b/help/html/features/newkeystrokes.html index e18e273..46cbc94 100644 --- a/help/html/features/newkeystrokes.html +++ b/help/html/features/newkeystrokes.html @@ -16,3 +16,35 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +New Key Strokes and Menus + +New Key Strokes and Menus +

    Many new keyboard shortcuts have been +added in Jalview 2.2 to make editing, selecting and navigating an +alignment even easier. The selection commands in the Edit +menu, and the alignment formatting controls within the View +menu have also been moved into their own respective Select +and Format menus.

    +

    Some of the more important new keystrokes are shown below : +

      +
    • Page Up and Page Down + scrolls through the alignment view.
    • +
    • Control I inverts the currently selected + sequence set, and Control Alt I will invert the + currently selected set of columns. +
    • Control V will paste the contents of the + clipboard to the current alignment window, and Control + Shift V pastes the data to a new window.
    • +
    • Control O opens the file browser for loading + a new alignment or Jalview archive.
    • +
    • Control S saves the alignment with the + current filename and format, and Control Shift S opens + the Save As... dialog box.
    • +
    • Control T creates a new alignment view, and Control + W closes the current view, or if none remain, then the whole alignment.
    • +
    • Control E will remove gapped columns in the alignment.
    • +
    • Control D opens the Remove Redundancy dialog box.
    • +
    +

    + + diff --git a/help/html/features/overview.html b/help/html/features/overview.html index e18e273..7181e36 100755 --- a/help/html/features/overview.html +++ b/help/html/features/overview.html @@ -16,3 +16,14 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Overview Window + +

    View→Overview window

    +

    Select the overview window menu item to get a navigable image of the whole alignment. +

    +

    The red box indicates the currently viewed region of the alignment, this + may be moved by clicking and dragging with the mouse.

    +

    +

     

    + + diff --git a/help/html/features/pdbviewer.html b/help/html/features/pdbviewer.html index e18e273..f22424a 100755 --- a/help/html/features/pdbviewer.html +++ b/help/html/features/pdbviewer.html @@ -16,3 +16,145 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +PDB Viewer + + +

    The Jalview internal PDB Viewer
    +Since Jalview 2.3, the Jmol PDB Viewer is +the main method for viewing PDB +structures. The documentation below concerns the original Jalview +PDB viewer, which is only used in situations where Jmol is unavailable +or cannot operate.

    +

    The PDB Viewer Window +

    This interactive structure viewing window is opened by selecting +the "Sequence→View PDB entry:" entry in +the sequence id pop-up menu. This +can only be done for sequences which have an associated +PDB structure, and the PDB Viewer will only be associated with the +particular alignment view from which it was opened.

    +

    Controls

    +

    The structure is rendered as an alpha-carbon trace. Moving the +mouse over the structure brings up tooltips with a residue name and PDB +sequence position. If a mapping exists to a residue in the associated +sequence, then this will be highlighted in the associated view in its +alignment window, and vice versa for viewing the coordinates associated +with a particular residue in the sequence in a particular view on the +alignment.

    +

    Selecting a residue highlights its associated sequence residue +and alpha carbon location.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ActionWindowsUnixMac/OSX
    Select/
    + Deselect
    + Residue
    Left ClickLeft ClickClick
    Rotate ViewLeft Click and DragLeft Click and DragClick and Drag
    Roll ViewRight Click and dragRight Click and DragTODO
    Move OriginMiddle-Button and DragMiddle-Button and DragTODO
    Zoom InUp ArrowUp ArrowUp Arrow
    Zoom OutDown ArrowDown ArrowDown Arrow
    +

    +

    There are three menus: +

      +
    • File
      +
      +
        +
      • Save As
        +
        Saves the current view as an EPS or PNG file.
      • +
      • View Mapping
        +
        Opens a text window showing the alignment between the + residues corresponding to alpha-carbon atoms in the PDB structure and + the residues in the associated sequence.
      • +
      +
    • +
    • Colours
      +
      +
        +
      • By Sequence
        +
        Colours each residue in the structure with the colour of its + corresponding residue in the associated sequence as rendered in the + associated alignment view, including any Uniprot sequence features or + region colourings.
        + Residues which only exist in the PDB structure are coloured white if + they are insertions (relative to the associated sequence in the + alignment) and grey if they are N or C terminal flanks outside the + region mapped to the alignment window's sequence.
      • +
      • By Chain
        +
        Assigns a random colour to each PDB chain. +
      • Charge & Cysteine
        +
        Highlights cysteines in yellow, anionic (Aspartic Acid or + Glutamic Acid) residues in red, and cationic (Lysine or Arginine) + residues in blue.
      • +
      • Standard and User Defined Jalview + colourschemes.
        +
        The remaining entries apply the colourschemes available from the + standard and user defined amino + acid colours.
      • +
      +
    • +
    • View
      +
      These options can be turned off to improve performance when + viewing large structures, some at the expense of visual clarity. +
        +
      • Wireframe
        +
        Draws thin lines rather than thick lines for the + alpha-carbon trace.
      • +
      • Depthcue
        +
        Shades the structure so parts of the structure near the front + of the view are brighter than those further away.
      • +
      • Z Buffering
        +
        Applies depth sorting to correctly render occluded regions + of the backbone trace.
      • +
      • Show All Chains
        +
        When turned on, shows all chains in the PDB file, not just + the one associated with a sequence in the alignment window.
      • + +
      +
    • +
    +

    +

    Notes for PDB Viewing in the Jalview Applet +

    The applet can only load PDB files by copying and pasting the +text into the popup window which appears when "Show PDB +Structure" is selected after right clicking on a sequence name.

    + + diff --git a/help/html/features/preferences.html b/help/html/features/preferences.html index e18e273..e0aadf3 100755 --- a/help/html/features/preferences.html +++ b/help/html/features/preferences.html @@ -16,3 +16,149 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Preferences + + + +

    Preferences

    +

    There are four tabs in the Preferences dialog box: +

    +

    +

    Visual Preferences tab

    +

    Maximise Window - If this is selected, a new alignment +window will stretch to fit the available space.

    +

    Open Overview Window - When this is selected, the alignment overview panel is opened by default +for a new alignment window.

    +

    Show Annotations - If this is selected the new window +will display an annotation panel below the sequences. This annotation +panel may have several rows describing the whole alignment. The 3 +standard annotations Conservation, Quality and Consensus +for the alignment may be shown or hidden by default using the checkboxes +below.

    +

    Show group: Conservation and Consensus controls the +display of per-group automatic annotation.

    +

    Consensus: Histogram and Logo checkboxes control the +display of the consensus histogram and sequence logo for consensus +annotation rows.

    +

    Full Sequence ID - If selected the ID panel will display +the name of a sequence plus the start and end residues in the format +name/start-end. If not selected, the displayed ID will be the name of +the sequence.

    +

    Right Align IDs - select to align all sequence IDs to +the left-hand edge of the sequence alignment, rather than the left-hand +edge of the alignment display window.

    +

    Font - The default font name, size and style can be set +for a new alignment window.

    +

    Sequence ID Tooltip: Control the display of Database +References and Non-positional annotation in the tooltip displayed when +the mouse is over a sequence's ID.

    +

    Sequence Name Italics - select to apply the italicised +vbersion of the font to sequence labels.

    +

    Smooth Font - Toggles anti-aliasing on / off for faster +rendering of the alignment.

    +

    Wrap Alignment - Select whether to open new alignment +windows in wrapped mode or not.

    +

    Gap Symbol - The default gap symbol may be set to either +"-" or "."

    +

    Colour - The default colour scheme for a new alignment +window. If the chosen option is "User Defined" then the last +User Defined Colour loaded or saved via the User Defined Colours panel +will be loaded.

    +

    Sort by - When the alignment is loaded in, it will can +be sorted by Id or pairwise identity.

    +

    Open file - If this is selected then the default +alignment file will be opened when Jalview is started. You can change +the default file by clicking on file name and either typing in the file +path or selecting it from the file chooser window.

    +

    "Connections" +Preferences tab

    +

    URL Link From Sequence ID
    +These definitions are used to generate URLs from a sequence's ID or +database cross references. Read more about configuring URL links +here.

    +

    Default Browser (Unix)
    +Its difficult in Java to detect the default web browser for Unix users. +If Jalview can't find your default web browser, enter the name or full +path to your web browser application.

    +

    Proxy Server
    +If you normally use a proxy server for using the internet, you must tick +the box "Use a Proxy Server" and enter the address and port +details as necessary. Web Services will not work if you are using a +proxy server and do not enter the settings here.

    +

    Usage statistics, Questionnaire and Version checks
    +Uncheck these options to prevent Jalview from submitting usage +statistics to google analytics, checking for jalview questionnaires or +retrieving details of the latest release version (at www.jalview.org). +See the user privacy statement for more +information.

    +

    Output Preferences tab

    +

    EPS Rendering Style
    +This is a selection box which allows the user to set a default rendering +style for EPS export: +

      +
    • "Lineart"
      + EPS files will accurately reproduce the alignment view in Jalview and + all characters will be converted into line art. Files generated in this + way are large and are not easily editable, but have no font table + dependencies.
    • +
    • "Text"
      + EPS files will be a mixture of text and lineart. This produces compact + files that can be edited easily in programs like Microsoft Word and + Adobe Illustrator, but can be problematic if the fonts available to + jalview are not accessible by the program reading the EPS file. +
    • "Prompt each time"
      + Choose this to be asked select between Lineart and Text each time you + make an EPS file.
    • +
    +

    +

    Sequence//Start-End Numbering
    +The output tab also has a group of checkboxes for each file format. If +these are ticked, then Jalview will write files with the start and end +sequence positions appended to each sequence id:

    +  >ID/1-10
    +  AACDEAAFEA
    +
    +

    If the boxes are left unchecked for a particular format, the +sequence limits will not be appended to the sequence id.

    +

    +

    Use Modeller Output

    +

    This option only applies to PIR format output. Jalview +automatically reads PIR files with sequence descriptions compatible with +the program Modeller. If this +option is selected Jalview will +write Modeller style PIR files with correct start/end numbering and PDB +file association (if available). The Jalview id/start-end option is +ignored if Modeller output is selected. +

    Editing Preferences tab

    +

    There are currently 2 options available which can be selected / +deselected.

    +

    AutoCalculate Consensus - For large alignments it can be +useful to deselect "Autocalculate Consensus" when editing. +This prevents lengthy calculations which are performed after each +sequence edit. New alignment windows will have their "Autocalculate +Consensus" option set according to this setting.

    +

    Pad gaps when editing - New alignment windows will +"Pad Gaps" according to this setting.

    +

     

    +

     

    + + diff --git a/help/html/features/search.html b/help/html/features/search.html index 1737668..6afbcdb 100755 --- a/help/html/features/search.html +++ b/help/html/features/search.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Search + diff --git a/help/html/features/seqfeatures.html b/help/html/features/seqfeatures.html index e18e273..0c9313e 100755 --- a/help/html/features/seqfeatures.html +++ b/help/html/features/seqfeatures.html @@ -16,3 +16,66 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Sequence Features + + +

    Sequence Features

    +

    Jalview can colour parts of a sequence based on the presence of +sequence features - which may be retrieved from database records (such +as Uniprot), the result of sequence motif +searches or simply read from a sequence +features file. You can also create +features from the results of searches or the current selection, and edit features by double clicking on +them.

    +

    Sequence Feature Colouring Styles

    +

    By default, Jalview will assign a color to each feature based on +its type. These colours can be changed from the feature settings and amend features dialog boxes. Since +Jalview 2.5, it is also possible to define feature +colourschemes to shade features based on their associated scores or text +labels.

    +

    Sequence Feature Groups

    +

    Since Jalview 2.08, sequence features assigned to a sequence can +be organised into groups, which may indicate that the features were all +retrieved from the same database (such as Uniprot features), or +generated by the same analysis process (as might be specified in a sequence features file).

    +

    Sequence Feature Inheritance

    +

    Since Jalview 2.08, sequence features are global to a +set of sequences appearing (independently or together) in many different +alignments. Practically, this means features loaded onto one alignment +can be viewed in any alignments involving the same sequences. The same +sequence appears in different alignments when a new alignment is +generated by submitting an existing set of sequences to one of the +alignment or prediction web services, and when sequences are copied and +pasted into other alignment windows.

    +

    View→Show Sequence Features

    +

    Toggle the display of sequence features in this alignment. If +feature retrieval has not already been carried out, then Jalview will +automatically try to fetch sequence features (as described below).

    +

    View→Sequence Feature Settings...

    +

    Once sequence features have been loaded, their display can be +fully controlled using the alignment window's Sequence Feature Settings dialog box. +Feature colour schemes and display parameters are unique to a particular +alignment, so it is possible to colour the same sequence features +differently in different alignment views.
    +Since Jalview 2.1, it is possible to add DAS +features to an alignment via the DAS tabbed pane of the feature settings +window.

    +

    View→Sequence ID Tooltip→Show +Non-Positional features
    +Only available in application
    +

    +

    Toggles the display of non-positional features in the sequence ID +tooltip, and whether they will be included when sequence features are +exported using "File→Export Features".

    +

    Precalculated Sequence Features may be added to an alignment from +the command line, drag and drop, or from the "File→Load +Features / Annotations" menu item. See the Features File Format for more details.

    + + diff --git a/help/html/features/seqfetch.html b/help/html/features/seqfetch.html index e18e273..d8415c7 100755 --- a/help/html/features/seqfetch.html +++ b/help/html/features/seqfetch.html @@ -16,3 +16,36 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Sequence Fetcher + +

    Sequence Fetcher

    +

    Jalview can retrieve sequences from certain databases using either the +WSDBFetch service provided by the European Bioinformatics Institute, and, since Jalview 2.4, DAS servers capable of the sequence command (configured in DAS settings).

    +The Jalview Sequence Fetcher Dialog Box +

    The Sequence Fetcher dialog box can be opened via the "File" + menu on the main desktop in order to retrieve sequences as a new + alignment, or opened via the "File" menu of an existing alignment + to import additional sequences. Please note, there will be a short delay when the sequence fetcher is first opened, + whilst Jalview compiles the list of available sequence datasources from the + currently defined DAS server registry. +

    +

    First, select the database you want to retrieve sequences from. Then, enter + one or more accession ids (as a semi-colon separated list), or press the + "Example" button to paste the example accession for the currently selected database into the retrieval box. + Finally, press "OK" to initiate the retrieval.

    +

    + If you are retrieving sequences from the PDB, you can retrieve + specific chains by appending a colon and the chain id to the PDB + id. For example :

     1GAQ:A

    When retrieving from DAS sequence sources, + coordinate range arguments can be passed to the server using the standard DAS + sequence command format (:<start>,<end>)

    +

    If you use the WSDBFetch sequence fetcher services (EMBL, Uniprot, PDB and PFAM) + in work for publication, please cite:

    +

    Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate J., Velankar + S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez R.
    + SOAP-based services provided by the European Bioinformatics Institute.
    + Nucleic Acids Res. 33(1):W25-W28 (2005)
    +
    +

    + + diff --git a/help/html/features/seqmappings.html b/help/html/features/seqmappings.html index 66edaf9..f2a9dbd 100644 --- a/help/html/features/seqmappings.html +++ b/help/html/features/seqmappings.html @@ -15,4 +15,25 @@ * 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 . ---> +--> + +Mapping Between Different Sequences + + +

    Mapping Between Different Sequences

    +

    A new feature in Jalview 2.3 is the ability to map between sequences in different + domains, based on alignment, or by the use of explicit mappings provided by + databases.

    +

    The most familiar mapping is the one used to identify +the coordinates corresponding to a displayed sequence when +viewing a PDB file associated with a sequence (see +"Viewing PDB Files" +for more information.

    +

    The newest form of mapping supported by Jalview is the +correspondence between DNA and protein sequences. This mapping +can be imported directly from EMBL and EMBLCDS database records +retrieved by the Sequence Fetcher, +and allows sequence features to be mapped directly from Uniprot +das sources to their coding region on EMBL sequence records. + + diff --git a/help/html/features/viewingpdbs.html b/help/html/features/viewingpdbs.html index e18e273..d979254 100755 --- a/help/html/features/viewingpdbs.html +++ b/help/html/features/viewingpdbs.html @@ -16,3 +16,53 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +PDB Viewing + +

    Viewing PDB Structures

    +

    Jalview can view protein structures associated with a sequence via the "Structure→View + PDB entry:" entries from a sequence's pop-up menu. This will open an + interactive display of the structure in a new window, or prompt you + to associate the sequence with an existing view of the selected + structure. See the Jmol PDB viewer help page + for more information about the display. +

    +

    To associate PDB files with a sequence, right click on a sequence ID and select + "Structure Associate Structure with Sequence", + and one of the submenus:

    +
      +
    • From File - You can load a PDB file from the local machine or network and + associate it with the selected sequence. PDB files associated in this way + will also be saved in the Jalview Archive file.
      +
    • +
    • Enter PDB Id - Jalview will use WSDBFetch, provided by the EBI, to fetch + the PDB file with the entered Id.
      +
    • +
    • Discover PDB Ids - Jalview uses WSDBFetch, provided by the EBI, to discover + PDB ids for all the sequences in the alignment which have valid Uniprot names + / accession ids.
    • +
    +

    Importing PDB Entries or files in PDB format
    +You can retrieve sequences from the PDB using the Sequence Fetcher. Any sequences retrieved with this + service are automatically associated with their source database entry. For PDB + sequences, simply select PDB as the database and enter your known PDB id (appended + with ':' and a chain code, if desired). +
    Jalview will also read PDB files directly. Simply load in the file +as you would an alignment file. The sequences of any peptide chains +will be extracted from the file and viewed in the alignment window. +
    Note for jalview applet users: due to the applet security +constraints, PDB Files can currently only be imported by cut and paste +of the PDB file text into the text box opened by the 'From File' entry +of the structure menu.

    +

    Viewing the PDB Residue Numbering
    +Sequences which have PDB entry or PDB file associations are annotated +with sequence features from a group named with the associated PDB +accession number or file name. Each feature gives the corresponding +PDB Residue Number for each mapped residue in the seuqence. The +display of these features is controlled through the +"View→Sequence Features" menu item +and the Feature Settings dialog +box.

    + + diff --git a/help/html/features/wrap.html b/help/html/features/wrap.html index e18e273..be160db 100755 --- a/help/html/features/wrap.html +++ b/help/html/features/wrap.html @@ -16,3 +16,320 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Wrap Alignment + + +

    View→Wrap alignment

    +

    Use this feature to wrap an alignment to the screen width.

    +

    All output (HTML, Printing, JPG etc) will also be in this wrapped format.

    +

    This is most useful when looking at alignments with less than 20 sequences. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     10
    + |
    20
    + |
    ADHR_DROPS/7-107  KHVCYVADCGGIALETSKVLMTKNIA
    ADH_DROHE/5-105  SNIIFVAGLGGIGLDTSREIVKSGPK
    PGDH_HUMAN/6-106  KVALVTGAAQGIGRAFAEALLLKG.A
     36
    + |
    46
    + |
    ADHR_DROPS/7-107  KLAILQSVENPP........AIAQLQ
    ADH_DROHE/5-105  NLVVLDRIDNPAA........IAELK
    PGDH_HUMAN/6-106  KVALVDWNLEAG.......VQCKAAL
     62
    + |
    72
    + |
    ADHR_DROPS/7-107  SIKHS....TQIFFWTFDVTMAREEM
    ADH_DROHE/5-105  ALNP....KVTITFYPYDVTVPLAET
    PGDH_HUMAN/6-106  DEQFEP...QKTLFIQCDVADQQQL.
    +
    + + + + diff --git a/help/html/index.html b/help/html/index.html index e18e273..293790e 100755 --- a/help/html/index.html +++ b/help/html/index.html @@ -16,3 +16,21 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Home Page + + + +

    +Jalview Documentation
    +

    +Jalview (2009) is a fast Java multiple alignment editor and analysis tool. It +features many of the functions of AMAS, +for the analysis of sub-families and the prediction of functional sites, but is +fully interactive. (View the Jalview homepage). +

    +

    If you use Jalview in your work, please cite the Jalview 2 paper in Bioinformatics:

    +

    Waterhouse, A.M., Procter, J.B., Martin, D.M.A, Clamp, M., Barton, G.J (2009),
    + "Jalview version 2: A Multiple Sequence Alignment and Analysis Workbench,"
    + Bioinformatics 25 (9) 1189-1191 doi: 10.1093/bioinformatics/btp033 + + diff --git a/help/html/io/export.html b/help/html/io/export.html index e18e273..0b4b721 100755 --- a/help/html/io/export.html +++ b/help/html/io/export.html @@ -16,3 +16,42 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Exporting alignments as artwork + + +

    Exporting alignments as graphics and lineart

    +

    The alignment view can be printed using +File→Print, or exported in a number of ways via the +File→Export menu: +

      +
    • HTML
      for viewing in a web browser +
    • +
    • PNG - a Portable Networks Graphics image
      For low quality +diagrams and powerpoint presentations +
    • +
    • EPS - an Encapsulated Postscript Document
      For high quality +diagrams and publications. +
    + +

    Tips for working with EPS Files

    +
  7. The EPS file generated by jalview contains vector graphics which are directly + editable in graphics applications such as Adobe Illustrator.
  8. +
  9. EPS files can be produced as "Text" or "Lineart". Use + "Text" if you want the final document to be MUCH smaller in diskspace + and be able to search, edit and select text. Use "Lineart" if you + want an exact image of the alignment as displayed in Jalview. This is useful + if a 3rd Party EPS viewer does not have the same Font which the EPS file was + created with.
  10. +
  11. When importing an EPS into to a Microsoft office document, a snapshot image of the + file will be displayed which often looks blurred. Right-click the + image and choose "Edit image." to convert it to word + drawing objects which give a truer WYSIWIG representation. +
  12. +
  13. + Mac OSX users will find that eps files are automatically converted into + PDF files. +
  14. +

    + + diff --git a/help/html/io/fileformats.html b/help/html/io/fileformats.html index 797a7c4..c62c077 100755 --- a/help/html/io/fileformats.html +++ b/help/html/io/fileformats.html @@ -16,6 +16,14 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Alignment Fileformats + diff --git a/help/html/io/index.html b/help/html/io/index.html index e18e273..b149bfc 100755 --- a/help/html/io/index.html +++ b/help/html/io/index.html @@ -16,3 +16,59 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Input/Output + + +

    Input

    +

    Jalview can read alignment files in any of the following standard +formats:

    +

    Fasta (Pearson), GCG-MSF, ALN/ClustalW, AMPS Block file, +NBRF/PIR (including MODELLER variant), Pfam/Stockholm

    +

    The EBI has examples +of these file formats.

    +

    Additionally, whole sets of coloured and annotated alignments and +trees can be read from a Jalview +(jar) format file using Desktop→Load Project.

    +

    Press "Control O" to open a file browser, or use +the Desktop→Input Alignment menu to read in +alignments from:

    +
      +
    • From File: the local file system
    • +
    • From URL: the web (please use the full url)
    • +
    • from Textbox: a copy and paste into the + "Cut & Paste" text window
    • +
    +

    Jalview will try to recognise the file type automatically (using +some special features). If a file is of +an unknown format or there is any other error reading the alignment file +then you will be given an error message. If you think Jalview really +should be able to read your file, then send an email containing the +problem file to help@jalview.org.

    +

    Jalview can also read jalview specific files for sequence features and alignment annotation.

    +

    Output

    +

    Each alignment, whether it is the original or an edited version +may be saved in the standard formats using File→Save +As

    +

    Fasta (Pearson), GCG-MSF, ALN/ClustalW, AMPS Block file, +NBRF/PIR, Pfam/Stockholm

    +Jalview will by default append the sequence start and end to each +sequence name, in the format /start-end. If you do not want this +behaviour for a particular file output, open the "Output" tab +on the +Preferences +window where you can select which file formats you want to append the +start and end sequence positions for. In the case of PIR format, the +output tab also contains a switch for turning on the output of Modeller +style structured description lines. +

    Quantitative and symbolic alignment +annotation can be exported as a comma separated value file by right +clicking on an annotation row under the alignment.

    +

    You can also save the current set of alignments and their +colours, annotations and trees in a Jalview archive file using Desktop→Save +project.

    +

     

    + + diff --git a/help/html/io/modellerpir.html b/help/html/io/modellerpir.html index e18e273..65e41bc 100755 --- a/help/html/io/modellerpir.html +++ b/help/html/io/modellerpir.html @@ -16,3 +16,47 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Modeller PIR Format IO + + +

    Modeller PIR Format IO

    +

    The homology modelling program, Modeller uses a special form +of the PIR format where information about sequence numbering and chain +codes are written into the 'description' line between the PIR protein +tag and the protein alignment entry:

    +
    >P1;Q93Z60_ARATH
    +sequence:Q93Z60_ARATH:1:.:118:.:.
    +----MASTALSSAIVSTSFLRRQQTPISLRSLPFANT-QSLFGLKS-STARGGRVTAMATYKVKFITPEGEQ
    +EVECEEDVYVLDAAEEAGLDLPYSCRAGSCSSCAGKVVSGSIDQSD------QSFLD-D-------------
    +---------------------*
    +>P1;PDB|1FER|_
    +structureX:1FER:1:.:105:.:.
    +----------------------------------------------------AFVVTDNCIKCKY---TDCV
    +EV-CPVDCFY----EGPNFLVIHPDECIDCALCEPECPAQAIFSEDEVPEDMQEFIQLNAELAEVWPNITEK
    +KDPLPDAEDWDGVKGKLQHLE*
    +
    +

    Jalview will attempt to parse any PIR entries conforming to the +Modeller/PIR format, in order to extract the sequence start and end +numbering and (possibly) a PDB file reference. The description line +information is always stored in the sequence description string - so +no information is lost if this parsing process fails.

    +

    The 'Modeller Output' flag in the 'Output' tab of the Jalview Preferences dialog +box controls whether Jalview will also output MODELLER style PIR +files. In this case, any existing 'non-modeller PIR' header +information in the description string of an alignment is appended to +an automatically generated modeller description line for that +sequence.

    +

    The general format used for generating the Modeller/PIR sequence +description line is shown below : +

    >P1;Primary_Sequence_ID
    +sequence or structureX:pdb-reference if
    +  available:start residue:start chain code:end
    +  residue:end chain code:. description text
    +The first field is either sequence or structureX, depending upon the +presence of a PDB database ID for the sequence. If the protein has no +PDB reference, then the chain code is not specified, unless one +already existed when the sequence was imported into Jalview. + + diff --git a/help/html/jalviewjnlp.html b/help/html/jalviewjnlp.html index e18e273..0eacdb4 100755 --- a/help/html/jalviewjnlp.html +++ b/help/html/jalviewjnlp.html @@ -16,3 +16,62 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Jalview local Jnlp File + + +

    Jalview local Jnlp File

    +
    +<jnlp spec="1.0+" codebase="http://www.jalview.org/webstart/" href="http://www.jalview.org/webstart/jalview.jnlp">
    +  <information>
    +    <title>Jalview</title>
    +    <vendor>The Barton Group</vendor>
    +    <homepage href="http://www.jalview.org"/>
    +    <description>Jalview Multiple Alignment Editor</description>
    +    <description kind="short">Jalview</description>
    +    <icon href="http://www.jalview.org/webstart/logo_big.gif" kind="default"/>
    +    <association extensions="fa" mime-type="application-x/ext-file"/>
    +    <association extensions="fasta" mime-type="application-x/ext-file"/>
    +    <association extensions="fastq" mime-type="application-x/ext-file"/>
    +    <association extensions="blc" mime-type="application-x/ext-file"/>
    +    <association extensions="msf" mime-type="application-x/ext-file"/>
    +    <association extensions="pfam" mime-type="application-x/ext-file"/>
    +    <association extensions="aln" mime-type="application-x/ext-file"/>
    +    <association extensions="pir" mime-type="application-x/ext-file"/>
    +    <offline-allowed/>
    +  </information>
    +  <security>
    +    <all-permissions/>
    +  </security>
    +  <resources>
    +  <!-- the additional memory parameters are here -->
    +  <j2se version="1.4+" initial-heap-size="500M" max-heap-size="1000M"/>
    +    <jar href="jalview.jar"/>
    +		<jar href="JGoogleAnalytics_0.2.jar"/>
    +		<jar href="Jmol-11.0.2.jar"/>
    +		<jar href="activation.jar"/>
    +		<jar href="axis.jar"/>
    +		<jar href="castor-1.1-cycle-xml.jar"/>
    +		<jar href="commons-discovery.jar"/>
    +		<jar href="commons-logging.jar"/>
    +		<jar href="jaxrpc.jar"/>
    +		<jar href="jhall.jar"/>
    +		<jar href="log4j-1.2.8.jar"/>
    +		<jar href="mail.jar"/>
    +		<jar href="regex.jar"/>
    +		<jar href="saaj.jar"/>
    +		<jar href="vamsas-client.jar"/>
    +		<jar href="wsdl4j.jar"/>
    +		<jar href="xercesImpl.jar"/>
    +		<jar href="xml-apis.jar"/>
    +		<property name="jalview.version" value="2.4.0.b2"/>
    +  </resources>
    +  <application-desc main-class="jalview.bin.Jalview"/>
    +</jnlp>
    +
    +
    +If you have problems, send an email to jalview-discuss +
    + + diff --git a/help/html/keys.html b/help/html/keys.html index e18e273..161f709 100755 --- a/help/html/keys.html +++ b/help/html/keys.html @@ -16,3 +16,249 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Key Strokes + +

    Key Strokes

    +

    +Jalview has two distinct modes of keyboard operation - in 'Normal' + mode, single keystrokes (including those shown next to menu items) + provide short cuts to common commands. In 'Cursor' mode (enabled by + F2), some of these are disabled and more complex 'Compound + Keystrokes' can be entered to perform precise navigation, selection + and editing operations. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    KeyWhich ModeAction
    EscapeNormalClears the current selection region, highlighted columns and highlghted + residues.
    EscapeCursorAs in normal mode, but also cancels any partially entered commands
    F1BothShow Help Documentation
    F2Toggle Cursor mode on / off
    Control 'Z'BothUndoes the last sequence edit
    Control 'Y'BothRedo the last sequence edit undone.
    Up ArrowNormalMoves selected sequence(s) up the alignment
    Down ArrowNormalMoves selected sequence(s) down the alignment.
    Left ArrowNormal Slides selected sequence(s) left. Press Alt key to slide in cursor mode
    Right ArrowNormalSlides selected sequence(s) right. Press Alt key to slide in cursor mode
    Cursor Keys
    + (Arrow Keys)
    CursorMove cursor around alignment
    Page UpBothScroll up the alignment view
    Page DownBothScroll down the alignment view
    Control 'A'BothSelects all sequences in the alignment
    Control 'I'Both Invert sequence selection.
    Control Alt 'I'Both Invert column selection.
    Control 'C'BothCopies the selected region into the clipboard as a Fasta format file
    + nb. not available in applet, as no clipboard is available
    Control 'V'Both Paste the contents of the clipboard to the current alignment window. + (Alignment Window->Edit->Paste->Add to this Alignment)
    nb. if the + paste is from a Jalview alignment, any sequence and alignment annotations + will also be copied over.
    Control Shift 'V'BothPaste the contents of the clipboard to a new alignment window. (Alignment + Window->Edit->Paste->To New Alignment)
    Control 'X'BothCuts the (fully) selected sequences from the alignment. + +
    Control 'F'BothLaunches the search window
    HBothHides / Reveals selected columns and sequences
    Control 'H'BothHides / Reveals selected columns
    Shift 'H'BothHides / Reveals selected sequences
    Control + Shift 'H'BothHides everything but the current selection
    Control 'O'BothInput new alignment from file
    Control 'S'BothSave alignment with current filename and format
    Control Shift 'S'BothSave alignment as a new file or with a different format
    Control 'P'BothOpens the print dialog box to print the current view
    Control 'W'BothCloses the current view or the current alignment
    BackspaceNormalDelete the currently selected rows or columns from the alignment.
    Control 'L'LeftRemove columns to left of left-most column marker.
    Control 'R'BothRemove columns to right of right-most column marker.
    Control 'E'BothRemove gapped columns
    Control Shift 'E'BothRemove all gaps
    Control 'D'BothOpen the 'Remove redundancy' Dialog box.
    Normal
    +

    The compound commands available in the Cursor mode are summarised +below. Single letter commands can be prefixed by digits to specify a repetition +number, and some more complex commands take one or more numeric +parameters (prefixing the command key and separated by commas).

    + + + + + + + + + + + +
    Compound +CommandModeAction (and parameter description)
    0-9CursorBegin entering a +numeric parameter (p) or repetition number for a cursor movement or edit +command.
    ,CursorSeparates one or +more numeric parameters (e.g. p1,p2) for a command.
    p1,p2
    Return
    CursorMove cursor to a particular column (p1) and row (p2) in the alignment.
    e.g. '5,6<Return>' moves the cursor to the 5th column in the 6th sequence.
    pSCursorJump to the p'th sequence in the alignment.
    pPCursorJump to p'th amino acid in current sequence.
    pCCursorJump to p'th column in the alignment.
    QCursorMarks the top left corner of the selection area
    MCursorMarks the bottom right corner of the selection area
    [p]
    Space
    CursorInserts +one (or optionally p) gaps at the current position.
    Hold down Control or Shift to insert gaps over a sequence group
    [p]
    Delete
    CursorRemoves +one (or optionally p) gaps at the cursor position.
    Hold down Control or Shift to insert gaps over a sequence group
    [p]
    Backspace
    CursorRemoves +one (or optionally p) gaps at the cursor position.
    Hold down Control or Shift to insert gaps over a sequence group
    +

     

    +

     

    + + diff --git a/help/html/memory.html b/help/html/memory.html index e18e273..30a038c 100755 --- a/help/html/memory.html +++ b/help/html/memory.html @@ -16,3 +16,103 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Memory Settings + +

    +
    + Memory Usage Settings for Jalview +
    +

    +

    Jalview sometimes runs out of memory. This is because of the way that Java + runs on a computer - what is actually run is a program called a virtual machine + (the JVM) which executes the java instructions. The JVM has limits on the memory + that can be allocated to the java program - and you might need to increase them + if you are working with particularly large datasets.
    + If Jalview has not explicitly told you that it has run out of memory, then a + common sign is that a function that normally works seems to have no effect when + working with a larger set of sequences (this might include open dialog boxes + for saving PNG files, or when interpreting the result of a web service calculation).

    +

    Jalview Memory Usage Monitor: If you are concerned about memory, or think that things might be behaving + strangely because of a shortage of memory, then you can check this by enabling the + memory usage monitor. This is done by selecting the Tools→Show Memory Usage + option. Once enabled, the memory usage monitor displays the currently + available memory, the total memory, and the percentage free at the + bottom left hand side of the Jalview Desktop window's background.

    +

    Increasing the memory available to Jalview
    +The way you increase the memory settings for the JVM depends on which installation + of Jalview you use:

    +
      +
    • Web Start Version +

      JavaWS sets the JVM parameters through special tags in the JNLP file. You'll + need to make your own jnlp file and add the following parameter into the + <resources> element. +

      +<j2se version="1.4+" initial-heap-size="500M" max-heap-size="1000M"/>
      +
      + Save the jnlp file somewhere and then - if you start Jalview through your + web browser, point your browser at the file's url, othewise simply run javaws + with the file location as its argument. The file's url is something like :
      +
      +file://<full path to file>
      +
      + If jalview doesn't start up, see below. You'll have + to edit the above settings in the JNLP file using a text editor, save it, + and try starting Jalview with it once more. +

    • +
    • Install Anywhere version +

      You need to change the InstallAnywhere configuration settings for the + application. These are found in different places depending upon which operating + system you have : +

        +
      • Unix/Windows +

        Take a look inside the Jalview program installation directory (this + might be in C:\Program Files\Jalview on windows). You should find a + file called 'Jalview.lax' in it - make a backup, and then add the following + lines to the end of the original file : +

        +lax.nl.java.option.java.heap.size.max=1000m
        +lax.nl.java.option.java.heap.size.initial=500m
        +
        + Case and (lack of) spaces are important here! Do not add any spaces after + the m in each line, and do not put any spaces before 'lax'.
        + Also there MUST be a carriage return after the final line. +

        +
      • +
      • Mac OSX +

        The lines you need to change are in the Info.plist file inside + the Jalview.app/Contents directory (which is where the installAnywhere + installation was made) : +

        +<key&ht;VMOptions</key&ht;
        +<array>
        +! <string>-Xms2M</string>
        +! <string>-Xmx64M</string>
        +</array>
        +
        + Exchange the above two string tags for : +
        +<string>-Xms500M</string>
        +<string>-Xmx1000M</string>
        +
        +

        +
      • +
      +
    • In all cases
      + Save the file and try to start Jalview in the normal way. If it doesn't start, + see below...
    • +
    +Jalview doesn't start... What do the memory settings mean ? +

    The 1000m value corresponds to the maximum number of megabytes of space that + java objects can occupy. The 500m is the initial heap size that java will run + in - increasing this can speed up memory allocation if you know you will need + 500 meg of memory to begin with (ie it should speed up loading large alignments). +

    +

    If, after setting the initial and maximum heap size to some large value, you + cannot actually start Jalview, then the max and initial sizes are too big for + your machine (there seems to be a physical limit related to physical RAM - email + the usual address to enlighten us if you know better!). Our experiments found + 1000m to be the biggest setting that could be used on a 1GB machine. Just try + reducing the sizes until Jalview starts up properly!

    +

     

    + + diff --git a/help/html/menus/alignmentMenu.html b/help/html/menus/alignmentMenu.html index e18e273..f23c1b7 100755 --- a/help/html/menus/alignmentMenu.html +++ b/help/html/menus/alignmentMenu.html @@ -16,3 +16,489 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Alignment Window Menus + + + +

    Alignment Window Menus

    +
  15. File +
      +
    • Fetch Sequence
      + Shows a dialog window in which you can select known ids from + Uniprot, EMBL, EMBLCDS or PDB database using Web Services provided by + the European Bioinformatics Institute. See Sequence Fetcher.
    • +
    • Add Sequences
      + Add sequences to the visible alignment from file, URL, or cut & + paste window
    • +
    • Reload
      + Reloads the alignment from the original file, if available.
      + Warning: This will delete any edits, analyses and + colourings applied since the alignment was last saved, and cannot be + undone.
    • +
    • Save (Control S)
      + Saves the alignment to the file it was loaded from (if available), in + the same format, updating the original in place.
    • +
    • Save As (Control Shift S)
      +
      Save the alignment to local file. A file selection window + will open, use the "Files of type:" selection box to + determine which alignment format to + save as.
    • +
    • Output to Textbox
      +
      The alignment will be displayed in plain text in a new + window, which you can "Copy and Paste" using the pull down + menu, or your standard operating system copy and paste keys. The + output window also has a "New Window" + button to import the (possibly edited) text as a new alignment.
      + Select the format of the text by selecting one of the following menu + items.
      +
        +
      • FASTA
      • +
      • MSF
      • +
      • CLUSTAL
      • +
      • BLC
      • +
      • PIR
      • +
      • PFAM
      • +
      +
    • +
    • Print (Control P)
      +
      Jalview will print the alignment using the current fonts and + colours of your alignment. If the alignment has annotations visible, + these will be printed below the alignment. If the alignment is wrapped + the number of residues per line of your alignment will depend on the + paper width or your alignment window width, whichever is the smaller. +
    • +
    • Export Image
      + Creates an alignment graphic with the current view's annotation, + alignment background colours and group colours. If the alignment is wrapped, the output will also be + wrapped and will have the same visible residue width as the open + alignment.
      + +
    • +
    • Export Features
      + All features visible on the alignment can be saved to file or + displayed in a textbox in either Jalview or GFF format
    • +
    • Export Annotations
      + All annotations visible on the alignment can be saved to file or + displayed in a textbox in Jalview annotations format.
    • +
    • Load Associated Tree
      +
      Jalview can view + trees stored in the Newick file format, and associate them with the + alignment. Note: the ids of the tree file and your alignment MUST be + the same.
    • +
    • Load Features / Annotations
      +
      Load files describing precalculated sequence features or alignment annotations.
    • +
    • Close (Control W)
      + Close the alignment window. Make sure you have saved your + alignment before you close - either as a Jalview project or by using + the Save As menu.
    • +
    +
  16. +
  17. Edit +
      +
    • Undo (Control Z)
      + This will undo any edits you make to the alignment. This applies to + insertion or deletion of gaps, cutting residues or sequences from the + alignment or pasting sequences to the current alignment or sorting the + alignment. NOTE: It DOES NOT undo colour changes, + adjustments to group sizes, or changes to the annotation panel.
    • +
    • Redo (Control Y)
      +
      Any actions which you undo can be redone using redo.
    • +
    • Cut (Control X)
      +
      This will make a copy of the currently selected residues + before removing them from your alignment. Click on a sequence name if + you wish to select a whole sequence.
      + Use <CTRL> and X (<APPLE> and X on MacOSX) to cut.
    • +
    • Copy (Control C)
      + Copies the currently selected residues to the system + clipboard - you can also do this by pressing <CTRL> and C + (<APPLE> and C on MacOSX).
      + If you try to paste the clipboard contents to a text editor, you will + see the format of the copied residues FASTA.
    • +
    • Paste +
        +
      • To New Alignment (Control Shift V)
        +
        A new alignment window will be created from sequences + previously copied or cut to the system clipboard.
        + Use <CTRL> and <SHIFT> and V(<APPLE> and + <SHIFT;> and and V on MacOSX) to paste.
      • +
      • Add To This Alignment (Control V)
        +
        Copied sequences from another alignment window can be added + to the current Jalview alignment.
      • +
      +
    • +
    • Delete (Backspace)
      +
      This will delete the currently selected residues without + copying them to the clipboard. Like the other edit operations, this + can be undone with Undo.
    • +
    • Remove Left (Control L)
      +
      If the alignment has marked columns, the alignment will be + trimmed to the left of the leftmost marked column. To mark a column, + mouse click the scale bar above the alignment. Click again to unmark a + column, or select "Deselect All" to deselect all columns.
    • +
    • Remove Right (Control R)
      +
      If the alignment has marked columns, the alignment will be + trimmed to the left of the leftmost marked column. To mark a column, + mouse click the scale bar above the alignment. Click again to unmark a + column, or select "Deselect All" to deselect all columns.
    • +
    • Remove Empty Columns (Control E)
      +
      All columns which only contain gap characters ("-", + ".") will be deleted.
      + You may set the default gap character in preferences.
    • +
    • Remove All Gaps (Control Shift E)
      + Gap characters ("-", ".") will be deleted + from the selected area of the alignment. If no selection is made, ALL + the gaps in the alignment will be removed.
      + You may set the default gap character in preferences.
    • +
    • Remove Redundancy (Control D)
      +
      Selecting this option brings up a window asking you to select + a threshold. If the percentage identity between any two sequences + (under the current alignment) exceeds this value then one of the + sequences (the shorter) is discarded. Press the "Apply" + button to remove redundant sequences. The "Undo" button will + undo the last redundancy deletion.
    • +
    • Pad Gaps
      +
      When selected, the alignment will be kept at minimal width + (so there no empty columns before or after the first or last aligned + residue) and all sequences will be padded with gap characters to the + before and after their terminating residues.
      + This switch is useful when making a tree using unaligned sequences and + when working with alignment analysis programs which require 'properly + aligned sequences' to be all the same length.
      + You may set the default for Pad Gaps in the preferences.
    • +
    +
  18. +
  19. Select +
      +
    • Find... + (Control F)
      + Opens the Find dialog box to search for residues, sequence name or + residue position within the alignment and create new sequence features + from the queries.
    • +
    • Select All (Control A)
      +
      Selects all the sequences and residues in the alignment.
      + Use <CTRL> and A (<APPLE> and A on a MacOSX) to select + all.
    • +
    • Deselect All (Escape)
      +
      Removes the current selection box (red dashed box) from the + alignment window. All selected sequences, residues and marked columns + will be deselected.
      + Use <ESCAPE> to deselect all.
    • +
    • Invert Sequence Selection (Control I)
      +
      Any sequence ids currently not selected will replace the + current selection.
    • +
    • Invert Column Selection (Control Alt I)
      +
      Any columns currently not selected will replace the current + column selection.
    • +
    • Undefine Groups (Control U)
      +
      The alignment will be reset with no defined groups.
      + WARNING: This cannot be undone.
    • +
    • Make Groups
      + The currently selected groups of the alignment will be + subdivided according to the contents of the currently selected region. +
      Use this to subdivide an alignment based on the + different combinations of residues observed at specific + positions. (new in jalview 2.5)
    • +
    +
  20. +
  21. View +
      +
    • New View (Control T)
      + Creates a new view from the current alignment view.
    • +
    • Expand Views (X)
      + Display each view associated with the alignment in its own alignment + window, allowing several views to be displayed simultaneously.
    • +
    • Gather Views (G)
      + Each view associated with the alignment will be displayed within its + own tab on the current alignment window.
    • +
    • Show→(all Columns / Sequences / Sequences and Columns)
      + All hidden Columns / Sequences / Sequences and Columns will be revealed.
    • +
    • Hide→(all Columns / Sequences / Selected Region / All but Selected Region )
      + Hides the all the currently selected Columns / Sequences / Region or everything but the selected Region.
    • +
    • Automatic Scrolling
      +
      When selected, the view will automatically scroll to display the + highlighted sequence position corresponding to the position under the mouse + pointer in a linked alignment or structure view. +
    • +
    • Show Annotations
      +
      If this is selected the "Annotation Panel" will be + displayed below the alignment. The default setting is to display the + conservation calculation, quality calculation and consensus values as + bar charts.
    • +
    • Autocalculated Annotation
      Settings for the display of autocalculated annotation. +
      • + Apply to all groups
        + When ticked, any modification to the current settings will be applied to all autocalculated annotation. +
      • +
      • + Show Consensus Histogram
        + Enable or disable the display of the histogram above the consensus sequence. +
      • +
      • + Show Consensus Profile
        + Enable or disable the display of the sequence logo above the consensus sequence. +
      • +
      • + Group Conservation
        + When ticked, display a conservation row for all groups (only available for protein alignments). +
      • +
      • + Apply to all groups
        + When ticked, display a consensus row for all groups. +
      • +
      +
    • +
    • Show Sequence Features
      + Show or hide sequence features on this alignment.
    • +
    • Seqence + Feature Settings...
      + Opens the Sequence Feature Settings dialog box to control the + colour and display of sequence features on the alignment, and + configure and retrieve features from DAS annotation servers.
    • +
    • Sequence ID Tooltip (application only) +
      This submenu's options allow the inclusion or exclusion of + non-positional sequence features or database cross references + from the tooltip shown when the mouse hovers over the sequence ID panel.
    • +
    • Alignment Properties...
      +
      Displays some simple statistics computed for the + current alignment view and any named properties defined on the + whole alignment.
    • +
    • Overview + Window
      +
      A scaled version of the alignment will be displayed in a + small window. A red box will indicate the currently visible area of + the alignment. Move the visible region using the mouse.
    • +
    +
  22. +
  23. Alignment Window Format Menu +
      +
    • Font...
      +
      Opens the "Choose Font" dialog box, in order to + change the font of the display and enable or disable 'smooth fonts' + (anti-aliasing) for faster alignment rendering.
    • +
    • Wrap
      +
      When ticked, the alignment display is "wrapped" to the width of the + alignment window. This is useful if your alignment has only a few + sequences to view its full width at once.
      + Additional options for display of sequence numbering and scales are + also visible in wrapped layout mode:
      +
        +
      • Scale Above
        + Show the alignment column position scale.
      • +
      • Scale Left
        + Show the sequence position for the first aligned residue in each row + in the left column of the alignment.
      • +
      • Scale Right
        + Show the sequence position for the last aligned residue in each row + in the right-most column of the alignment.
      • +
      • Show Sequence Limits
        +
        If this box is selected the sequence name will have the start + and end position of the sequence appended to the name, in the format + NAME/START-END
      • +
      • Right Align Sequence ID
        +
        If this box is selected then the sequence names displayed in + the sequence label area will be aligned against the left-hand edge of + the alignment display, rather than the left-hand edge of the alignment + window.
      • +
      • Show Hidden Markers
        +
        When this box is selected, positions in the alignment where + rows and columns are hidden will be marked by blue arrows.
      • +
      • Boxes
        + If this is selected the background of a residue will be coloured using + the selected background colour. Useful if used in conjunction with + "Colour Text."
      • +
      • Text
        +
        If this is selected the residues will be displayed using the + standard 1 character amino acid alphabet.
      • +
      • Colour Text
        +
        If this is selected the residues will be coloured according + to the background colour associated with that residue. The colour is + slightly darker than background so the amino acid symbol remains + visible.
      • +
      • Show Gaps
        +
        When this is selected, gap characters will be displayed as + "." or "-". If unselected, then gap characters + will appear as blank spaces.
        + You may set the default gap character in preferences.
      • +
      • Centre Annotation Labels
        +
        Select this to center labels along an annotation row + relative to their associated column (default is off, i.e. left-justified).
      • +
      • Show Unconserved
        +
        When this is selected, all consensus sequence symbols will be rendered as a '.', highlighting mutations in highly conserved alignments. +
      • + +
      +
    • Colour +
        +
      • Apply Colour To All Groups
        +
        If this is selected, any changes made to the background + colour will be applied to all currently defined groups.
        +
      • +
      • Colour + Text...
        + Opens the Colour Text dialog box to set a different text colour for + light and dark background, and the intensity threshold for transition + between them.
      • +
      • Colour Scheme options: None, ClustalX, + Blosum62 Score, Percentage Identity, Zappo, Taylor, Hydrophobicity, + Helix Propensity, Strand Propensity, Turn Propensity, Buried Index, + Nucleotide, User Defined
        +
        See colours for a + description of all colour schemes.
        +
      • +
      • By Conservation
        +
        See Colouring + by Conservation.
        +
      • +
      • Modify Conservation Threshold
        +
        Use this to display the conservation threshold slider window. + Useful if the window has been closed, or if the 'by conservation' + option appears to be doing nothing!
        +
      • +
      • Above Identity Threshold
        +
        See Above + Percentage Identity.
        +
      • +
      • Modify Identity Threshold
        +
        Use this to set the threshold value for colouring above + Identity. Useful if the window has been closed.
        +
      • +
      • By Annotation
        + Colours the alignment on a per-column value from a specified + annotation. See Annotation + Colouring.
        +
      • +
      +
    • +
    • Calculate +
        +
      • Sort +
          +
        • by ID
          + This will sort the sequences according to sequence name. If the sort + is repeated, the order of the sorted sequences will be inverted.
        • +
        • by Length
          + This will sort the sequences according to their length (excluding gap characters). If the sort is + repeated, the order of the sorted sequences will be inverted.
        • +
        • by Group
          +
          This will sort the sequences according to sequence name. If + the sort is repeated, the order of the sorted sequences will be + inverted.
        • +
        • by Pairwise Identity
          +
          This will sort the selected sequences by their percentage + identity to the consensus sequence. The most similar sequence is put + at the top.
        • +
        • The Sort + menu will have some additional options if you have just done a + multiple alignment calculation, or opened a tree viewer window.
          +
        • +
        +
      • +
      • Calculate Tree
        + Functions for calculating trees on the alignment or the + currently selected region. See calculating + trees. +
          +
        • Average Distance Using % Identity
        • +
        • Neighbour Joining Using % Identity
        • +
        • Average Distance Using Blosum62
        • +
        • Neighbour Joining Using Blosum62
          +
        • +
        +
      • +
      • Pairwise Alignments
        + Applies Smith and Waterman algorithm to selected sequences. + See pairwise alignments.
        +
      • +
      • Principal Component Analysis
        + Shows a spatial clustering of the sequences based on the + BLOSUM62 scores in the alignment. See Principal Component Analysis.
        +
      • +
      • Extract Scores ... (optional)
        + This option is only visible if Jalview detects one or more white-space separated values in the description line of the alignment sequences.
        + When selected, these numbers are parsed into sequence associated annotation which can + then be used to sort the alignment via the Sort by→Score menu.

        +
      • +
      • Autocalculate Consensus
        + For large alignments it can be useful to deselect + "Autocalculate Consensus" when editing. This prevents the + sometimes lengthy calculations performed after each sequence edit.
        +
      • +
      +
    • +
    • Web Service
      +
      +
      • Fetch DB References
        + This will use any of the database services that Jalview is aware + of (e.g. DAS sequence servers and the WSDBFetch service provided by the EBI) + to verify the sequence and retrieve all database cross references and PDB ids + associated with all or just the selected sequences in the alignment.
        +
      • +
      + Selecting one of the following menu items starts a remote + service on compute facilities at the University of Dundee. You need a + continuous network connection in order to use these services through + Jalview. +
        +
      • Alignment +
          +
        • ClustalW Multiple Sequence Alignment
          + Submits all, or just the currently selected sequences for + alignment with clustal W.
        • +
        • ClustalW Multiple Sequence Alignment + Realign
          + Submits the alignment or currently selected region for + re-alignment with clustal W. Use this if you have added some new + sequences to an existing alignment.
        • +
        • MAFFT Multiple Sequence Alignment
          + Submits all, or just the currently selected region for + alignment with MAFFT.
        • +
        • Muscle Multiple Protein Sequence Alignment
          + Submits all, or just the currently selected sequences for + alignment using Muscle. Do not use this if you are working with + nucleic acid sequences.
        • +
        +
      • +
      • Secondary Structure Prediction +
          +
        • JPred Secondary Structure Prediction
          + Secondary structure prediction by network consensus. The + behaviour of this calculation depends on the current selection:
        • +
        • If nothing is selected, and the displayed sequences + appear to be aligned, then a JNet prediction will be run for the + first sequence in the alignment, using the current alignment. + Otherwise the first sequence will be submitted for prediction.
        • +
        • If just one sequence (or a region on one sequence) + has been selected, it will be submitted to the automatic JNet + prediction server for homolog detection and prediction.
        • +
        • If a set of sequences are selected, and they appear + to be aligned, then the alignment will be used for a Jnet prediction + on the first sequence in the set (that is, the one + that appears first in the alignment window).
        • +
        +
      • +
      +
    • +
    + + diff --git a/help/html/menus/alwannotations.html b/help/html/menus/alwannotations.html index e18e273..93b6336 100755 --- a/help/html/menus/alwannotations.html +++ b/help/html/menus/alwannotations.html @@ -16,3 +16,72 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Annotation Panel Menus + + +

    Annotation Panel Menus

    +
      +
    • Annotation Label Popup Menu
      + This menu is opened by clicking anywhere on the annotation row labels + area (below the sequence ID area). +
        +
      • Add New Row
        + Adds a new, named annotation row (a dialog box will pop up for you + to enter the label for the new row).
      • +
      • Hide Row
        + Hides the annotation row whose label was clicked in order to bring + up the menu.
      • +
      • Delete Row
        + Deletes the annotation row whose label was clicked in order to bring + up the menu.
      • +
      • Show All Hidden Rows
        + Shows all hidden annotation rows.
      • +
      • Export Annotation (Application only)
        + Annotations can be saved to file or output to a text window in either the + Jalview annotations format or as a spreadsheet style set of comma separated values (CSV).
      • +
      • Show Values in Text Box (applet only)
        + Opens a text box with a list of comma-separated values corresponding + to the annotation (numerical or otherwise) at each position in the row. + This is useful to export alignment quality measurements for further analysis. +
      • +
      + The following additional entries are avalable when the popup menu is opened on a consensus sequence annotation row: +
        +
      • Ignore Gaps in Consensus
        + If this checkbox is selected, all consensus calculations performed in + the current Alignment window will be done without counting gaps as a consensus + character.
      • +
      • Copy Consensus Sequence
        + Copies the consensus sequence to the clipboard in Fasta format, to allow + the consensus sequence to be added to an alignment. Note the copied sequence + is not accessible to other programs if Jalview is running as an applet + in a web page.
      • +
      +
    • +
    • Annotation Popup Menu
      +
      This menu is opened when right-clicking on the selected positions + of an annotation. +
        +
      • Helix
        + Mark selected positions with a helix glyph (a red oval), and optional + text label (see below). Consecutive ovals will be rendered as an unbroken + red line.
      • +
      • Sheet
        + Mark selected positions with a sheet glyph (a green arrow oriented + from left to right), and optional text label (see below). Consecutive + arrows will be joined together to form a single green arrow.
      • +
      • Label
        + Sets the text label at the selected positions. If more that one consecutive + position is marked with the same label, only the first position's label + will be rendered.
      • +
      • Colour
        + Changes the colour of the annotation text label.
      • +
      • Remove Annotation
        + Blanks any annotation at the selected positions on the row. Note: + This cannot be undone
      • +
      +
    • +
    + + diff --git a/help/html/menus/alwcalculate.html b/help/html/menus/alwcalculate.html index e18e273..eae9c92 100755 --- a/help/html/menus/alwcalculate.html +++ b/help/html/menus/alwcalculate.html @@ -16,3 +16,66 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Alignment Window Menus + + +

    Alignment Window Calculate Menu

    +
      +
    • Sort +
        +
      • by ID
        + This will sort the sequences according to sequence name. If the sort is + repeated, the order of the sorted sequences will be inverted.
      • +
      • by Length
        + This will sort the sequences according to their length (excluding gap characters). If the sort is + repeated, the order of the sorted sequences will be inverted.
      • +
      • by Group
        +
        This will sort the sequences according to sequence name. + If the sort is repeated, the order of the sorted sequences will be inverted. +
      • +
      • by Pairwise Identity
        +
        This will sort the selected sequences by their percentage + identity to the consensus sequence. The most similar sequence is put at + the top.
      • +
      • The Sort menu will have + some additional options if the alignment has any associated + score annotation, or you have just done a multiple alignment calculation + or opened a tree viewer window.
        +
      • +
      +
    • +
    • Calculate Tree
      + Functions for calculating trees on the alignment or the currently selected + region. See calculating trees. +
        +
      • Average Distance Using % Identity
      • +
      • Neighbour Joining Using % Identity
      • +
      • Average Distance Using Blosum62
      • +
      • Neighbour Joining Using Blosum62
        +
      • +
      +
    • +
    • Pairwise Alignments
      + Applies Smith and Waterman algorithm to selected sequences. See pairwise + alignments.
      +
    • +
    • Principal Component Analysis
      + Shows a spatial clustering of the sequences based on the BLOSUM62 scores + in the alignment. See Principal Component + Analysis.
      +
    • +
    • Extract Scores ... (optional)
      + This option is only visible if Jalview detects one or more white-space separated values in the description line of the alignment sequences.
      + When selected, these numbers are parsed into sequence associated annotation which can + then be used to sort the alignment via the Sort by→Score menu.

      +
    • + +
    • Autocalculate Consensus
      + For large alignments it can be useful to deselect "Autocalculate + Consensus" when editing. This prevents the sometimes lengthy calculations + performed after each sequence edit.
      +
    • +
    + + diff --git a/help/html/menus/alwcolour.html b/help/html/menus/alwcolour.html index e18e273..f00487f 100755 --- a/help/html/menus/alwcolour.html +++ b/help/html/menus/alwcolour.html @@ -16,3 +16,46 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Alignment Window Menus + + +

    Alignment Window Colour Menu

    +
      +
    • Apply Colour To All Groups
      +
      If this is selected, any changes made to the background colour + will be applied to all currently defined groups.
      +
    • +
    • Colour + Text ...
      + Opens the Colour Text dialog box to set a different text colour for light and dark background, and the intensity threshold for transition between them. +
    • +
    • Colour Scheme options: None, ClustalX, Blosum62 Score, Percentage + Identity, Zappo, Taylor, Hydrophobicity, Helix Propensity, Strand Propensity, + Turn Propensity, Buried Index, Nucleotide, User Defined
      +
      See colours for + a description of all colour schemes.
      +
    • +
    • By Conservation
      +
      See Colouring + by Conservation.
      +
    • +
    • Modify Conservation Threshold
      +
      Use this to display the conservation threshold slider window. + Useful if the window has been closed, or if the 'by conservation' option + appears to be doing nothing!
      +
    • +
    • Above Identity Threshold
      +
      See Above Percentage + Identity.
      +
    • +
    • Modify Identity Threshold
      +
      Use this to set the threshold value for colouring above Identity. + Useful if the window has been closed.
      +
    • +
    • By Annotation
      + Colours the alignment on a per-column value from a specified annotation. + See Annotation Colouring.
      +
    • +
    + + diff --git a/help/html/menus/alwedit.html b/help/html/menus/alwedit.html index e18e273..ae97618 100755 --- a/help/html/menus/alwedit.html +++ b/help/html/menus/alwedit.html @@ -16,3 +16,86 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Alignment Window Menus + + + +

    Alignment Window Edit Menu

    +
      +
    • Undo (Control Z)
      + This will undo any edits you make to the alignment. This applies to + insertion or deletion of gaps, cutting residues or sequences from the + alignment or pasting sequences to the current alignment or sorting the + alignment. NOTE: It DOES NOT undo colour changes, + adjustments to group sizes, or changes to the annotation panel.
    • +
    • Redo (Control Y)
      +
      Any actions which you undo can be redone using redo.
    • +
    • Cut (Control X)
      +
      This will make a copy of the currently selected residues + before removing them from your alignment. Click on a sequence name if + you wish to select a whole sequence.
      + Use <CTRL> and X (<APPLE> and X on MacOSX) to cut.
    • +
    • Copy (Control C)
      + Copies the currently selected residues to the system clipboard + - you can also do this by pressing <CTRL> and C (<APPLE> + and C on MacOSX).
      + If you try to paste the clipboard contents to a text editor, you will + see the format of the copied residues FASTA.
    • +
    • Paste +
        +
      • To New Alignment (Control Shift V)
        +
        A new alignment window will be created from sequences + previously copied or cut to the system clipboard.
        + Use <CTRL> and <SHIFT> and V(<APPLE> and + <SHIFT;> and and V on MacOSX) to paste.
      • +
      • Add To This Alignment (Control V)
        +
        Copied sequences from another alignment window can be added + to the current Jalview alignment.
      • +
      +
    • +
    • Delete (Backspace)
      +
      This will delete the currently selected residues without + copying them to the clipboard. Like the other edit operations, this can + be undone with Undo.
    • +
    • Remove Left (Control L)
      +
      If the alignment has marked columns, the alignment will be + trimmed to the left of the leftmost marked column. To mark a column, + mouse click the scale bar above the alignment. Click again to unmark a + column, or select "Deselect All" to deselect all columns.
    • +
    • Remove Right (Control R)
      +
      If the alignment has marked columns, the alignment will be + trimmed to the left of the leftmost marked column. To mark a column, + mouse click the scale bar above the alignment. Click again to unmark a + column, or select "Deselect All" to deselect all columns.
    • +
    • Remove Empty Columns (Control E)
      +
      All columns which only contain gap characters ("-", + ".") will be deleted.
      + You may set the default gap character in preferences.
    • +
    • Remove All Gaps (Control Shift E)
      + Gap characters ("-", ".") will be deleted + from the selected area of the alignment. If no selection is made, ALL + the gaps in the alignment will be removed.
      + You may set the default gap character in preferences.
    • +
    • Remove Redundancy (Control D)
      +
      Selecting this option brings up a window asking you to select + a threshold. If the percentage identity between any two sequences + (under the current alignment) exceeds this value then one of the + sequences (the shorter) is discarded. Press the "Apply" + button to remove redundant sequences. The "Undo" button will + undo the last redundancy deletion.
    • +
    • Pad Gaps
      +
      When selected, the alignment will be kept at minimal width (so + there no empty columns before or after the first or last aligned + residue) and all sequences will be padded with gap characters to the + before and after their terminating residues.
      + This switch is useful when making a tree using unaligned sequences and + when working with alignment analysis programs which require 'properly + aligned sequences' to be all the same length.
      + You may set the default for Pad Gaps in the preferences.
    • +
    + + diff --git a/help/html/menus/alwfile.html b/help/html/menus/alwfile.html index e18e273..93c7711 100755 --- a/help/html/menus/alwfile.html +++ b/help/html/menus/alwfile.html @@ -16,3 +16,96 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Alignment Window Menus + + + +

    Alignment Window File Menu

    +
      +
    • Fetch Sequence
      + Shows a dialog window in which you can select known ids from + Uniprot, EMBL, EMBLCDS or PDB database using Web Services provided by + the European Bioinformatics Institute. See Sequence Fetcher.
    • +
    • Add Sequences
      + Add sequences to the visible alignment from file, URL, or cut & + paste window
    • +
    • Reload
      + Reloads the alignment from the original file, if available.
      + Warning: This will delete any edits, analyses and + colourings applied since the alignment was last saved, and cannot be + undone.
    • +
    • Save (Control S)
      + Saves the alignment to the file it was loaded from (if available), in + the same format, updating the original in place.
    • +
    • Save As (Control Shift S)
      +
      Save the alignment to local file. A file selection window will + open, use the "Files of type:" selection box to determine + which alignment format to save as.
    • +
    • Output to Textbox
      +
      The alignment will be displayed in plain text in a new window, + which you can "Copy and Paste" using the pull down menu, or + your standard operating system copy and paste keys. The output window + also has a "New Window" button to import the + (possibly edited) text as a new alignment.
      + Select the format of the text by selecting one of the following menu + items.
      +
        +
      • FASTA
      • +
      • MSF
      • +
      • CLUSTAL
      • +
      • BLC
      • +
      • PIR
      • +
      • PFAM
      • +
      +
    • +
    • Page Setup ...
      + Open the printing system's Page Setup dialog box, to + control page size, layout and orientation.
    • +
    • Print (Control P)
      +
      Jalview will print the alignment using the current fonts and + colours of your alignment. If the alignment has annotations visible, + these will be printed below the alignment. If the alignment is wrapped + the number of residues per line of your alignment will depend on the + paper width or your alignment window width, whichever is the smaller.
    • +
    • Export Image
      + Creates an alignment graphic with the current view's annotation, + alignment background colours and group colours. If the alignment is wrapped, the output will also be + wrapped and will have the same visible residue width as the open + alignment.
      + +
    • +
    • Export Features
      + All features visible on the alignment can be saved to file or displayed + in a textbox in either Jalview or GFF format
    • +
    • Export Annotations
      + All annotations visible on the alignment can be saved to file or + displayed in a textbox in Jalview annotations format.
    • +
    • Load Associated Tree
      +
      Jalview can view + trees stored in the Newick file format, and associate them with the + alignment. Note: the ids of the tree file and your alignment MUST be + the same.
    • +
    • Load Features / Annotations
      +
      Load files describing precalculated sequence features or alignment annotations.
    • +
    • Close (Control W)
      + Close the alignment window. Make sure you have saved your + alignment before you close - either as a Jalview project or by using + the Save As menu.
    • +
    + + diff --git a/help/html/menus/alwformat.html b/help/html/menus/alwformat.html index e18e273..7c015db 100644 --- a/help/html/menus/alwformat.html +++ b/help/html/menus/alwformat.html @@ -16,3 +16,64 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +

    Alignment Window Format Menu

    +
      +
    • Font...
      + Opens the "Choose Font" dialog box, in order to change the font + of the display and enable or disable 'smooth fonts' (anti-aliasing) for faster + alignment rendering.
    • +
    • Wrap
      +
      When ticked, the alignment display is "wrapped" to the width of the alignment + window. This is useful if your alignment has only a few sequences to view + its full width at once.
      + Additional options for display of sequence numbering and scales are also visible + in wrapped layout mode:
      +
        +
      • Scale Left
        + Show the sequence position for the first aligned residue in each row + in the left column of the alignment.
      • +
      • Scale Right
        + Show the sequence position for the last aligned residue in each row + in the right-most column of the alignment.
      • +
      • Scale Above
        + Show the alignment column position scale.
      • +
      +
    • Show Sequence Limits
      +
      If this box is selected the sequence name will have the start + and end position of the sequence appended to the name, in the format NAME/START-END
    • +
    • Right Align Sequence ID
      +
      If this box is selected then the sequence names displayed in + the sequence label area will be aligned against the left-hand edge of the + alignment display, rather than the left-hand edge of the alignment window.
    • +
    • Show Hidden Markers
      +
      When this box is selected, positions in the alignment where rows + and columns are hidden will be marked by blue arrows.
    • +
    • Boxes
      + If this is selected the background of a residue will be coloured using the + selected background colour. Useful if used in conjunction with "Colour + Text."
    • +
    • Text
      +
      If this is selected the residues will be displayed using the + standard 1 character amino acid alphabet.
    • +
    • Colour Text
      +
      If this is selected the residues will be coloured according to + the background colour associated with that residue. The colour is slightly + darker than background so the amino acid symbol remains visible.
    • +
    • Show Gaps
      +
      When this is selected, gap characters will be displayed as "." + or "-". If unselected, then gap characters will appear as blank + spaces.
      + You may set the default gap character in preferences.
    • +
    • Centre Column Labels
      +
      When this is selected, the text labels within each annotation row will be centred on the column that they are associated with. +
    • +
    • Show Unconserved
      +
      When this is selected, all consensus sequence symbols will be rendered as a '.', highlighting mutations in highly conserved alignments. +
    • + +
    + + diff --git a/help/html/menus/alwselect.html b/help/html/menus/alwselect.html index e18e273..c0074bc 100644 --- a/help/html/menus/alwselect.html +++ b/help/html/menus/alwselect.html @@ -16,3 +16,33 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +

    Alignment Window Select Menu

    +
      + +
    • Find... (Control F)
      + Opens the Find dialog box to search for residues, sequence name or residue + position within the alignment and create new sequence features from the queries. + +
    • Select All (Control A)
      +
      Selects all the sequences and residues in the alignment.
      + Use <CTRL> and A (<APPLE> and A on a MacOSX) to select all.
    • +
    • Deselect All (Escape)
      +
      Removes the current selection box (red dashed box) from the + alignment window. All selected sequences, residues and marked columns + will be deselected.
      + Use <ESCAPE> to deselect all.
    • +
    • Invert Sequence Selection (Control I)
      +
      Any sequence ids currently not selected will replace the + current selection.
    • +
    • Invert Column Selection (Control Alt I)
      +
      Any columns currently not selected will replace the current + column selection.
    • +
    • Undefine Groups (Control U)
      +
      The alignment will be reset with no defined groups.
      + WARNING: This cannot be undone.
    • +
    • Make Groups
      + The currently selected groups of the alignment will be subdivided according to the contents of the currently selected region.
      Use this to subdivide an alignment based on the different combinations of residues observed at specific positions. (new in jalview 2.5)
    • +
    + + diff --git a/help/html/menus/alwview.html b/help/html/menus/alwview.html index e18e273..e068a45 100755 --- a/help/html/menus/alwview.html +++ b/help/html/menus/alwview.html @@ -16,3 +16,76 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Alignment Window Menus + + + +

    Alignment Window View Menu

    +
      +
    • New View (Control T)
      + Creates a new view from the current alignment view.
    • +
    • Expand Views (X)
      + Display each view associated with the alignment in its own alignment window, + allowing several views to be displayed simultaneously.
    • +
    • Gather Views (G)
      + Each view associated with the alignment will be displayed within its own tab + on the current alignment window.
    • +
    • Show→(all Columns / Sequences / Sequences and Columns )
      + All hidden Columns / Sequences / Sequences and Columns will be revealed.
    • +
    • Hide→(all Columns / Sequences / Selected Region / All but Selected Region)
      + Hides the currently selected Columns / Sequences / Region or everything but the selected Region.
    • +
    • Show Annotations
      +
      If this is selected the "Annotation Panel" will be + displayed below the alignment. The default setting is to display the conservation + calculation, quality calculation and consensus values as bar charts.
    • +
    • Autocalculated Annotation
      Settings for the display of autocalculated annotation. +
      • + Apply to all groups
        + When ticked, any modification to the current settings will be applied to all autocalculated annotation. +
      • +
      • + Show Consensus Histogram
        + Enable or disable the display of the histogram above the consensus sequence. +
      • +
      • + Show Consensus Profile
        + Enable or disable the display of the sequence logo above the consensus sequence. +
      • +
      • + Group Conservation
        + When ticked, display a conservation row for all groups (only available for protein alignments). +
      • +
      • + Apply to all groups
        + When ticked, display a consensus row for all groups. +
      • +
      +
    • +
    • Automatic Scrolling
      +
      When selected, the view will automatically scroll to display the + highlighted sequence position corresponding to the position under the mouse + pointer in a linked alignment or structure view. +
    • +
    • Show Sequence Features
      + Show or hide sequence features on this alignment.
    • +
    • Seqence Feature Settings...
      + Opens the Sequence Feature Settings dialog box to control the colour and display + of sequence features on the alignment, and configure and retrieve features + from DAS annotation servers.
    • +
    • Sequence ID Tooltip (application only) +
      This submenu's options allow the inclusion or exclusion of + non-positional sequence features or database cross references + from the tooltip shown when the mouse hovers over the sequence ID panel.
    • +
    • Alignment Properties...
      +
      Displays some simple statistics computed for the + current alignment view and any named properties defined on the + whole alignment.
    • +
    • Overview Window
      +
      A scaled version of the alignment will be displayed in a small + window. A red box will indicate the currently visible area of the alignment. + Move the visible region using the mouse.
    • +
    +

     

    + + diff --git a/help/html/menus/desktopMenu.html b/help/html/menus/desktopMenu.html index e18e273..184733d 100755 --- a/help/html/menus/desktopMenu.html +++ b/help/html/menus/desktopMenu.html @@ -16,3 +16,109 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Desktop Menus + + + +

    Desktop Menus

    +
      +
    • File +
        +
      • Input Alignment from (See more on file formats) +
          +
        • File (Control O)
          + open file(s) on your local file system
        • +
        • URL
          + open a file from a website. The URL MUST start with http://
        • +
        • Textbox
          + copy and paste an alignment into a text window
        • +
        +
      • +
      • Fetch Sequence
        +
        Shows a dialog window in which you can select known ids from + Uniprot, EMBL, EMBLCDS or PDB database using Web Services provided by + the European Bioinformatics Institute.
      • +
      • Save Project
        + Saves all currently open alignment windows with their current + view settings and any associated trees, as a Jalview Archive (which has a + .jar extension).
      • +
      • Load Project
        + Loads Jalview archives only.
      • +
      • Quit
        + Close Jalview.
        + Note - any annotation you have made on alignments will be lost + unless you Save your work before quitting.

        +
      • +
      +
    • +
    • Tools +
        +
      • Preferences
        +
        Change the default visual settings for opening new alignment + windows.
      • +
      • Show Memory Usage
        + When ticked, the currently available memory will be displayed in the + bottom right of the desktop background area.
        + See the help on jalview memory settings for more information.
      • +
      • Collect Garbage
        + Selecting this will initiate the Java Virtual Machine garbage collector, which might help free up some memory... perhaps. +
      • +
      • Java Console
        + Toggles the display of a the Jalview Java Console window. This setting will be remembered in your user preferences.
      • +
      • Groovy Console... (only available if groovy is on the classpath)
        + Open's the Groovy Console for interactive scripting.
      • + +
      +
    • +
    • Vamsas + For more details, read the Jalview VAMSAS documentation.
      + When no session is active, the menu provides options for initiating a new VAMSAS session:
      +
        +
      • Connect to
        + Connect to one of the existing sessions available.
      • +
      • New VAMSAS session
        + Initiates a new local VAMSAS session.
      • +
      • Load VAMSAS session...
        + Opens a file browser allowing you to choose a VAMSAS document to import into a new local session.
      • +
      + When Jalview is joined to a VAMSAS session, the menu contains the following: +
        +
      • Session Update
        + Sends alignment data in the Jalview desktop to the VAMSAS session.
      • +
      • Save VAMSAS Session...
        + Saves the current session to a VAMSAS document archive.
      • +
      • Stop VAMSAS Session
        + Disconnects from the current session. You may be asked if you want to save the current session's data if no other VAMSAS clients are connected.
      • +
      +
    • +
    • Help +
        +
      • About
        +
        Displays the version and creation date of the application, as + well as acknowledgements and a citation reference.
      • +
      • Documentation
        +
        Displays help files as a browseable, searchable set of pages + with a table of contents.
        +
      • +
      +
    • +
    • Window
      + Each time a new window is added to the Jalview Desktop a + corresponding menu item will be added to the "Window" menu + that will bring the window to the top of the pile when it is selected. +
        +
      • Close All
        + Close all alignment and analysis windows.
        Note: This will erase all alignments from memory, and cannot be undone!
      • +
      • Raise Associated Windows
        + Bring all windows associated with the current alignment to the top of the pile. +
      • +
      • Minimise Associated Windows
        + Hide all windows related to the current alignment behind icons on the Jalview Desktop. +
      +
    • +
    + + diff --git a/help/html/menus/index.html b/help/html/menus/index.html index e18e273..e6e641c 100755 --- a/help/html/menus/index.html +++ b/help/html/menus/index.html @@ -16,3 +16,24 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Jalview's Menus + + + +

    Jalview's Menus

    +

    Menus are used in 3 places in Jalview - the "Desktop +Menu", the "Alignment Menu" and the "Popup +Menu".

    +

    The Desktop Menu is always visible +and is the starting point for loading new alignments.

    +

    The Alignment Window Menus are +accessible once an alignment has been opened.

    +

    The Popup Menus are opened by +clicking with the right mouse button in the alignment display area or on +a sequence label in the alignment window.

    +

    The Annotations Menu is opened +by right-clicking on an annotation row label or in an annotation row.

    + + + diff --git a/help/html/menus/popupMenu.html b/help/html/menus/popupMenu.html index e18e273..8f03c9a 100755 --- a/help/html/menus/popupMenu.html +++ b/help/html/menus/popupMenu.html @@ -16,3 +16,150 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Popup Menu + + + +

    Popup Menu
    +This menu is visible when right clicking either within a +selected region on the alignment or on a selected sequence name. It may +not be accessible when in 'Cursor Mode' (toggled with the F2 key).

    +
      +
    • Selection +
        +
      • Edit +
          +
        • Copy
          + Copys the selected region. In the applet version, the copied sequences + are not available to the system clipboard.
        • +
        • Cut
          +
          Cuts the selected region from the alignment. In the applet + version, the copied sequences are not available to the system clipboard.
        • +
        • Edit Sequence
          + Edit the selected sequence(s) directly. Spaces will be converted + to the current gap character.
        • +
        • To Upper Case
          +
          Changes the case of selected region to lower case. +
        • +
        • To Lower Case
          +
          Changes the case of selected region to upper case. +
        • +
        • Toggle Case
          + Switches the case of all residues within the selected region.
        • +
        +
      • +
      • Output to Textbox
        +
        The selection area will be output to a a text window in the + selected alignment format.
      • +
      • Create Sequence Feature...
        + Opens the dialog box for creating sequence features over the currently + selected region on each selected sequence.
      • +
      • Group
        + Group Operations +
          +
        • GroupThis is the first entry in the + menu, and will display the currently selected group's + name. Selecting it displays a window allowing the name and + description for this group to be edited. Click OK to set the + new name and decription, and cancel to leave the existing + name and description unchanged.
        • +
        • Remove Group
          +
          This will undefine the selected group. +
        • +
        • Group Colour
          +
          Sets the colour + of the group.
        • +
        • Boxes
          +
          If selected the background of a residue within the selected + group will be coloured according to the assigned colour scheme. +
        • +
        • Text
          +
          If selected the selected group will display text.
        • +
        • Colour Text
          +
          If selected the selected group will display text in a + colour slightly darker than the background colour of that residue.
        • +
        • Border Colour
          +
          Selecting this will display a "Colour Chooser" + window. Select a colour than press OK to set the border colour of + a group.
        • +
        • Show Unconserved
          +
          When this is selected, all symbols in the group matching the consensus sequence at that column will be rendered as a '.', highlighting mutations in the group area. +
        • +
        +
      • +
      • Group Links
        +
        This menu is only visible if there are group links available for the current selection. + +
          +
        • ID links allow you to send IDs associated with the current selection to a web server.
        • +
        • Sequence links allow you to send the sequences in the currently selected region to a web server.
        • +
        • Sequence and ID links allow you to send sets of IDs and sequences associated with the current selection to a web server.
        • +
        + Group Links were added in Jalview 2.5
      • +
      +
    • +
    • Sequence Id
      +
      This menu is only visible if you right-click on a sequence name. + +
        +
      • Edit Name/Description
        +
        You may edit the name and description of each sequence. A + window will be displayed asking for a new sequence name and sequence description + to be entered. Press OK to accept your edit. To save sequence descriptions, + you must save in Fasta, PIR or Jalview File format.
      • +
      • +
      • Represent Group With (Sequence Id)
        + All sequences in the current selection group will be hidden, apart + from (Sequence Id). Any edits performed on the visible representative + sequence will be propagated to the hidden sequences.
      • +
      • Link
        + This menu item lists all links which have been set up in the
        Preferences + Connections tab.
        + Since Jalview 2.4, links will also be made for database cross + references (where the database name exactly matches the link name set up in Preferences). +
        Since Jalview 2.5, links are also shown for non-positional sequence features attached to + the sequence, and any regular-expression based URL links that + matched the description line. +

        +
      • +
      +
    • +
    • Structure + This menu is only visible if you right-click on a sequence name. + +
        +
      • Associate Structure with Sequence +
          +
        • From File
          +
          Load a PDB file from local disk which will be associated + with this sequence. This file will be used if the user subsequently + clicks on "View PDB Structure" menu item.
        • +
        • Enter PDB id
          +
          Enter the PDB id from an input window. This PDB id will + be used by the service WSDBFetch, provided by the EBI, to fetch the + PDB file if the user subsequently clicks on "View PDB Structure" + menu item.
        • +
        • Discover PDB ids
          +
          This will use the service WSDBFetch, provided by the + EBI, to retrieve all PDB ids associated with the sequences in the + alignment if the sequences have valid Uniprot names or accession ids. +
        • +
        +
      • +
      • View Structure
        +
        If the sequence has an associated PDB file added by one + of the methods described above, Jalview will display a 3D interactive + viewer of the file.
        + These entries will only be present if the sequence has associated PDB structures.

        +
      • +
      +
    • +
    • Hide Sequences
      + Hides the currently selected sequences in this alignment view.
      +
      +
    • +
    + + diff --git a/help/html/menus/wsmenu.html b/help/html/menus/wsmenu.html index e18e273..86acf93 100755 --- a/help/html/menus/wsmenu.html +++ b/help/html/menus/wsmenu.html @@ -16,3 +16,66 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Web Service Menu + + +

    Web Service Menu

    +
      +
    • Fetch DB References
      + This will use any of the database services that Jalview is aware + of (e.g. DAS sequence servers and the WSDBFetch service provided by the EBI) + to verify the sequence and retrieve all database cross references and PDB ids + associated with all or just the selected sequences in the alignment. +
      'Standard Databases' will check sequences against the EBI databases + plus any active DAS sequence sources, or you can verify against a specific + source from one of the sub-menus.

      +
    • +
    • Envision2 Services
      + Submits one or more sequences, sequence IDs or database references to analysis workflows provided +by the EnVision2 +web application. This allows Jalview users to easily access the EnCore network of +databases and analysis services developed by members of ENFIN. +
    • +
    + Selecting one of the following menu items starts a remote service + on compute facilities at the University of Dundee. You need a continuous network + connection in order to use these services through Jalview.

    +
      +
    • Alignment +
        +
      • ClustalW Multiple Sequence Alignment
        + Submits all, or just the currently selected sequences for alignment + with clustal W.
      • +
      • ClustalW Multiple Sequence Alignment Realign
        + Submits the alignment or currently selected region for re-alignment + with clustal W. This enables you to align more sequences to an existing alignment.
      • +
      • MAFFT Multiple Sequence Alignment
        + Submits all, or just the currently selected region for alignment with + MAFFT.
      • +
      • Muscle Multiple Protein Sequence Alignment
        + Submits all, or just the currently selected sequences for alignment + using Muscle. Do not use this if you are working with nucleic acid sequences.
      • +
      +
    • +
    • Secondary Structure Prediction +
        +
      • JPred Secondary Structure Prediction
        + Secondary structure prediction by network consensus. The behaviour + of this calculation depends on the current selection:
      • +
      • If nothing is selected, and the displayed sequences appear to be + aligned, then a JNet prediction will be run for the first sequence in + the alignment, using the current alignment. Otherwise the first sequence + will be submitted for prediction.
      • +
      • If just one sequence (or a region on one sequence) has been selected, + it will be submitted to the automatic JNet prediction server for homolog + detection and prediction.
      • +
      • If a set of sequences are selected, and they appear to be aligned, + then the alignment will be used for a Jnet prediction on the first + sequence in the set (that is, the one that appears first in the alignment + window).
      • +
      +
    • +
    +

    + + diff --git a/help/html/misc/aaproperties.html b/help/html/misc/aaproperties.html index e18e273..0d99405 100755 --- a/help/html/misc/aaproperties.html +++ b/help/html/misc/aaproperties.html @@ -16,3 +16,33 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Amino Acid Properties + +
    +

    Amino Acid Properties

    + +
    + + + + +
    ILVCAGMFYWHKREQDNSTPBZX-
    +XXXXXXXXXXX·Â······X···XX Hydrophobic
    +········XXXXXXXXXX·XXXXX Polar
    +··XXXX·········XXXXX··XX Small
    +···················X··XX Proline
    +····XX···········X····XX Tiny
    +XXX···················XX Aliphatic
    +·······XXXX···········XX Aromatic
    +··········XXX·········XX Positive
    +·············X·X······XX Negative
    +··········XXXX·X······XX Charged
    +
    +


    + From Livingstone, C. D. and Barton, G. J. (1993),
    + "Protein Sequence Alignments: A Strategy for the Hierarchical Analysis of Residue + Conservation", Comp. Appl. Bio. Sci., 9, 745-756.

    +
    + + + diff --git a/help/html/misc/aminoAcids.html b/help/html/misc/aminoAcids.html index e097390..9acb9da 100755 --- a/help/html/misc/aminoAcids.html +++ b/help/html/misc/aminoAcids.html @@ -16,6 +16,14 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Amino Acids + diff --git a/help/html/misc/geneticCode.html b/help/html/misc/geneticCode.html index 1df8400..9bde5d7 100755 --- a/help/html/misc/geneticCode.html +++ b/help/html/misc/geneticCode.html @@ -16,6 +16,13 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Genetic Code + diff --git a/help/html/privacy.html b/help/html/privacy.html index e18e273..b2f5a67 100644 --- a/help/html/privacy.html +++ b/help/html/privacy.html @@ -16,3 +16,61 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Jalview Privacy Statement + + +

    Privacy for Jalview Users
    +

    The Jalview Desktop application which is available from the +www.jalview.org site does not contain code designed collect personal or +private information without your consent. However, we do collect usage +statistics to work out who is using Jalview, so we can apply for funding +to support Jalview development, and make it better for our users.

    +

    Usage data is collected from the logs of various web services that the Jalview Desktop contacts through its normal operation. +These are described below:

    +
      +
    • HTTP logs on the Jalview website
      + We record IP addresses of machines which access the web site, either + via the browser when downloading the application, or when the Jalview + Desktop user interface is launched.

      +
        +
      • The JNLP file at www.jalview.org/webstart/jalview.jnlp + is retrieved to determine if you are running the latest version of + Jalview.
      • +
      • The questionnaire web service at + www.jalview.org/cgi-bin/questionnaire.pl is checked and a unique + cookie for the current questionnaire is stored in the Jalview + properties file.
      • +
      • The Jalview web services stack is contacted to + retrieve the currently available web services. All interactions with + the public jalview web services are logged, but we delete all job data + (input data and results) after about two weeks.
      • +

      +
    • +
    • Google Analytics
      + Since jalview 2.4.0b2, the Jalview Desktop records usage data with + Google Analytics via the JGoogleAnalytics + class.
      + The Google Analytics logs for Jalview version 2.4 only record the fact + that the application was started, but in the future, we will use this + mechanism to improve the Desktop user interface, by tracking which + parts of the user interface are being used most often.
    • +
    +

    +

    Stopping Jalview from calling home
    +If you run Jalview in 'headless mode' via the command line, then the +program shouldn't try to contact any of the web servers mentioned above +(if it does, then it's a bug!). You can also specify some command line options to disable +the questionnaire and usage statistics check. Finally, the Connections Tab of the +jalview preferences contains options for controlling the submission of +usage statistics. +

    Other Web Clients in Jalview
    +The Jalview desktop is intended to make it easier to interact with +web-based bioinformatics resources. However, we can't take any +responsibility for the integrity of any external services you might +access via the program. Sorry!

    + + diff --git a/help/html/vamsas/index.html b/help/html/vamsas/index.html index e18e273..ef7ec3a 100644 --- a/help/html/vamsas/index.html +++ b/help/html/vamsas/index.html @@ -16,3 +16,121 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +VAMSAS Interoperation + + +

    VAMSAS Interoperation

    +

    Jalview can interact with other applications using "the VAMSAS +Interoperation framework" which is an experimental model for +interoperation between bioinformatics applications (Visualization +and Analysis of Molecular Sequences, +Alignements and Structures). +Currently, the only other VAMSAS enabled application is TOPALi - a user friendly program for +phylogenetics and evolutionary analysis. +

    VAMSAS enabled applications access a shared bioinformatics +dataset containing sequences, alignments, annotation and trees, which +can be represented by an XML document analogous to a Jalview Project Archive.

    +
    +Connecting to a VAMSAS session
    +The VAMSAS functionality in Jalview is accessed through the Desktop's Vamsas +menu. The options available in this menu depend on whether the +application is currently interacting with a VAMSAS dataset in a VAMSAS +session. When the application is not connected to a session is active, +the menu options are as follows:
    +
      +
    • Connect to an existing session
      + If visible, this submenu contains a list of existing sessions that the + VAMSAS framework has discovered on your computer.
      + Choose one to connect to it.
    • +
    • New VAMSAS Session
      + This option will create a new session on your computer.
    • +
    • Load VAMSAS Session...
      + This option will open a file browser window allowing you to select a + VAMSAS session archive from which a new session will be created.
      + New in 2.5:Sessions created from an imported document inherit + the file or URL for the document.
    • + +
    +
    +VAMSAS and Firewalls: VAMSAS uses sockets to +communicate between different programs. This means that after starting a +session, your firewall software may ask you whether to allow the java +executable access to the internet (port 53782). If you do not allow +this, messages will not be exchanged with other VAMSAS applications.
    +
    +Once you have successfully connected to a VAMSAS session, any data made +available by other VAMSAS applications will be automatically imported +into Jalview. However, in order to share the data in Jalview with other +VAMSAS applications, you must manually select the Vamsas→"Session +Update" entry that is visible when a session is active. Selecting +this option will update the VAMSAS session document, with the data +loaded into Jalview. Any new alignments, trees and annotation will be +written to the session, in addition to any edits you have made to data +originally stored in the document.
    +Saving the current session
    +You can save the current session as a VAMSAS Session archive using the Vamsas→"Session +Update". The file contains a snapshot of the current VAMSAS +session, including data from any other applications connected to the +session. Leaving a VAMSAS session
    +A session can be disconnected from at any time using the Vamsas→"Stop +Session" option. Selecting this option will only disconnect Jalview +from the session - any other applications will remain connected to the +session. If Jalview is the only application connected to the session and +you have not yet saved the VAMSAS session then you will be prompted with +an optional 'Save VAMSAS session...' dialog box, allowing the session to +be saved and returned to at a later date.
    +VAMSAS Session Persistence
    +VAMSAS sessions are persistent - this means that they exist +independently of any VAMSAS applications that are connected to them. +This means that if something goes wrong with a VAMSAS application and it +crashes or otherwise fails, the VAMSAS session it is connected to will +(hopefully) be unaffected. For instance, if Jalview is killed or crashes +whilst it is still connected to a session, that session can be recovered +in a new Jalview instance using the Vamsas→"Existing +session" sub menu.

    +A quick Demo +
    +Jalview can talk to itself through VAMSAS. Simply start two copies of +the application, create a new vamsas session in one, and connect to the +new session in the other. Then load your data into one of the +applications, and use the +Vamsas→"Session Update" +menu entry to try to propagate the data to the other application. +
    + + + + + + + + + + + + + + + + + + + + + +
    Data Sharing CapabilityJalview Version
    Alignments, sequences and annotation, trees, database + references, cDNA/protein mappings.2.4
    Mouseover location across linked DNA, protein and structure + positions.2.4
    Jalview project settings (Multiple views, groups, tree + partitions, colouring, window positions)2.5
    Sequence region and column selections2.5
    +
    +

    Version 0.2 of the VAMSAS client library is used in Jalview +2.5. For further details about the VAMSAS framework, please check the +VAMSAS website. The VAMSAS +framework is implemented as a Java 1.4 Library and depends on a number +of other open source projects. Its source is released under the +LGPL license.  

    + + diff --git a/help/html/webServices/clustalw.html b/help/html/webServices/clustalw.html index e18e273..cbfc115 100755 --- a/help/html/webServices/clustalw.html +++ b/help/html/webServices/clustalw.html @@ -16,3 +16,30 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +ClustalW Alignment + +

    ClustalW Alignments

    +

    ClustalW is a program for multiple sequence alignment. It works +with both DNA and protein sequences, and can also perform profile +profile alignments to align two or more multiple sequence +alignments.

    +

    +Thompson, J.D., Higgins, D.G. and Gibson, T.J. (1994)
    +CLUSTAL W: improving the sensitivity of progressive multiple +sequence alignment through sequence weighting, position specific gap +penalties and weight matrix choice.
    +Nucleic Acids Research 22 4673-4680 +

    +

    There are two versions of this alignment function, which will operate +on the selected region, if any, or the whole sequence set:

    +
      +
    • Web Service→Alignment→ClustalW Multiple Sequence Alignment
      + Aligns using the clustalW program, ignoring any gaps in the submitted sequence + set.
    • +
    • Web Service→Alignment→ClustalW Mulitple Sequence Alignment + Realign
      + Submits the sequences with existing gaps to clustalW, which will preserve + existing gaps and re-align those regions which are not optimal.
    • +
    + + diff --git a/help/html/webServices/dbreffetcher.html b/help/html/webServices/dbreffetcher.html index 422b99a..ef6fcac 100644 --- a/help/html/webServices/dbreffetcher.html +++ b/help/html/webServices/dbreffetcher.html @@ -15,4 +15,63 @@ * 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 . ---> +--> + + +Database Reference Fetching + +

    +

    Discovering Database References for Sequences
    +Database references are associated with a sequence are displayed as a +list in the tooltip shown when mousing over its sequence ID. Jalview +uses references for the retrieval of PDB structures and DAS features, and for +retrieving sequence cross-references such as the protein products of a +DNA sequence.

    +

    Initiating reference retrieval
    +The application provides three ways to access the retrieval function. Either: +

    • select the Discover PDB IDs option from the structure submenu of the sequence's popup menu
    • +
    • Choose one of the options from the 'Fetch DB Refs' submenu in the alignment window's Web Services menu:
        +
      • Standard Databases will fetch references from the EBI databases plus currently selected DAS sources
      • +
      • The other entries submenus leading to lists of individual database sources that Jalview can access.
    • +
    • Answer 'Yes' when asked if you wish to retrieve database references for your sequences after initiating a DAS Sequence Feature fetch.
    • +
    +

    Jalview discovers references for a sequence by generating a set +of ID queries from the ID string of each sequence in the alignment. It +then tries to query a subset of all the databases it can access in order to match +the alignment sequence to any records retrieved from the database. If a +match is found, then the sequence is annotated with that database's +reference, and any cross-references that it's records contain.

    +

    The Sequence Identification Process
    +The method of accession id discovery is derived from the method which +earlier Jalview versions used for Uniprot sequence feature retrieval, +and was originally restricted to the identifaction of valid Uniprot +accessions.
    +Essentially, Jalview will try to retrieve records from a subset of the databases +accessible by the sequence +fetcher using each sequence's ID string (or each string in the ID +separated by the '∣' symbol).

    +

    If a record (or set of records) is retrieved by any query derived +from the ID string of a sequence, then the sequence is aligned to the +ones retrieved to determine the correct start and end residue positions +(which are displayed when the 'Show Full Sequence ID' option). This is +important for the correct display of the location of any features +associated with that database.

    +

    If the alignment reveals differences between the sequence in the +alignment and the one in the record, then Jalview will assume that the +aligned sequence is not the one in the retrieved record.

    +

    In some cases, the ID used to retrieve records may be out +of date and a dialog box will be opened indicating that a 100% match +between the sequence and the record was identified, but the +sequence name is different. In this case, the can be manually +changed (by right clicking on the sequence ID and selecting Sequence→Edit +Name). +

      +
    • Note
      + Please remember to save your alignment if either the start/end + numbering, or the sequence IDs were updated during the ID + retrieval process.
    • +
    + + diff --git a/help/html/webServices/index.html b/help/html/webServices/index.html index 62e881d..6425e9c 100755 --- a/help/html/webServices/index.html +++ b/help/html/webServices/index.html @@ -16,3 +16,85 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + +Web Services + + +

    Web services

    + +

    Jalview includes clients for a variety of web services for both +bioinformatic data retrieval and analysis. +

      +
    • The Sequence Fetcher + utilises web services for sequence, alignment and structure retrieval + provided by the European Bioinformatics Institute (EBI) and Distributed + Annotation System servers that are capable of serving sequences.
    • +
    • The DAS Feature Fetcher enables the retrieval and + visualization of features from DAS annotation sources
    • +
    • Jalview SOAP Web Services for sequence and alignment analysis + are provided by the University of Dundee, and are available from the + Alignment window's Web Service menu.
    • +
    +

    +

    Jalview's distributed computations are SOAP based services +exposing protein sequence alignment and secondary structure prediction +programs. These services actually run on the cluster based in the School +of Life Sciences, University of Dundee, and are maintained by the Barton +group.

    +

    Envision2 Services

    +

    Jalview 2.5 includes a client to enable the user to +submit one or more sequences or sequence IDs to analysis workflows provided +by the EnVision2 +web application. This allows Jalview users to easily access the EnCore network of +databases and analysis services developed by members of ENFIN.

    +
    +

    Web Service Dialog Box

    + +

    This dialog box is displayed when a web service job is submitted. +It gives the name of the service and any method citation information, +and monitors the progress of the calculation. The cancel button will +permanently cancel the job, but this is only possible for some services. +

    +

    Current services: +

      + Multiple Sequence + Alignment Services +
        +
      • ClustalW Multiple Alignment and + re-alignment
        + The clustal W service remains one of the more popular Jalview + features.
      • +
      • Muscle Multiple Alignment
        + High Quality and High Throughput multiple alignments of proteins. This + method can sometimes be more accurate than ClustalW when dealing with + diverse sets of sequences.
      • +
      • MAFFT
        + Multiple Alignment with Fast Fourier Transforms - a highly accurate + and high throughput dna and amino acid alignment method, performing at + least as well as ClustalW and Muscle.
      • +
      + +
    • Secondary Structure Prediction +
        +
      • JNet
        + This is a front end to the existing JNet www server + allowing single sequence or profile based prediction.
      • +
      +
    • +
    +

    + + + diff --git a/help/html/webServices/jnet.html b/help/html/webServices/jnet.html index e18e273..9bb6bd1 100755 --- a/help/html/webServices/jnet.html +++ b/help/html/webServices/jnet.html @@ -16,3 +16,97 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +JNet Secondary Structure Prediction + + +JNet Secondary Structure Prediction +

    Secondary structure prediction methods attempts to infer the +likely secondary structure for a protein based on its amino acid +composition and similarity to sequences with known secondary structure. +The JNet method uses several different neural networks and decides on +the most likely prediction via a jury network.
    +

      +
    • + Cole C., Barber J.D. and Barton G.J. (2008) The Jpred 3 secondary structure prediction server + Nucleic Acids Research 36 W197-W201
    • +
    • + Cuff J. A and Barton G.J (1999) Application of enhanced + multiple sequence alignment profiles to improve protein secondary + structure prediction Proteins 40 502-511
    • +
    +

    +The function available from the +Web Service→Secondary Structure +Prediction→JNet Secondary Structure Prediction +menu does two different kinds of prediction, dependent upon the +currently selected region: +

    +
      +
    • If nothing is selected, and the displayed sequences appear to + be aligned, then a JNet prediction will be run for the first sequence + in the alignment, using the current alignment. Otherwise the first + sequence will be submitted for prediction.
    • +
    • If just one sequence (or a region on one sequence) has been + selected, it will be submitted to the automatic JNet prediction server + for homolog detection and prediction.
    • +
    • If a set of sequences are selected, and they appear to be + aligned, then the alignment will be used for a Jnet prediction on the first + sequence selected in the set (that is, the one nearest the top of the + alignment window).
    • +
    +

    Note: JNet secondary structure prediction is a +'non-column-separable' service - predictions are based on the sequence +profile of contiguous stretches of amino-acid sequence. A prediction +will only be made on the visible parts of a sequence (see hiding columns) as if it were +a contiguous polypeptide chain. Prediction accuracy at the hidden column +boundaries may therefore be less than indicated by JNet's own +reliability score (see below).

    +

    The result of a JNet prediction for a sequence is a new annotated +alignment window:

    + +

    The sequence for which the prediction was made is the first one +in the alignment. If a sequence based prediction was made then the +remaining sequences in the alignment are the aligned parts of homologs +which were used to construct a sequence profile for the prediction. If +the prediction was made using a multiple alignment, then the original +multiple alignment will be returned, annotated with the prediction.

    +The annotation bars below the alignment are as follows: +

    +
      +
    • Lupas_21, Lupas_14, Lupas_28
      + Coiled-coil predictions for the sequence. These are binary + predictions for each location.
    • +
    • JNETSOL25,JNETSOL5,JNETSOL0
      + Solvent accessibility predictions - binary predictions of 25%, + 5% or 0% solvent accessibility.
    • +
    • JNetPRED
      + The consensus prediction - helices are marked as red tubes, + and sheets as dark green arrows.
    • +
    • JNetCONF
      + The confidence estimate for the prediction. High values mean + high confidence. prediction - helices are marked as red tubes, and + sheets as dark green arrows.
    • +
    • JNetALIGN
      + Alignment based prediction - helices are marked as red tubes, + and sheets as dark green arrows.
    • +
    • JNetHMM
      + HMM profile based prediction - helices are marked as red + tubes, and sheets as dark green arrows.
    • +
    • jpred
      + Jpred prediction - helices are marked as red tubes, and sheets + as dark green arrows.
    • +
    • JNETPSSM
      + PSSM based prediction - helices are marked as red tubes, and + sheets as dark green arrows.
    • +
    • JNETFREQ
      + Amino Acid frequency based prediction - helices are marked as + red tubes, and sheets as dark green arrows.
    • +
    • JNETJURY
      + A '*' in this annotation indicates that the JNETJURY was + invoked to rationalise significantly different primary predictions.
    • +
    +

    + + diff --git a/help/html/webServices/mafft.html b/help/html/webServices/mafft.html index e18e273..e777fd4 100644 --- a/help/html/webServices/mafft.html +++ b/help/html/webServices/mafft.html @@ -16,3 +16,20 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +MAFFT Multiple Sequence Alignments + +

    MAFFT Multiple Sequence Alignments

    +

    Katoh, K., K. Kuma, K., Toh, H., and Miyata, T. (2005) "MAFFT version + 5: improvement in accuracy of multiple sequence alignment." Nucleic Acids + Research, 33 511-518

    +

    MAFFT is a program for the multiple alignment of nucleic acid or protein +sequences, and is available from the Web +Service→Alignment→MAFFT Multiple Sequence +Alignment entry in the web services menu.

    +

    MAFFT utilizes algorithms for spectral correlation to identify +homologous regions in a fast-fourier transform representation of each +sequence. The Jalview web service runs MAFFT using the +'--auto' option which picks optimal parameters +for the set of sequences to be aligned.

    + + diff --git a/help/html/webServices/msaclient.html b/help/html/webServices/msaclient.html index e18e273..7f4bac9 100644 --- a/help/html/webServices/msaclient.html +++ b/help/html/webServices/msaclient.html @@ -16,3 +16,40 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Multiple Sequence Alignment Web Service + + +Multiple Sequence Alignment Web Services +

    +Multiple sequence alignment services are accessed from the Web +Service→Alignment menu. When an entry from this menu is +selected, either the currently selected residues, or the whole +sequence set (if there is no selection or only one sequence is +selected) will be submitted for multiple sequence alignment. +

    +

    There are two kinds of multiple sequence alignment operations +available:

      +
    • alignment - where a new alignment is constructed from the input +
    • +
    • realignment - +where any existing alignments in the input are passed to the service +for profile based alignment. +
    • +
    +

    +

    +Multiple Alignments of Sequences with hidden columns
    +Multiple alignment services are 'column separable' analysis +operations. If the input contains hidden columns then each +visible segment of the input sequence set will be submitted for +alignment separately, and the results concatenated (with the hidden +regions preserved) once all alignment functions have completed. Each +sub-job's state is reported in its own tab: +

    Multiple Multiple Sequence Alignment sub jobs running at +once

    +
    +

    + + diff --git a/help/html/webServices/muscle.html b/help/html/webServices/muscle.html index e18e273..2af44a6 100755 --- a/help/html/webServices/muscle.html +++ b/help/html/webServices/muscle.html @@ -16,3 +16,16 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> +Muscle Alignment + +

    Muscle Alignments

    +

    Muscle is a program for the alignment of many protein sequences.

    +

    +Edgar, Robert C. (2004), MUSCLE: multiple sequence alignment with high +accuracy and high throughput
    +Nucleic Acids Research 32(5), 1792-97.

    +

    This alignment method is applied to the selected region, if any, or the whole + sequence set when the Web Service→Alignment→Muscle + Protein Sequence Alignment menu item is selected.

    + + diff --git a/help/html/webServices/urllinks.html b/help/html/webServices/urllinks.html index e18e273..56374f6 100644 --- a/help/html/webServices/urllinks.html +++ b/help/html/webServices/urllinks.html @@ -16,3 +16,74 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +Opening URLs from Jalview + + +

    +

    Opening URLs from Jalview
    +Both the applet and the desktop application are able to open URLs as +'popups' in your web browser.
    +Double-clicking on the ID of a sequence will open the first URL that can +be generated from its sequence ID. This is often the SRS site, but you +can easily configure your own Configuring URL Links +
    URL links are defined in the "Connections" tab of the Jalview desktop preferences, or +specified as applet +parameters.
    +By default the item "SRS" is added to this link menu. This +link will show a web page in your default browser with the selected +sequence id as part of the URL.
    +In the preferences dialog box, click new to add a new +link, and edit to modify an existing link, or delete +to remove it.
    +You can name the link, this will be displayed on a new menu item under +the "Link" menu when you right click on a sequence id.
    +The URL string must contain a token that can be replaced with a sequence +ID. The simplest token is "$SEQUENCE_ID$", which will be +replaced by the chosen sequence id when you click on it.

    +

    eg.
    +UniRef100 = +http://www.ebi.uniprot.org/uniprot-srv/uniRefView.do?proteinAc=$SEQUENCE_ID$&library=uniref100
    +Swissprot = http://www.expasy.org/uniprot/$SEQUENCE_ID$
    +
    +Links will also be made for any database cross references associated +with the sequence where the database name exactly matches a URL link +name. In this case, the $SEQUENCE_ID$ string will be replaced with the +accession string for the database cross-reference, rather than the +sequence ID for the sequence (since Jalview 2.4).

    +

    Regular Expression Substitution
    +A url may contain a string of the form $SEQUENCE_ID=/regular +expression/=$. In this case, the regular expression will be applied to +the full sequence ID string and the resulting match will be inserted +into the URL. Groups of parentheses can be used to specify which regions +of the regular expression will be used to generate the URL: +

      +
    • Each top level parenthesis will yield a URL containing the + text matched within that parenthesis.
    • +
    • Regions matching sub-parentheses within a top-level + parenthesis will be concatenated to form the text inserted into the URL + for the top-level parenthesis.
    • + Please Note: +
        +
      • The regular expressions supported by Jalview are those + provided by the Stevesoft javaregex + package.
      • +
      • Some characters must be escaped when specifying them as a + match within a regular expression.
      • +
      +
      + Many Thanks to Bernd Brandt of the Free University of Amsterdam for + testing this new regular-expression expansion feature!
      + +
    +

    +

    + + diff --git a/utils/jalopy/docs/acknowledge.html b/utils/jalopy/docs/acknowledge.html index 62e881d..e1e4d98 100755 --- a/utils/jalopy/docs/acknowledge.html +++ b/utils/jalopy/docs/acknowledge.html @@ -16,3 +16,51 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Acknowledgements + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Acknowledgements

    +First and foremost I wish to thank the creators of the free software libraries +I use. Jalopy includes software developed by the +Apache Software Foundation, +the BlueJ Group, +David Brownell, +Michael H. Kay, +the JDOM group, +David Megginson, +Terence Parr, +Slava Pestov, +Aaron M. Renn and +Sun Microsystems, Inc.. +Please refer to Appendix A, Library Dependencies for a more detailed list +and the individual licensing terms. +

    +I would like to say a big thanks to Michael Callum, Frank Klomp, Roman Sarychev, +David Beutel, Denis N. Antonioli and Kees Kuip who contributed code. +

    +Thanks also to all users who provided feedback, submitted bug reports and requested new +features. +

    +A special thanks to Larry Hamel for the initial proof-reading of this manual. +

    +Last but not least, I wish to thank the SourceForge +crew for not only hosting the Jalopy web site and providing the collaborative development +infrastructure but also for their help and support in getting things up and running. +

    +And finally, my special thanks to the bright light in the big city, whose love has been +a home and a foreign country, the best of both worlds. +

    to top

    diff --git a/utils/jalopy/docs/bi01.html b/utils/jalopy/docs/bi01.html index 62e881d..b507c23 100755 --- a/utils/jalopy/docs/bi01.html +++ b/utils/jalopy/docs/bi01.html @@ -16,3 +16,23 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Bibliography + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Bibliography

    [Bloch01] Joshua Bloch. Effective Java. Programming Language Guide. Addison-Wesley, 2001. + ISBN: 0-201-31005-8.

    [Friedl97] Jeffrey E. F. Friedl. Mastering Regular Expressions. O'Reilly, 1997. + ISBN: 1-56592-257-3.

    to top

    diff --git a/utils/jalopy/docs/build.html b/utils/jalopy/docs/build.html index 62e881d..de51771 100755 --- a/utils/jalopy/docs/build.html +++ b/utils/jalopy/docs/build.html @@ -16,3 +16,126 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 2. Building + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 2. Building

    +Explains the steps involved in building Jalopy from the sources. +

    2.1. Prerequisites

    +The following software must be installed separately, in order to build from the +sources: +

    Table 2.1. Software needed to build from the sources

    Jakarta Ant +Jalopy comes with a simple, Ant-based build system. So you first need to obtain and +install Ant as outlined in the +Ant manual. +The build system is only tested against the Ant 1.5.4 release, but later +releases of Ant may also work. +
    Oasis DocBook XML DTD +All documentation is written using DocBook Version 4.2 markup. You can get the DTD +from the +OASIS web site. +Unpack the sources into a folder of your choice and remember this path as it will be +needed for configuration later on. +
    An XSLT processor +The DocBook markup needs to be transformed in order to make some user-friendly appearance. +This is done via XSLT and Michael Kay's Saxon is the processor I found working with the +Stylesheet package I use. You should download the current stable production +release from SourceForge (http://saxon.sf.net) +and extract the file saxon.jar into the /lib +folder of your Ant installation directory. I also had to setup saxon to use +Xerces as the XML parser by editing the +META-INF/services/javax.xml.parsers.SAXParserFactory file inside of +saxon.jar and replacing the alfred parser with org.apache.xerces.jaxp.SAXParserFactoryImpl +
    DocBook XSL Stylesheets +To perform the markup translation you need Norman Walsh's XSL Stylesheet package. +The version that works for me is 1.62.4. You can get it from SourceForge +(http://docbook.sf.net). +Copy the file extensions/saxon651.jar that +comes with the distribution into the /lib folder of your +Ant installation directory as this file is needed for sophisticated table generation. +
    A CVS client (optional) +If you plan to get the sources directly from CVS you need a CVS client. If your system +does not come with one pre-installed (most Linux machines at least have the command-line +client installed by default), you will certainly want to visit any of several good sites +such as http://www.cvshome.org/ +which lists available CVS clients +for different platforms, their strengths and weaknesses. For what it's worth, I prefer +SmartCVS. +

    2.2. Building

    +The basic steps to build Jalopy from the sources are: +

    1. +Get and install the needed software as outlined in Section 2.1, “Prerequisites”. +Make sure Ant is set up correctly. +

    2. +Get the sources. Either download and unpack the +Jalopy source distribution which +contains the complete Jalopy sources. Or grab the needed modules directly from the +CVS tree.

    3. +Change to the directory where your Jalopy sources reside. You should find a +directory layout somewhat similar to the following (each directory represents a +module; the minimal needed modules are printed in bold): +

      + ..
      +   ant/                  The Ant Plug-in
      +   build/                The Jalopy build system
      +   console/
      +   docu/                 All documentation sources
      +   eclipse/              The Eclipse Plug-in
      +   jbuilder/             The JBuilder Plug-in
      +   jdeveloper/           The JDeveloper Plug-in
      +   jedit/                The jEdit Plug-in
      +   main/                 The core Jalopy sources
      +   netbeans/             The NetBeans/Sun ONE Studio Plug-in
      +

      +Change directory into /build where the master build script +lurks. +

    4. +Adjust the global build properties to match your installation. The build +system uses quite a few properties to control the build process and +specify additional needed resources. You can find and adjust these properties in the file +build.properties. +

      +Luckily you only have to change some common properties to get things running: +

      Common build properties

      DIR.DOCBOOK.XSL

      +Specifies the installation directory of the DocBook XSL Stylesheets package. +Note that you have to specify a protocol, e.g. file:///G:/XML/docbook-xsl-1.62.4. +

      DIR.DOCBOOK.DTD

      +Specifies the path where to find the DocBook XSL DTD. +You have to adjust the default path to match your installation. +

      LIB.PATH.<modulename>

      +Specifies additional library path(s) needed to build a certain module. +You have to adjust the default path(s) to match your installation. +

      PACKAGE.PATH.<libraryname>

      +Specifies the location to a directory containing the package-list file for a +given library. This is optional and only needed by Javadoc to resolve links to +documentation for externally referenced classes. Change the default path(s) +to match your installation. +

    5. +Once everything is set up, you can start a build using ant target +where target describes one of the main build targets (those with a +description, use ant -projecthelp to display +the available targets). Just typing ant will build the Jalopy +core runtime distribution. +

    6. +When a build is done, you can find the created distribution(s) in the +tmp~/dist folder. The build system creates and stores all +intermediate files and subdirectories under the tmp~ +directory. +

    7. +If you make changes to the source code, just run Ant again; this will perform a +faster incremental rebuild of the target. +

    to top

    diff --git a/utils/jalopy/docs/comments.html b/utils/jalopy/docs/comments.html index 62e881d..8a75953 100755 --- a/utils/jalopy/docs/comments.html +++ b/utils/jalopy/docs/comments.html @@ -16,3 +16,119 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.6. Comments + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.6. Comments

    +Controls how Jalopy handles certain types of comments. +

    +As far as Jalopy is concerned, there are five types of comments: + +

    1. +Single-line comments // text +

      +An end-of-line comment: all text from the ASCII characters +// to the end of the line +

      Example 4.130. Single-line comment

      +// [PENDING] this should be part of the ErrorManager
      +

    2. +Multi-line comments /* text */ +

      +A traditional comment: all text from the ASCII characters /* +to the ASCII characters */ +

      Example 4.131. Multi-line comment

      +/* public int getSubregionStartOffset(int line, int subregion)
      +{
      +	ChunkCache.LineInfo[] lineInfos = chunkCache.getLineInfosForPhysicalLine(line);
      +	return buffer.getLineStartOffset(lineInfos[subregion].physicalLine)
      +		+ lineInfos[subregion].offset;
      +} */
      +

    3. +Javadoc comments /** text */ +

      +A documentation comment: actually a special kind of +multi-line comment as defined by the Sun Javadoc specification; +all text from the ASCII characters /** +to the ASCII characters */ +

      Example 4.132. Javadoc comment

      +/**
      + * A scroll listener will be notified when the text area is scrolled, either
      + * horizontally or vertically.
      + *
      + * @author Slava Pestov
      + * @since jEdit 3.2pre2
      + */
      +

    4. +Separator comments //~ text +

      +A Jalopy-specific separator comment: actually a special kind of single-line comment; +all text from the ASCII characters +//~ to the end of the line +

      Example 4.133. Separator comment

      +//~ Inner classes .......................................
      +

    5. +Pragma comments //J[directive] +

      +A Jalopy-specific control comment: actually a special kind of single-line comment; +all text from the ASCII characters +//J[-|+] to the end of the line +

      Example 4.134. Control comments

      +//J-
      +    if {condition()) return value;
      +//J+
      +

      +Currently, Jalopy recognizes two pragma comments: //J- and //J+ +

      +With these comments you can disable formatting for certain code sections. +//J- tells Jalopy to disable formatting until //J+ +will enable it again. Note that these comments can only be used in conjunction! Omitting the //J+ will certainly produce errors. +

    +

    4.3.6.1. Remove

    +Controls whether and what types of comments should be removed during the +formatting process. +

    • +Single-line comments +

      +If enabled, removes all single-line comments found in a source file. +

    • +Multi-line comments +

      +If enabled, removes all multi-line comments (sometimes called block comments) found in a source file. +

    • +Javadoc comments +

      +If enabled, removes all Javadoc comments found in a source file. This may prove +useful in conjunction with the Javadoc auto-generation capabilities +to build Javadoc from scratch. +

    4.3.6.2. Format

    +Controls the reformatting of comments. +

    • +Multi-line comments +

      +Enables the reformatting of multi-line comments. Only affects the leading +asterixes of consecutive comment lines as shown in the examples below. +

      Example 4.135. Multi-line comment

      +/* Multi-line
      +* comment.
      +* end.
      +*/
      +

      Example 4.136. Multi-line comment (reformatted)

      +/* Multi-line
      + * comment.
      + * end.
      + */
      +

    to top

    diff --git a/utils/jalopy/docs/contact.html b/utils/jalopy/docs/contact.html index 62e881d..9d2518d 100755 --- a/utils/jalopy/docs/contact.html +++ b/utils/jalopy/docs/contact.html @@ -16,3 +16,35 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Contact + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    + This page generated: June 8 2004

    Trackers

    +Please use the following SourceForge trackers to submit bug reports or post +feature requests: +

    Mailing Lists

    +If you want to provide feedback on this software or stay current with the +latest development, you may want to join one of the Jalopy mailing lists. +

    ListSubscribe/UnsubcribeBrowse Archives
    jalopy-announce

    A high-level +announcements list, for things like major release notifications +or important bug-fixes. This is not a discussion list, and is not open to +public posting. Traffic is expected to be very low. +

    +If you're interested in +Jalopy, it is recommended you subscribe at a minimum to this list. +

    Subscribe/UnsubscribeBrowse archives
    jalopy-user

    +Intended for +users to ask questions, share knowledge, and discuss general Jalopy related issues. +

    Subscribe/UnsubscribeBrowse archives
    jalopy-development

    +Hosts development related discussions. +

    Subscribe/UnsubscribeBrowse archives
    to top

    diff --git a/utils/jalopy/docs/contributors.html b/utils/jalopy/docs/contributors.html index 62e881d..9a69927 100755 --- a/utils/jalopy/docs/contributors.html +++ b/utils/jalopy/docs/contributors.html @@ -16,3 +16,33 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Contributors + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    + This page generated: June 8 2004

    Contributors

    +The following people have contributed to the Jalopy project: +

    • +Michael Callum +
    • +Frank Klomp +
    • +Larry Hamel +
    • +Roman Sarychev +
    • +Denis N. Antonioli +
    • +David Beutel +
    • +Kees Kuip +
    to top

    diff --git a/utils/jalopy/docs/dedication.html b/utils/jalopy/docs/dedication.html index 62e881d..86d2b37 100755 --- a/utils/jalopy/docs/dedication.html +++ b/utils/jalopy/docs/dedication.html @@ -16,3 +16,24 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Dedication + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Dedication

    +This work is inspired by and dedicated to the poet who writes: +

    Tabacaria

    Não sou nada.
    Nunca serei nada.
    Não posso querer ser nada.
    À parte isso, tenho em mim todos os sonhos do mundo.
     
    Janelas do meu quarto,
    Do meu quarto de um dos milhões do mundo que ninguém sabe quem é
    (E se soubessem quem é, o que saberiam?),
     
    Dais para o mistério de uma rua cruzada constantemente por gente,
    Para uma rua inacessível a todos os pensamentos,
    Real, impossivelmente real, certa, desconhecidamente certa,
    Com o mistério das coisas por baixo das pedras e dos seres,
    Com a morte a pôr humidade nas paredes e cabelos brancos nos homens,
    Com o Destino a conduzir a carroça de tudo pela estrada de nada.
    Estou hoje vencido, como se soubesse a verdade.
    Estou hoje lúcido, como se estivesse para morrer,
    E não tivesse mais irmandade com as coisas
    Senão uma despedida, tornando-se esta casa e este lado da rua
    A fileira de carruagens de um comboio, e uma partida apitada
    De dentro da minha cabeça,
    E uma sacudidela dos meus nervos e um ranger de ossos na ida.
     
    Estou hoje perplexo como quem pensou e achou e esqueceu.
    Estou hoje dividido entre a lealdade que devo
    Estou hoje dividido entre a lealdade que devo
    E à sensação de que tudo é sonho, como coisa real por dentro.
     
    Falhei em tudo.
    Como não fiz propósito nenhum, talvez tudo fosse nada.
    A aprendizagem que me deram,
    Desci dela pela janela das traseiras da casa,
    Fui até ao campo com grandes propósitos.
    Mas lá encontrei só ervas e árvores,
    E quando havia gente era igual à outra.
    Saio da janela, sento-me numa cadeira. Em que hei-de pensar?
     
    Que sei eu do que serei, eu que não sei o que sou?
    Ser o que penso? Mas penso ser tanta coisa!
    E há tantos que pensam ser a mesma coisa que não pode haver tantos!
    Gênio? Neste momento
    Cem mil cérebros se concebem em sonho gênios como eu,
    E a história não marcará, quem sabe?, nem um,
    Nem haverá senão estrume de tantas conquistas futuras.
    Não, não creio em mim.
    Em todos os manicômios há doidos malucos com tantas certezas!
    Eu, que não tenho nenhuma certeza, sou mais certo ou menos certo?
    Não, nem em mim...
     
    Em quantas mansardas e não-mansardas do mundo
    Não estão nesta hora génios-para-si-mesmos sonhando?
    Quantas aspirações altas e nobres e lúcidas -
    Sim, verdadeiramente altas e nobres e lúcidas -,
    E quem sabe se realizáveis,
    Nunca verão a luz do sol real nem acharão ouvidos de gente?
    O mundo é para quem nasce para o conquistar
    E não para quem sonha que pode conquistá-lo, ainda que tenha razão. +
    Tenho sonhado mais que o que Napoleão fez.
    Tenho apertado ao peito hipotético mais humanidades do que Cristo,
    Tenho feito filosofias em segredo que nenhum Kant escreveu.
    Mas sou, e talvez serei sempre, o da mansarda,
    Ainda que não more nela;
    Serei sempre o que não nasceu para isso;
    Serei sempre só o que tinha qualidades;
    Serei sempre o que esperou que lhe abrissem a porta ao pé de uma parede sem porta
    E cantou a cantiga do Infinito numa capoeira,
    E ouviu a voz de Deus num poço tapado.
    Crer em mim? Não, nem em nada.
    Derrame-me a Natureza sobre a cabeça ardente
    O seu sol, a sua chuva, o vento que me acha o cabelo,
    E o resto que venha se vier, ou tiver que vir, ou não venha.
    Escravos cardíacos das estrelas,
    Conquistamos todo o mundo antes de nos levantar da cama;
    Mas acordamos e ele é opaco,
    Levantamo-nos e ele é alheio,
    Saímos de casa e ele é a terra inteira,
    Mais o sistema solar e a Via Láctea e o Indefinido.
     
    (Come chocolates, pequena;
    Come chocolates!
    Olha que não há mais metafísica no mundo senão chocolates.
    Olha que as religiões todas não ensinam mais que a confeitaria.
    Come, pequena suja, come!
    Pudesse eu comer chocolates com a mesma verdade com que comes!
    Mas eu penso e, ao tirar o papel de prata, que é de folhas de estanho,
    Deito tudo para o chão, como tenho deitado a vida.)
     
    Mas ao menos fica da amargura do que nunca serei
    A caligrafia rápida destes versos,
    Pórtico partido para o Impossível.
    Mas ao menos consagro a mim mesmo um desprezo sem lágrimas,
    Nobre ao menos no gesto largo com que atiro
    A roupa suja que sou, sem rol, pra o decurso das coisas,
    E fico em casa sem camisa.
     
    (Tu, que consolas, que não existes e por isso consolas,
    Ou deusa grega, concebida como estátua que fosse viva,
    Ou patrícia romana, impossivelmente nobre e nefasta,
    Ou princesa de trovadores, gentilíssima e colorida,
    Ou marquesa do século dezoito, decotada e longínqua,
    Ou cocote célebre do tempo dos nossos pais,
    Ou não sei quê moderno - não concebo bem o quê -,
    Tudo isso, seja o que for, que sejas, se pode inspirar que inspire!
    Meu coração é um balde despejado.
    Como os que invocam espíritos invocam espíritos invoco
    A mim mesmo e não encontro nada.
    Chego à janela e vejo a rua com uma nitidez absoluta.
    Vejo as lojas, vejo os passeios, vejo os carros que passam,
    Vejo os entes vivos vestidos que se cruzam,
    Vejo os cães que também existem,
    E tudo isto me pesa como uma condenação ao degredo,
    E tudo isto é estrangeiro, como tudo.)
     
    Vivi, estudei, amei, e até cri,
    E hoje não há mendigo que eu não inveje só por não ser eu.
    Olho a cada um os andrajos e as chagas e a mentira,
    E penso: talvez nunca vivesses nem estudasses nem amasses nem cresses
    (Porque é possível fazer a realidade de tudo isso sem fazer nada disso);
    Talvez tenhas existido apenas, como um lagarto a quem cortam o rabo
    E que é rabo para aquém do lagarto remexidamente.
     
    Fiz de mim o que não soube,
    E o que podia fazer de mim não o fiz.
    O dominó que vesti era errado. Conheceram-me logo por quem não era e não desmenti, e perdi-me.
    Quando quis tirar a máscara,
    Estava pegada à cara.
    Quando a tirei e me vi ao espelho,
    Já tinha envelhecido.
    Estava bêbado, já não sabia vestir o dominó que não tinha tirado.
    Deitei fora a máscara e dormi no vestiário
    Como um cão tolerado pela gerência
    Por ser inofensivo
    E vou escrever esta história para provar que sou sublime.
     
    Essência musical dos meus versos inúteis,
    Quem me dera encontrar-te como coisa que eu fizesse,
    E não ficasse sempre defronte da Tabacaria de defronte,
    Calcando aos pés a consciência de estar existindo, Como um tapete em que um bêbado tropeça
    Ou um capacho que os ciganos roubaram e não valia nada.
     
    Mas o dono da Tabacaria chegou à porta e ficou à porta.
    Olho-o com o desconforto da cabeça mal voltada
    E com o desconforto da alma mal-entendendo.
    Ele morrerá e eu morrerei.
    Ele deixará a tabuleta, e eu deixarei versos.
    A certa altura morrerá a tabuleta também, e os versos também.
    Depois de certa altura morrerá a rua onde esteve a tabuleta,
    E a língua em que foram escritos os versos.
    Morrerá depois o planeta girante em que tudo isto se deu.
    Em outros satélites de outros sistemas qualquer coisa como gente
    Continuará fazendo coisas como versos e vivendo por baixo de coisas como tabuletas,
    Sempre uma coisa defronte da outra,
    Sempre uma coisa tão inútil como a outra,
    Sempre o impossível tão estúpido como o real,
    Sempre o mistério do fundo tão certo como o sono de mistério da superfície,
    Sempre isto ou sempre outra coisa ou nem uma coisa nem outra.
     
    Mas um homem entrou na Tabacaria (para comprar tabaco?),
    E a realidade plausível cai de repente em cima de mim.
    Semiergo-me enérgico, convencido, humano,
    E vou tencionar escrever estes versos em que digo o contrário.
     
    Acendo um cigarro ao pensar em escrevê-los
    E saboreio no cigarro a libertação de todos os pensamentos.
    Sigo o fumo como uma rota própria,
    E gozo, num momento sensitivo e competente,
    A libertação de todas as especulações
    E a consciência de que a metafísica é uma consequência de estar mal disposto.
     
    Depois deito-me para trás na cadeira
    E continuo fumando.
    Enquanto o Destino mo conceder, continuarei fumando.
     
    (Se eu casasse com a filha da minha lavadeira
    Talvez fosse feliz.)
    Visto isto, levanto-me da cadeira. Vou à janela.
    O homem saiu da Tabacaria (metendo troco na algibeira das calças?).
    Ah, conheço-o: é o Esteves sem metafísica.
    (O dono da Tabacaria chegou à porta.)
    Como por um instinto divino o Esteves voltou-se e viu-me.
    Acenou-me adeus gritei-lhe Adeus ó Esteves!, e o universo
    Reconstruiu-se-me sem ideal nem esperança, e o dono da Tabacaria sorriu.
    to top

    diff --git a/utils/jalopy/docs/dependencies.html b/utils/jalopy/docs/dependencies.html index 62e881d..41bfd8a 100755 --- a/utils/jalopy/docs/dependencies.html +++ b/utils/jalopy/docs/dependencies.html @@ -16,3 +16,29 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix A. Library Dependencies + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix A. Library Dependencies

    +Depending on the distribution, Jalopy depends on some or all of the following +freely available libraries: +

    Table A.1. Library dependencies

    Name:AElfred XML Parser 1.2
    Author:David Brownell, Michael H. Kay, Microstar Software Ltd.
    License:GNU General Public License
    Info:The parser is taken from the Saxon 6.5.2 release.
    URL:http://sf.net/projects/saxon/
      
    Name:ANTLR Parser Generator 2.7.2a2
    Author:jGuru.com (MageLang Institute), project lead by Terence Parr
    License:Custom, Public Domain
    Info:Contains some changes and fixes to make it work with Jalopy, re-packaged +to avoid classpath clashes. +
    URL:http://www.antlr.org/
      
    Name:GNU getopt Java port 1.0.9
    Author:Aaron M. Renn
    License:GNU General Public License
    URL:http://www.urbanophile.com/~arenn/hacking/download.html
      
    Name:JAXP Java API for XML Processing 1.2
    Author:Sun Microsystems, Inc.
    License:Apache Software License
    URL:http://java.sun.com/xml/
      
    Name:JDOM XML API 1.0 Beta 8
    Author:JDOM Group, lead by Jason Hunter and Brett McLaughlin
    License:BSD/Apache style
    URL:http://www.jdom.org/
      
    Name:log4j logging toolkit 1.2.6
    Author:Apache Software Foundation
    License:Apache Software License
    Info:Jalopy specifically needs 1.2.6 or above as I use an accessor that was +only introduced with 1.2.6
    URL:http://jakarta.apache.org/log4j/
      
    Name:Moe Editor 1.2.0
    Author:BlueJ Group at Monash University, Slava Pestov
    License:Public Domain
    Info:Jalopy incorporates a stripped down version of the syntax package included in the +Moe sources +
    URL:http://www.bluej.org/
      
    Name:Oro Regular Expressions 2.0.6
    Author:Apache Software Foundation
    License:Apache Software License
    URL:http://jakarta.apache.org/oro/
      
    Name:SAX Simple API for XML 2.0.1
    Author:David Megginson, David Brownell
    License:Public Domain
    URL:http://www.saxproject.org/
      

    to top

    diff --git a/utils/jalopy/docs/docs.html b/utils/jalopy/docs/docs.html index 62e881d..59a0c46 100755 --- a/utils/jalopy/docs/docs.html +++ b/utils/jalopy/docs/docs.html @@ -16,3 +16,32 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Documentation + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Documentation

    +Jalopy comes with a complete and (hopefully) useful manual. It is mostly driven by +example as I find this the simplest approach to explain the myriad of switches. +

    +Note that the documentation is a work-in-progress. It could definitely benefit +from your feedback. I'm no native speaker and providing good documentation is +the hardest part for me regarding this project. All remarks, corrections, additions... are +highly welcome. +

    +Either use the navigation bar at the top of this page or follow this link to +access the user manual: http://jalopy.sf.net/manual.html +

    to top

    diff --git a/utils/jalopy/docs/download.html b/utils/jalopy/docs/download.html index 62e881d..98ca93d 100755 --- a/utils/jalopy/docs/download.html +++ b/utils/jalopy/docs/download.html @@ -16,3 +16,33 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Downloads + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    + This page generated: June 8 2004

    Downloads

    +Download your copy of Jalopy today! +

    +Jalopy comes in several flavors. End users most notably want to choose +between one of the available Plug-in bundles. Each bundle provides the integration +with exactly one application. Note that starting with 1.0b6 only the Console Plug-in +provides command line capabilities! +

    +Read the change history for up-to-date +information about the changes in the latest release. +

    Plug-ins

    PackagesSizeDateDescription
    Ant >= 1.4 (.zip)??? KB06/08/2004Ant task, contains Jalopy 1.0b11
    Console (.zip)??? KB06/08/2004Command line interface, contains Jalopy 1.0b11
    Eclipse >= 2.0 (.zip)??? KB06/08/2004Eclipse integration, contains Jalopy 1.0b11
    JBuilder >= 5.0 (.zip)??? KB06/08/2004JBuilder integration, contains Jalopy 1.0b11
    JDeveloper 9i (.zip)??? KB06/08/2004JDeveloper integration, contains Jalopy 1.0b11
    jEdit >= 4.1pre1 (.zip)??? KB06/08/2004jEdit integration, contains Jalopy 1.0b11
    NetBeans >= 3.3 (.zip), Sun ONE Studio 4 +??? KB06/08/2004NetBeans/Sun ONE Studio integration, contains Jalopy 1.0b11

    Sources

    PackagesSizeDateDescription
    Jalopy 1.0b11 (.src.tar.gz)??? KB06/08/2004Contains the complete Jalopy 1.0b11 sources (core runtime + all Plug-ins)

    +Jalopy 1.0 +

    PackagesSizeDateDescription
    Jalopy 1.0b11 (.zip)??? KB06/08/2004Jalopy core runtime, for users who want to integrate Jalopy into their own applications

    +Prior versions can be obtained through the SourceForge file release area: +http://sourceforge.net/project/showfiles.php?group_id=45216 +

    to top

    diff --git a/utils/jalopy/docs/environment.html b/utils/jalopy/docs/environment.html index 62e881d..0448dcc 100755 --- a/utils/jalopy/docs/environment.html +++ b/utils/jalopy/docs/environment.html @@ -16,3 +16,75 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.8. Environment + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.8. Environment

    +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 variable interpolation. +

    +Environment variables are simple key/value pairs. Valid keys take the form +([a-zA-Z_][a-zA-Z0-9_.])+ and are case-sensitive. Values can be +freely choosen. +

    Example 4.142. Sample environment variables

    +author = <a href="http://jalopy.sf.net/contact.html">Marco Hunsicker</a> +
    +project = Jalopy Java Source Code Formatter +

    4.3.8.1. User environment variables

    +Lets you specify you're user specific environment variables. Use the +Add... and Remove buttons to +add or remove items to and from the list. +

    4.3.8.2. System environment variables

    +All system environment variables are automatically available as well but +cannot be changed from within Jalopy. +

    4.3.8.3. Local environment variables

    Additionaly, Jalopy provides some local variables that are automatically set +depending on the execution context.

    +The current list of valid local variables reads as follows: +

    Table 4.1. Local environment variables

    fileThe absolute path of the currently processed Java file (e.g. /usr/projects/test/MyFile.java)
    fileNameThe name of the currently processed Java file (e.g. MyFile.java)
    fileFormatA string represention of the file format that will be used to write a file (e.g. UNIX or DOS)
    packageThe package name of the currently processed Java file (e.g. com.foo.mypackage)
    conventionThe name of the currently active code convention (as specified in the settings)
    tabSizeThe current indentation setting (as specified in the settings)
    objectTypeOnly applies to Javadoc templates: Holds the type name of the class for a constructor.
    paramTypeOnly applies to Javadoc templates: Holds the type name of a parameter.
    exceptionTypeOnly applies to Javadoc templates: Holds the type name of a throws clause.

    4.3.8.4. Usage

    +Once defined, variables can then be enclosed with the dollar sign to form variable expressions. +Variable expressions thus take the form $([a-zA-Z_][a-zA-Z0-9_.]+)$. +

    +During printing these expressions will be interpolated and +the value of the variable inserted into the output file. +

    Example 4.143. Header template with environment variable expressions

    +//==============================================================================
    +// file :       $fileName$
    +// project:     $project$
    +//
    +// last change: date:       $Date$
    +//              by:         $Author$
    +//              revision:   $Revision$
    +//------------------------------------------------------------------------------
    +// copyright:   BSJT Software License (see class documentation)
    +//==============================================================================
    +

    Example 4.144. Header after interpolation

    +//==============================================================================
    +// file :       Byte.java
    +// project:     bsjt-rt
    +//
    +// last change: date:       $Date$
    +//              by:         $Author$
    +//              revision:   $Revision$
    +//------------------------------------------------------------------------------
    +// copyright:   BSJT Software License (see class documentation)
    +//==============================================================================
    +

    +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. +

    to top

    diff --git a/utils/jalopy/docs/faq.html b/utils/jalopy/docs/faq.html index 62e881d..361f0a6 100755 --- a/utils/jalopy/docs/faq.html +++ b/utils/jalopy/docs/faq.html @@ -16,3 +16,91 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - FAQ + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004
    Q:

    +How do I report a bug I have found in Jalopy? +

    A:

    +To be as helpful as possible to the Jalopy developer team and other users, you should use +the +bug tracker database that the Jalopy project maintains on the +SourceForge web site. You do need to be a SourceForge +member to post a bug report. +

    +Before posting a bug report, spend a few moments searching the bug database to see if a +similar report has already been made. The bug tracker has a search facility that will let +you search for bug reports using a variety of criteria. If you find a similar bug report, +and you have additional information to contribute, post a comment to the report. Only if +you do not find a similar bug report, submit a new one. +

    Q:

    +What information should I include in a bug report? +

    A:

    +The web form in the bug tracker report provides several fields for +submitting information. If you are unsure about a particular +item, leave it at the default setting provided in the form. +

    +The more important fields are “Category”, +“Summary” and the “Initial comment”. +

    +When you write your initial comment describing the bug, you +should specify the versions of Jalopy, the Plug-in environment, the Java platform and +operating system you are using. +

    +Be as specific as possible. If you encounter stack traces, attach them. If you have +problems formatting a specific file, locate the cause of the error and attach +the code section as a text file. Also attach your code convention as many errors only +occur with a certain settings combination. +

    +A more typical example should look like: +

    +I newly installed jalopy-1.0b9 on Windows NT with German locales, Sun JDK 1.3.1_05.
    +I upgraded property file from jalopy-1.0b7 via Import/Export.
    +
    +When starting the jalopy settings dialog, I always have problems
    +when I am on the "Sorting" panel. No entries are shown. Maybe
    +this is a similar problem.
    +
    +I tried with different files. Always the same result.
    +
    +Using the Ant task (0.3.3 with Ant 1.4.1), I get a stack trace as attached. I attached
    +my code convention also.
    +

    +The attached stack trace could read as follows: +

    +[jalopy] Jalopy Java Source Code Formatter 1.0b9
    +[jalopy] Format 1 source file
    +[jalopy] X:\beans\booking\BookingService.java:0:0:
    +Parse
    +[jalopy] X:\beans\booking\BookingService.java:0:0:parsing took 170
    +[jalopy] X:\beans\booking\BookingService.java:0:0:transform
    +[jalopy] X:\beans\booking\BookingService.java:0:0:
    +java.lang.NullPointerException
    +[jalopy] java.lang.NullPointerException
    +at de.hunsicker.jalopy.lang.Transformation.addSiblings(Transformation.java:167)
    +at de.hunsicker.jalopy.lang.Transformation.sortDeclarations(Transformation.java:534)
    +at de.hunsicker.jalopy.lang.Transformation.sort(Transformation.java:104)
    +at de.hunsicker.jalopy.lang.Transformation.apply(Transformation.java:64)
    +at de.hunsicker.jalopy.lang.JavaRecognizer.transform(JavaRecognizer.java:451)
    +at de.hunsicker.jalopy.lang.JavaRecognizer.getParseTree(Java Recognizer.java:173)
    +

    +The given information made it quite obvious that the auto-conversion of the code +convention format from 1.0b7 to 1.0b9 failed for some reason. +

    +Looking further at the supplied code convention revealed that the value of the sorting +key was invalid and the actual cause was easy to spot. +

    to top

    diff --git a/utils/jalopy/docs/features.html b/utils/jalopy/docs/features.html index 62e881d..75188d5 100755 --- a/utils/jalopy/docs/features.html +++ b/utils/jalopy/docs/features.html @@ -16,3 +16,91 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Feature list + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Feature list

    • +distributed settings support - share one code convention across multiple machines/platforms +
    • +easy switching between several code conventions +
    • +several pre-configured brace styles (C, Sun, GNU), but fully user-configurable +
    • +auto-insertion/removal of obsolete braces +
    • +special empty braces handling +
    • +wide range of whitespace options for method declarations/calls, brackets, parentheses, operators, delimeters... +
    • +prepending of leading whitespace before every line +
    • +powerful indentation/alignment capabilities +
    • +configurable line wrapping +
    • +controlable amount of blank lines between certain sections, blocks, statements... +
    • +comment removal for all sorts of comments +
    • +special comments to prohibit formatting for certain pieces of code +(uses the Jindent syntax to retain backward compatibility) +
    • +auto-insertion of missing Javadoc comments (selectively configurable for the +different access levels) with variable interpolation +
    • +auto-removal/insertion/correction of obsolete/missing/wrong Javadoc standard tags +
    • +auto-insertion of parentheses around expressions to make operator precedence obvious +
    • +auto-insertion of a serial version UID for serializable classes +
    • +sorting of class/interface/variable/constructor/method declarations +
    • +sorting of access modifiers +
    • +insertion of separation comments between class/interface/variable/constructor/method declarations +
    • +insertion of custom header/footer templates at the begin/end of every file (with variable interpolation) +
    • +sorting/grouping of import declarations +
    • +import optimization: expansion of on-demand import declarations to several +single-type declarations (and vice versa). As of today only implemented for +the Ant and JBuilder Plug-in +
    • +configurable message output +
    • +numbered backups (1-30) +
    • +multi-processor support +
    • +client API to make integration with other tools easy +
    • +graphical application to customize the settings (with live-preview) +
    • +powerful command line interface with regular expression filtering (Console Plug-in) +
    • +several Plug-ins to integrate with common Java applications (current set includes +Ant, +Eclipse, +JBuilder, +JDeveloper, +jEdit and +NetBeans/Sun ONE Studio) +
    • +"OSI Certified Open Source Software" + software, released under a BSD License
    to top

    diff --git a/utils/jalopy/docs/footer.html b/utils/jalopy/docs/footer.html index 62e881d..322a958 100755 --- a/utils/jalopy/docs/footer.html +++ b/utils/jalopy/docs/footer.html @@ -16,3 +16,26 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.11. Footer + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.11. Footer

    +Controls the printing of footers. Refer to Section 4.3.10, “Header” for an +explanation of the different options. +

    +Note that Jalopy always prints one trailing empty line after the footer. +

    to top

    diff --git a/utils/jalopy/docs/header.html b/utils/jalopy/docs/header.html index 62e881d..0e5e8ef 100755 --- a/utils/jalopy/docs/header.html +++ b/utils/jalopy/docs/header.html @@ -16,3 +16,100 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.10. Header + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.10. Header

    +Controls the printing of headers. It is always a good idea (and often a +recommendation) to include a copyright notice at the top of every source file +for a given project. +

    Example 4.148. Typical header template

    +/*
    + *                 Sun Public License Notice
    + *
    + * The contents of this file are subject to the Sun Public License
    + * Version 1.0 (the "License"). You may not use this file except in
    + * compliance with the License. A copy of the License is available at
    + * http://www.sun.com/
    + *
    + * The Original Code is NetBeans. The Initial Developer of the Original
    + * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun
    + * Microsystems, Inc. All Rights Reserved.
    + */
    +

    Headers and Javadoc comments

    +Be aware that Jalopy currently does not treat the header comments any special. +If you're going to use a Javadoc comment (see Section 4.3.9, “Javadoc”) for +your header and have the Javadoc parsing enabled, you will see your header +reformatted. Therefore, you should only use multi-line comments +(like in the example above). +

    4.3.10.1.  +Options +

    +Lets you control the different header options. +

    4.3.10.1.1. General
    • +Use Header +

      +Enables or disables the insertion of a header template at the top of every +processed source file. +

    • +Smart Mode +

      +Lets you specify the number of single-line comments before the first node +(either a package/import statement or a class/interface declaration) that +should be recognized as part of a header and therefore removed. A size +equal to zero, means Smart Mode will be disabled. +

    4.3.10.1.2. Delete Headers

    +To avoid header duplication, you have to specify at least one identify key +that can be used to uniquely recognize your header template. That way an +existing header can be removed before a new one is inserted. +

    +A good key for the template mentioned above would be +Sun Public License Notice. +Most typically this will be your company's name. +

    +You can specify several keys to make it easy to switch between headers. Specify +both a key for the old header that is to be removed and for your new header that +should be inserted. This way, you are sure that even new additions that happens +to contain the old header (maybe checked out from some SCM) are +treated correctly. +

    • +Add... +

      +Adds a new identify key to the list of keys. +

    • +Remove +

      +Removes the currently selected key from the list. +

    4.3.10.1.3. Blank lines

    +To separate the header from the rest of the source code, you may want to +specify the blank lines before and after the header. +

    • +Before +

      +Number of blank lines to insert before the header template. +

    • +After +

      +Number of blank lines to insert after the header template. +

    4.3.10.2.  +Text +

    +Insert your header template here. +

    +You can use variable expressions throughout the header text. Read +Section 4.3.8, “Environment” for more information about this feature. +

    to top

    diff --git a/utils/jalopy/docs/history.html b/utils/jalopy/docs/history.html index 62e881d..089177c 100755 --- a/utils/jalopy/docs/history.html +++ b/utils/jalopy/docs/history.html @@ -16,3 +16,1004 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Change history + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    1.0 Beta 10 (2002-11-14)

    1. +New Features + +
      • +Work started to provide a FAQ. There is currently only one topic: How one should submit a +bug report +

    2. +Bug fixes + +
      • +Newlines after case statements were not printed (as always: only with Sun brace style) +Reported by Sebastian Eigner +(#638369) +
      • +In certain cases the indentation after printing assignments was not correct. Reported by +Grzegorz Pilarczyk +(#638279) +
      • +Array types were not correctly printed when they contained more complicated expressions. +Reported by Benni Mas +(#638355) +
      • +The settings format was not correctly updated from 1.0b7 to 1.0b8. Reported by +Marc Gerstmair +(#637864) +
      • +Code conventions were exported with platform specific encodings which could easily cause +harm. Additionally no XML declaration was printed. Now UTF-8 is used +and the declaration printed. Reported by Tim Moore +(#637262) +
      • +The wrapper scripts only worked when the full pathname to the script-files were used. +Reported and fixed by Kees Kuip +(#637915). +Thanks +
      • +Blank lines before blocks without associated block statements +(I call them freestanding blocks) were not printed +
      • +Additional semicolon(s) after the last import statement caused the blank lines logic to +fail, no blank lines were printed for such a (rare) case +

    3. +Changes + +
      • +JBuilder Plug-in: the Plug-in now displays an error message if no compatible log4j version +could be found in the classpath and shows a workaround for the problem +

    1.0 Beta 9 (2002-11-12)

    1. +New Features + +

      +All aforementioned features were requested, sponsored and thoroughly tested by the German +Techniker Krankenkasse. Hurray! +

      • +The sources have been internationalized. If you're willing to provide translations of the +used message bundles, please contact me +
      • +Jalopy now contains a simple Code Inspector that is able to inspect your sources for +naming convention violations and possible code weaknesses. See the +Code Inspector chapter in the manual +
      • +New history methods that uses checksums to better handle change detection for files. +See History section. Very cool feature +contributed by Michael Callum +
      • +Javadoc tag checking for @throws tags can now be enabled +separately. See Correct @throws tags
      • +Array type brackets may now be printed after the identifier. +See Misc section. +Requested by John Zukowski +(#599239) +
      • +You can now specify whether Jalopy should insert a trailing empty line at the +end of files in order to avoid problems with certain text formatters and processors. +See Misc section. Note that +Jalopy always inserts a trailing newline after EOF-comments (like footers). +Requested by David Karr +(#589696) +
      • +The order of import statement groups is now user configurable. See Import section. +Requested by Jürgen Ebert +(#591904) +
      • +The Format menu item now appears in the context menu of the Content +Pane too +
      • +Auto-correction for Javadoc @throws tags can now be +controlled separately. See Correct @throws tags for insight +
      • +NetBeans Plug-in: the Format action is now available for Servlet nodes too +
      • +JBuilder Plug-in: the Format item it now available in the context menu of content tab pane too +
      • +JBuilder Plug-in: Breakpoints and Bookmarks are restored after formatting +
      • +JDeveloper Plug-in: the Plug-in has been completely rewritten. Formatting works for +workspaces too, the message output is displayed in a nice tree view. And the whole thing +is now compatible with JDeveloper 9.0.3 +
      • +The core engine is now able to track positions. The IDE Plug-ins are therefore now able +to restore the mouse pointer correctly (it will be positioned before the line with the +node that was nearest to the last caret position) +

    2. +Bug fixes + +
      • +The cleanup of the backup directory could lead to NPE. Reported by Mike Dubman +(#617942) +
      • +The output of array initializers has been improved. Reported by Kate Rhodes +(#617684) +
      • +Important statements collapsing failed because of incompatible parsetree changes between 1.0b7 and 1.0b8. Reported by Mark Ralph +(#617608) +
      • +Handling of Javadoc comments failed for methods/ctors returning an array type. Reported by Magnus Ihse +(#615039) +
      • +The problem with wrong indentation after assignments has gone. Reported by Timo Carl +(#612049) +
      • Treat different option has been corrected to work with all styles. Reported by Eric Lamontagne +(#611182) +
      • +I've fixed some cases where Jalopy produced trailing whitespace on wrapping lines. There may still be others... +Reported by Ralf Wiebicke +(#607697) +
      • +The Javadoc printer failed to output HTML definition lists correctly. Reportey by +David Cooper +(#607416) +
      • +The Javadoc printer failed to output HTML defintion lists correcty. Reportey by +David Cooper +(#607416) +
      • +Array initializers inside statements were not printed correctly. Reported by +Dirk Hoffmann +(#607303) +
      • +Variable macros did (as documented) not work for names like user.name. Reported by +Don Johnson +(#606173) +
      • +Empty lines in multi-line comments produced trailing whitespace. +Reported by Ralf Wiebicke +(#605998) +
      • +Javadoc trailing comments were ignored. Jalopy will now (again) treat such cases as errors. +Reported by Ralf Wiebicke +(#604072) +
      • +Jalopy duplicated comments in some rare cases. Reported by David Cooper +(#604065) +
      • +The console app failed to work on certain platforms due to classloading problems. +Reported by Benjamin Geer +#604038
      • +No blank lines were kept for synchronized blocks. Reported by Kees Kuip +#603455
      • +Variable interpolation did not work in header or footers. Reported by Daniel Frey +#601901
      • +Jalopy lost trailing comments in certain cases. Reported by Shankar Unni, Steve Corwin, Ray Powell +(#601393, +#602169, +#603914) +
      • +Jalopy failed to handle empty Javadoc Standard tags. Reported by Henrik Kjær and Don Johnson +(#601204, +#606163) +
      • +JBuilder Plug-in: the Plug-in is now compatible with JBuilder 7.0. Reported by Simeon Zverinski +(#596821) +
      • +The example Ant task in the manual contained a syntax error. +Reported by Eric Larson +(#595777) +
      • +With generating Javadoc comments enabled, existing +variable/method/class-level comments were dropped if not in Javadoc style. +Reported by John Zukowski +(#595164) +
      • +Auto-insertion of braces for braceless if-else blocks did not work as expected +(for Sun brace style). Reported by John Zukowski +(#595160) +
      • +@throws tags were wrongly inserted in some cases. Reported by Jarek Sacha +(#594738) +
      • +Printing of empty class/interface bodies failed, if cuddling of braces was +enabled. Reported by Richard Tasker and Benjamin Geer +(#594076, +#597080) +
      • +@version tags were wrapped if max. line length exceeded, and therefore failed to +be updated by CVS when checked in. Reported by Johnny Cass +(#592504) +
      • +Jalopy used to insert two many blank lines before certain statements. Reported by Kees Kuip +(#592496) +
      • jalopy.sh and preferences.sh failed +to work (under some unix flavors) because of wrong end-of-line characters. +Actually a build/CVS problem. Reported and fixed by Kees Kuip +(#592487) +
      • +Eclipse Plug-in: upon startup of the IDE org.eclipse.swt.SWTException: invalid thread access +was thrown. Reportedy by Dirk Jacobs +(#567314) +
      • +Backup files were always kept if the output target was not a file +
      • +jEdit Plug-in: the Format current Buffer menu item was grayed out +upon start-up if the buffer contained a non-Java file +
      • +Console Plug-in: specifying several regular expression patterns did not work. +Reported by Sameer Singh +

    3. +Changes + +
      • +The .XML settings format has been revised. It should now be somewhat cleaner. These +changes are transparent, the old settings format can be imported but only the new format +will be exportet. Those who use the .XML format should re-export their settings to avoid +the auto-transformation (and of course, there are many new switches) +
      • +The /bin directory of the distributions have been renamed to +/lib. For the Console and Ant Plug-ins the /bin +now only contains the wrapper scripts and the libaries moved to /lib. +
      • +Eclipse Plug-in: the Format label in the project view context menu +no longer appears at the end. Suggested by Davor Cengija and Vincent Massol +(#578331) +
      • +JBuilder Plug-in: the Format item in the project view context menu +is now more context sensitive. It won't pop up for non-Java files. Additionally, when +formatting the whole Project a confirmation message box appears +
      • +The @todo tag is now part of the build-in tag list +
      • +The Tab support has been rewritten. If tabs are enabled, *all* whitespace will +be realized with tabs (not only leading whitespace as with the former +implementation) +
      • +Denis N. Antonioli contributed several patches for the Javadoc parser: +
        • +The parser is now able to handle left curly braces that are not part of +an In-line tag +
        • +Attributes must not be quoted and numeric attributes may also start with %
        • +The closing tags for <dd>, <dl>, <dir> are now optional +
        +Thank you! +
      • +Parameter alignment of method or constructor declarations now works regardless +of the indentation settings (it did not work with custom indentation in +earlier versions) +
      • +The preview frame no longer uses the (unmaintained) jEdit Public Domain text area but +rather a standard JEditorPane with a highlighter dereived from +the BlueJ project (and that highlighter is +again build upon the jEdit Public Domain syntax package). Users of prior betas may +savely remove the file textarea-2.2.3.jar from their disks +

    1.0 Beta 8 (2002-08-06)

    1. +New Features + +
      • +Thanks to Frank Klomp from +www.informatikatelier.com +a Plug-in for Oracle JDeveloper 9i is now available. +See Plug-in section
      • +Jalopy now comes with a simple project manager to make switching between +several code conventions easier. +See Project section
      • +ConsolePlugin: new option --force
      • +The line wrapping for chained method calls now works for nested calls too +
      • +The settings dialog now comes with a live preview. Requested by Erik Dick +(#563215) +
      • +Similar to Jindent, Jalopy is now able to perform variable interpolation for +the header or footer and Javadoc comment templates. +See Environment variables section. +Requested by Erik Dick +(#563213) +
      • +Similar to Jindent, you can now define custom Javadoc templates for +fields, classes/interfaces, constructor and method comments. See +Javadoc Templates section +
      • +The sorting order for the Java modifiers is now configurable. See +Sorting section +
      • +The texts for separator comments are now user configurable. See +Separation section. +Requested by Dirk Jacobs +(#567322). +
      • +The grouping of import statements can now be disabled. See +Imports section. +Requested by Emil A. Lefkof +(#562475). +
      • +Lowercase "l" as trailing character for literal +longs will be automatically capitalized during printing +
      • +The abstract modifier will be automatically removed if found +for interface or interface method declarations (as these are implicitly +abstract). +
      • +You can now specify whether Java sources should be parsed as JDK 1.4 compatible +(the default) or if sources should be parsed without treating +assert as a reserved keyword (i.e. JDK 1.3 compatible). +See the General section. +This change addresses bugs +#565512 and +#576983
      • +The header detection now provides a Smart Mode for users +who want to use singe-line comments for headers. If enabled, Jalopy treats the +first n number of singe-line comments before the first +node as part of a header and removes them. +See the Header section
      • +The element sorting changed: Added was a new category +Static variables/initializers +to avoid touching the class initialization as required by the Java language +specification ("static initializers and class variable initializers are +executed in textual order"). This partially addresses the feature request +#545603 also. +Reported by Kirk Wolf +
      • +The import optimization feature is now available for the Ant Plug-in too. See +the Ant Plug-in chapter +

    2. +Bugfixes + +
      • +Setting for Space before Brackets didn't take effect +
      • +Setting for Space Before Brackets in Types didn't take +effect for something like new String[0]
      • +jEdit Plug-in: The integration with the Gobal Options dialog doesn't suffer +from the resizing problems anymore +
      • +jEdit Plug-in: Jalopy directed all formatting messages always to the first view +
      • +Read-only files don't cause exceptions anymore. Jalopy will now display a +warning message. Reported by Andrew Barkley +(#587068) +
      • +Enclosed creator constructs could lead to uncompilable code. Reported by +Eddy Kivits +(#586450) +
      • do-while blocks without enclosing braces where not treated correctly. +Reported by Marcel Toele +(#581394) +
      • +The Javadoc printer missed a blank between the @link tag and +following HTML links. Reportedy by Brian Harriger +(#581299) +
      • +EOL characters were not correctly translated for multi-line, special and +Javadoc comments. Reportedy by Olivier Mengué +(#572130) +
      • +Enabling the cuddling of empty braces lead to compilation errors if an +trailing comment appeared before the opening brace. The cuddling is now disabled +for such a (rare) case. Reported by Kees Kuip +(#568974) +
      • +NPE during import that only appeared with certain JDKs. Reportedy by Davor Cengija +(#566205) +
      • +The insertion of Javadoc comments did not work for classes/interfaces and +fields (it was not implemented). Reported by Thomas Börkel +(#564255) +
      • +After importing settings from a distributed location, Jalopy did not use +these settings if the host was unavailable on successive invocations (but +rather the build-in defaults); now the imported settings are used and a +warning message issued. Reported by Thomas Börkel +(#563976) +
      • +The Java Language Specification requires every single-line comment to be +terminated by an end-of-line sequence, but Jalopy allowed a single-line-comment +to be terminated by an end-of-file. Reported by Thomas Börkel +(#563974) +
      • +Ant 1.4.1 (or earlier) caused problems because of an incompatibility with the +bundled AElfred parser. Therefore the parser (and all other 3rd party libraries) +are no longer bundled to enable you to selectively copy the needed libs into +the Ant /lib folder. Documentation was updated to explain +the issue. Reported by Larry Hamel et.al. +(#563385) +
      • +The Java parser failed for (strange) code like +if (obj.getClass() == (byte.class)). Reported by Hui Lin +(#562681) +
      • try/catch blocks were not correctly +formatted (again only with Sun brace style). Reported by Emil A. Lefkof +(#562039) +
      • +Chained method calls were wrongly wrapped if part of an expression. Reported by Emil A. Lefkof +(#562037) +
      • +Fixed some bugs regarding (evil) Sun brace styling. Reported by +Emil A. Lefkof, Thomas Börkel, Larry Hamel and Christian Halstrick, Anders Johansson +(#562034, +#564247, +#569306, +#569031, +#580600) +
      • +The settings format was not correctly updated between 1.0b6 and 1.0b7 +causing an IllegalArgumentException if the history +feature was disabled. Reported by Martin Spiller +(#561398, +#561675) +
      • +As the comment preserving/printing implementation has been rewritten, trailing +comment support should now work in nearly all cases. At least all reported +issues are now treated correctly. Reported by Stephane Houle, Emil A. Lefkof, +Kees Kuip, John Wilson +(#559222, +#565820, +#562034, +#578664) +
      • +The user selected brace style did not take effect for anonymous inner classes. +Reported by Ian Brown +(#545431) +
      • +Fixed a minor GUI bug in the Javadoc panel (column headers did not show up +using Windows L&F). Reported by Thomas Sauzedde +(#544404) +

    3. +Changes + +
      • +JBuilder Plug-in: it now checks whether the classpath is correctly set up +(whether all defined libraries exist) and if something seems to be broken, +the import optimization feature is enabled to avoid errors (a dialog appears to +inform you about the misconfiguration) +
      • +JBuilder Plug-in: the Jalopy Options... menu item now +appears in the Options group of the +Tools menu. +
      • +jEdit Plug-in: the Plug-in does not use ErrorList anymore, but rather relies +on the MessageView Plug-in which is bundled with the distribution (as it is not +yet available through the jEdit Plugin Central) +
      • +The sorting logic for variable declarations now compares by access modifiers first, +then (new!) type name and only if these two are equal by name (identifier) +
      • +The Javadoc printer now inserts a newline after every found <br> tag +(only happens if Javadoc parsing is enabled). This addresses the "Bug" +reported by Tony Falabella (that was no bug but rather the behaviour I found +sufficient) +(#562502) +
      • +The default setting for the backup level changed, it is now set to "0" +(no backups are kept) +
      • +The settings dialog is no longer a modal dialog (necessary for the live preview) +
      • +Started from the command line, the settings dialog now appears in the task +bar (under Win32). Suggested by Knut Wannheden +
      • +The bundled ANTLR runtime has been repackaged to avoid versioning problems +
      • +Apart from the ANTLR runtime, the binary distributions no longer bundle the +needed 3rd party libraries. Thus the installation procedure for some Plug-ins +requires more care: you have to manually remove outdated 3rd party libraries +before you copy the .jars provided with Jalopy into the +Plug-in/module folder of your application (Applies to Ant, Console, JBuilder + and jEdit, if done manually) +
      • +Some shipped 3rd party jars we're updated: log4j to 1.2.6, Oro to 2.0.6, +JAXP to 1.2. +

    1.0 Beta 7 (2002-05-26)

    1. +New Features + +
      • +The wrapping behaviour for throws clauses is now more configurable. See +Wrapping section. +Requested by Stephane Houle +(#559222) +
      • +Indentation for extends, implements +and throws can now be specified explicitly. See +Indentation section
      • +Chained method calls are now wrapped (if line wrapping is enabled, of course). +You can either force wrapping after every call +(Refer to the Wrapping section) +or let wrapping happen automatically. Requested by Stephane Houle +(#559222) +

    2. +Bugfixes + +
      • +Sometimes stdin was not formatted. Reported and fixed by Kees Kuip +(#559503) +
      • +1.0b6 failed to work with JDK 1.3.0 due to a bug in the handling of the index +list .jar entry. Ant 1.5beta1 named it "INDEX.LIST" but this JDK expects "Index.list" +which in turn lead to classloading problems. +Reported by Steve Bromley +(#559704) +and Joel Alaux +(#559240) +
      • +Console Plug-in: Parsing a non-valid Java file with stdin always resulted in an +exitcode "0". It now returns "1" in such cases. Reported by Kees Kuip +(#560709) +
      • +The file history failed to work (because of an initialization error) +
      • +The wrapper scripts for the Console Plug-in failed to work (I forgot to rename +the startup class that has changed in 1.0b6). Reported by Ronen Rotstain +
      • +The JBuilder Plug-in is now compatible with jVI. Reported by Rich Kadel +(#559761) +
      • +Javadoc tags were (intensionally) only printed if the Javadoc comment belonged to a class/interface or +method/ctor declaration. Reported by Tony Falabella +(#559357) +
      • +Specifying a relative file as input source could lead to a file loss in case +of RuntimeExceptions during the processing and a backup level of "0". +Reported by Kees Kuip +(#558353) +
      • +The NetBeans module failed to function properly due to a wrong Manifest .jar entry. Reported by Nico Max and Davide Baroncelli +(#558560) +
      • +If Space around Shift operators was disabled, Jalopy failed to +add whitespace around the instanceof operator. Reported by Roger Kemp +(#558482) +
      • +Fixed a small but annoying bug regarding the alignment of assignments. Reported by GilloS +(#558638) +

    3. +Changes + +
      • +The detection logic for debug logging calls has been slightly improved. Calls like +Configuration.debug() won't be treated as logging calls anymore +
      • +The custom Javadoc tag definitions are not stored in distinct files anymore but +rather go into the settings file (to make it portable across system bounderies) +
      • +The Ant task attribute handling changed: if you omit any optional attribute now the +corresponding settings settings will be used for *all* attributes +

    1.0 Beta 6 (2002-05-19)

    1. +New Features + +
      • +Thanks to Roman Sarychev, Jalopy now provides the ability to import/export +settings in an .XML format +(#549177) +
      • +Jalopy is now able to keep original blank lines. See Separation section for details +(#555914) +
      • +Modifiers of declarations can now be sorted. See Sort section for details +
      • +You can now enable the auto-insertion of an enclosing conditional for logging calls. See Misc section for details. Requested by Larry Hamel +(#550336) +
      • +Parameters of method definitions can now be aligned. See Indentation section. Requested by Gary Bentley +(#551205) +
      • +The default grouping depth is now user configurable. See Imports section. Requested by Larry Hamel +
      • +Added new options (before and after curly braces, blocks...) to customize the blank lines behaviour. See Separation section
      • +You can now print a blank between array type and initializer. Requested by David Weitzman +(#548888) +
      • +Jalopy is now able to load its settings from an Internet address. Refer to the +General section of the manual. Cool feature requested by Sven van't Veer +
      • +You can now use stdin/stdout redirection from the command line. If no input +file(s) are specified, Jalopy will start listening on stdin. Note that the +command line interface is now only available via the Console Plug-in! See +Examples section
      • +For array initializers you can now force a specfic number of elements to be +printed on each line or whether all elements should be printed on one line. +See Wrapping section
      • +Eclipse Plug-in: the Packages view context menu now contains a formatting menu item +

    2. +Bugfixes + + +
      • +Eclipse Plug-in: Fixed a bug in the shutdown hook. Only occurred if one had not +formatted several files at once during a session. Reported by Eric Vickery +
      • +Multi-line comments were not printed correctly if parsing of multi-line comments was +disabled and the individual lines not starting with a leading asterix. Reported by Tony Falabella +(#554141) +
      • +Javadoc generation failed if Parse/Format tags was disabled. Reported by Gary Bentley +(#551194) +
      • +Serial version UID check box didn't save. Reported by Kevin Duffey +(#551604) +
      • +Formatting an opened file with one of the Plug-ins did not create a backup file. Reported by Warren Nicholls +(#545077) +
      • +Custom Javadoc tag definitions are now loaded correctly and thus working. Reported by Arnd Empting +(#547028) +
      • +Fixed an trailing comment bug for the Sun brace styling. Reported by Martin Spiller +(#545616) +
      • +Eclipse Plug-in: After formatting the active editor, the IBeam cursor was not +restored but rather the default cursor showed up +
      • +Line wrapping for while and do-while expression parts now working (I forgot the markers) +
      • +Fixed a blank lines issue for singe-line comments (printed one extra behind +left curly braces, this is now user configurable) +
      • +Fixed another blank lines issue for the Sun brace style (missed one blank +line between blocks. Reported by Bradley Smith +(#545941, +#544459) +
      • +EOF comments weren't always treated correctly (in case of singe-line comments). Reported by Ian Brown +(#544706) +
      • +jEdit Plug-in: Updated to work with 4.0 final. It now won't work with any prior release +(#544100) +
      • +NetBeans Plug-in: fixed a build problem causing the .nbm +file to be missing in the distro archive. Reported by Brian Ewins +(#544162) +
      • +Fixed a minor bug in the JavadocPrinter regarding the printing of lists +
      • +Footers were always removed no matter whether enabled or disabled +
      • +Left curly brace for array initialization expression now regards the selected brace style +

    3. +Changes + +
      • +The license terms have changed. The core runtime and most of the Plug-ins are now +released under the BSD license. +Due to license restrictions of a 3rd party library, +the command line interface has been removed from *ALL* +distributions and a new Plug-in was created: the Console Plug-in. +
      • +JBuilder Plug-in: switching project does not bring up a blocking progress dialog +anymore. The class repository is loaded in a background thread +
      • +All file dialogs are not opened directly anymore but are accessible via an +intermediate component that provides a history +
      • +Eclipse Plug-in: Updated the plugin.xml to work with the +latest stable build (20020416). This change only regards the menu item to +invoke the Jalopy settings dialog; this item now appears under the 'Window' +menu as the 'Workbench' menu has been gone +
      • +The Javadoc parser now recognizes <br/> as a valid HTML tag +(#547028) +
      • +The Javadoc parser now checks whether any custom tag definition was added/removed +since the last run and therefore needs reloading +
      • +Specifying an empty string input via Jalopy#setInput(String, String) no longer +throws IllegalArgumentException, instead the input is +handled like an up-to-date file +
      • Load... and Save... buttons on the +General settings page has been renamed +to Import... and Export...
      • +Changed the comment handling of labeled statements: if the following loop had +comments before, these were printed before the labeled statement, now they will +be printed before the loop statement +
      • +The build scripts has been updated to use Ant 1.5beta1 features. Prior Ant +releases won't work anymore +
      • +Updated the bundled log4j distribution to 1.2.1. Adopted the new naming scheme +and renamed all Category and Priority +instances. Note that 1.2 is *no* drop-in replacement (no matter what the log4j docu says) +as they renamed a public (sic!) field I have to use +
      • +jEdit Plug-in: The menu item to display the Jalopy settings dialog can now +be added to the context menu +

    1.0 Beta 5 (2000-04-14)

    1. +New Features + +
      • AbstractPlugin.java now comes with multi-processor +support, so all IDE Plug-ins should operate faster on multi-processor machines. +Refer to the Misc section of the +manual +
      • +Ant Plug-in: Added multi-processor support, new parameter threads to specify +the number of threads to use +
      • +Declaration and assignments aligning now available. Refer to the +Indentation section of the +manual +
      • +Separation (blank lines) behaviour now configurable. Refer to the +Separation section of the manual +
      • +Added Eclipse Plug-in (needs Eclipse 2.0) +
      • +Jalopy now supports the common convention of using a single @see tag +instead of all the other tags and won't insert any missing Javadoc tags in such +cases. Same applies if the inline tag {@inheritDoc} is found in the description +
      • +Work started to provide an extended index for the user manual. +

    2. +Bugfixes + +
      • +Javadoc add/remove didn't work for @return tag +
      • +The editable combo boxes (NumberComboBoxEditor.java) +caused exceptions on losing focus +

    3. +Changes +
      • +Javadoc now also generated for methods/ctors without params. +
      • +Ant Plug-in: Changed the configuration of the message output. It is +now controlled by a single parameter loglevel. This may +force you to update your build scripts. Refer to the +Ant section +of the manual to read about the list of valid parameters +
      • +The source base has been split into different modules (to make CVS happy and +life easier) and the build system has changed accordingly +
      • +The website and all documentation is now auto-generated out of .XML files +(using the Ant style task and DocBook XSL 1.50.0/Saxon 6.5.1) +
      • +The entries of the history viewer are now sorted +
      • +The web site has a new look +

    1.0 Beta 4 (2000-03-20)

    1. +New Features + +
      • +Jalopy now provides some decent user documentation. Many thanks to Larry +Hamel for the proof-reading +
      • +The line wrapping logic is now fully implemented +
      • +New line wrapping option: You can now force the wrapping for parameter +lists of method calls. Note that this switch only applies to those lists +that contain another method call. Refer to the +Wrap always section of the manual. +Nice feature suggested by David Beutel +
      • +Continuation indentation is now available for ternary if-else epressions +too. Refer to the +Indentation section of the manual +
      • +New option: You can now specify whether you want indentation realized +with tabs instead of spaces. Refer to the +Indentation section of the manual. +This feature was kindly donated by David Beutel +
      • +The history feature is now more user configurable. You can specifiy +whether you want to have it enabled at all and what policy you want to +use. Choose between the comment based history (which inserts a small +header on top of every file) or a file-driven history. Refer to the +Indentation section of the manual. +The history feature is now *disabled* by default +
      • +Added two new wrapping options: Before extends keyword and +Before implements keyword. Enabling any of them will force +a newline before the given keyword. Refer to the +Wrap always section of the manual. +Requested by John Bishop +
      • +New option to control the printing of labels. You can now specify whether +a line break should be printed after labels or not. Refer to the +Wrap always section of the manual +

    2. +Bugfixes + +
      • +Small bugfix regarding trailing comments and array initialization +
      • +Line wrapping for parameter lists was always performed, no matter what +preference setting given +
      • +For ternary if-else statements, parentheses was always inserted for the +expression part if Insert parentheses around expressions was enabled. +Now parentheses are only inserted if actually needed +
      • Indent labels option didn't show up on the indentation settings page +
      • +The Javadoc auto-generation facility no longer inserts @throws tags for throws +clauses that are catched in the method body +

    3. +Changes + +
      • +Settings pages Braces and Block style +now merged into one page Braces with two tabs +Style and Misc
      • Cancel button of the Progress monitor dialog renamed to +Stop to reflect the fact that some files might have changed +
      • +Settings page Javadoc cleaned up +
      • +Specifying an identify key to delete existing headers/footers is now +enforced +

    1.0 Beta 3 (2000-03-10)

    1. +New Features + +
      • +New option: You can now specify whether you want to retain first column +comments vs. indenting them relative to their position in the code. Refer to the +Indentation section of the manual +
      • +New option: You can now use different brace styles for class/method +blocks and other types of blocks (for Sun, GNU and Custom style) +

    2. +Bugfixes + +
      • +The Javadoc parser rework lead to an error with the Javadoc @throws tags +verification. This has been fixed now (Actually only a build problem) +
      • +If Space before Case colon was enabled, no space was printed for +the default keyword +
      • +The comment creation only worked if the comment parsing and tag checking +was enabled too +
      • +Formatting a non-file input produced wrong updates of the history header +

    3. +Changes + +
      • +The line-wrapping logic changed/improved somewhat +

    1.0 Beta 2 (2002-03-05)

    1. +New Features + +
      • +Custom Javadoc tag definitions now available +
      • +New option: You can now choose whether you want an empty statement +inserted into empty braces to make the intension obvious +
      • +New option: You can now specify whether if-statements should generally use +continuation indent. This option was added to address the fact that +conventional indentation could make seeing the body difficult (as outlined +in the Sun Java Conventions guide) +
      • +New option: Line wrapping can now be performed before or after operators +
      • +New option: You can now specify template texts for auto-inserted Javadoc tags. +
      • +NetBeans Plug-in added (for NetBeans 3.3.1 and higher) +
      • +jEdit Plug-in: updated to work with jEdit 4.0prev1 and higher +
      • +JBuilder Plug-in: added the Format and Settings actions to the popup +menu of the editor pane +
      • +Ant Plug-in: new parameter style to set the settings file to use +

    2. +Bugfixes + +
      • +Fixed a bug regarding the wrong printing of parenthesis for certain +rare cases +
      • +Correction of mispelled Javadoc standard tags failed if the correct +amount of tags was given for the method/ctor +
      • +No space was printed after array elements for arrays that fit in +one line +
      • +Printing of trailing comments now works much more reliable +
      • +No message was reported in case the user specified an invalid input file +on the command line +
      • +Progress dialog didn't show progress for files with an opened editor view +
      • +If no arguments were given on the command line, no warning was printed. +Now the usage notes will appear +
      • +Fixed a horrible bug in the JBuilder Plug-in which caused wrong class +repository updates if one switched JDKs +
      • +Fixed an error in the initialization process of the logging facility for +Plug-ins using the AbstractPlugin skeleton which hindered the updating +of the errors/warnings count in the progress dialog +

    3. +Changes + +
      • +All Plug-ins now only available as bundles. This will certainly pertain +until a branding mechanism is available to check whether a given Plug-in +will work with a given Jalopy runtime (a la NetBeans?) +
      • +Changed/refactored some method signatures in the client API for consistency +and ease of use +
      • +The Javadoc parser has been reworked to allow both custom standard and +inline tags +
      • +Some API documentation enhancements, updated the build script to only generate +the documentation for the public client API, removed the documentation for the +Plug-ins from the distribution Javadoc +
      • +Moved the logic to set the settings file to use, from the command line +interface into Jalopy.java to let Plug-ins easily set the settings file +to use +
      • +Updated the used ANTLR version to 2.7.2a2. Compiled with optimizations and +without debugging info results in smaller archive sizes +
      • +Many build-script improvements. It should now be possible to build a +Jalopy runtime version without the need of Plug-in related 3rd-party +libraries +
      • +The Jalopy runtime classes and all needed library classes are now bundled +into one .jar +
      • +The customizer mini editor is no longer part of the runtime .jar +

    1.0 Beta 1 (2002-02-13)

    1. +New Features + +
      • +jEdit Plug-in added (for jEdit 3.2.2) +
      • +The progress dialog now includes a cancel button +

    2. +Bugfixes + +
      • +Settings dialog did not close when invoked on the command line +with java Preferences
      • +Error in build script fixed (JavadocTokenTypes.txt now included in +the .jars) to make the Javadoc auto-correction work +
      • +Braces indentation not printed for left curly braces +
      • +JBuilder Plug-in: Registered directories need to be reparsed on +every startup for the import expansion/collapsing to work reliably +

    3. +Changes + +
      • +Changed default package depth for packages java, javax, gnu in the +settings (former was 3, now uses 2) +
      • +Changed the SwingWorker implementation to the one found in Doug Lea's +util.concurrent package, refactored AbstractPlugin.java +to use an inner class dereived from SwingWorker.java +instead of extending SwingWorker.java itself +
      • +Formatting a single file doesn't bring up the progress dialog anymore, but +rather shows the system wait cursor and blocks all input +
      • +Removed the Javadoc documentation from the Plug-in distributions +

    Initial beta version (2002-02-10)

    to top

    diff --git a/utils/jalopy/docs/imports.html b/utils/jalopy/docs/imports.html index 62e881d..087fb92 100755 --- a/utils/jalopy/docs/imports.html +++ b/utils/jalopy/docs/imports.html @@ -16,3 +16,123 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.7. Imports + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.7. Imports

    +Controls the handling of import declarations. +

    4.3.7.1. General

    +Enables the sorting of import statements. Sorting the import statements makes +it simple to browse a long list of imports. +

    • +Sort import statements +

      +Enables or disables the sorting of import statements. Enabling this option +will sort all imports lexicographically. +

    4.3.7.2. Grouping

    +In addition to sorting, associated packages can be grouped together to reduce +complexity by packing related information into a common unit. +

    • +Default grouping depth +

      +Lets you define the default grouping depth. Only takes effect if sorting is enabled. +

      +The grouping depth specifies the number of package name parts that are to +be taken into account in order to determine whether two import statements are to +be grouped together. For certain packages you may want to specify a grouping +depth that differs from the default. +

      +Statements are to be grouped together, if all relevant parts are equal. So via +the grouping depth you can effectively specify how many parts are relevant. +

      +To disable grouping at all, set the grouping depth to "0". +

      Example 4.137. Grouping depth java='1'

      +import java.awt.Color;
      +import java.awt.Component;
      +import java.awt.GridBagConstraints;
      +import java.awt.GridBagLayout;
      +import java.awt.event.ActionEvent;
      +import java.awt.event.ActionListener;
      +import java.util.ArrayList;
      +import java.util.List;
      +

      Example 4.138. Grouping depth java='2'

      +import java.awt.Color;
      +import java.awt.Component;
      +import java.awt.GridBagConstraints;
      +import java.awt.GridBagLayout;
      +import java.awt.event.ActionEvent;
      +import java.awt.event.ActionListener;
      +
      +import java.util.ArrayList;
      +import java.util.List;
      +

      Example 4.139. Grouping depth java= '3'

      +import java.awt.Color;
      +import java.awt.Component;
      +import java.awt.GridBagConstraints;
      +import java.awt.GridBagLayout;
      +
      +import java.awt.event.ActionEvent;
      +import java.awt.event.ActionListener;
      +
      +import java.util.ArrayList;
      +import java.util.List;
      +

    +You can add/remove package fragments (e.g. javax, javax.swing or com.foo.sarah) +via the Add... and Remove +buttons to fine-tune the appearance for certain packages. +

    +To specify the order in which related statements should appear, you +may want to use the Up and Down buttons. +

    +Note that the asterix represents all undefined packages. +

    4.3.7.3. Optimize

    +Optimizes the import statements by either expanding or collapsing them. This +is a nice feature that is currently only available with the Ant and +JBuilder Plug-in. +

    • +Expand on-demand imports + +

      +If enabled, tries to expand all on-demand import statements. +

      +Expanding means to resolve all on-demand import statements (sometimes called +wildcard imports) and replace them with single-type import statements (sometimes +called explicit imports) of the types that are actually used in the source file. +

      +So the following on-demand import statement may be expanded into two +single-type import statements that reference the needed types for this package. +

      Example 4.140. On-demand import statement

      +import java.util.*;
      +

      Example 4.141. Single-type import statements

      +import java.util.ArrayList;
      +import java.util.List;
      +

      +Using single-type imports is quite useful and an absolute requirement in the +open source community as this code is usually really reviewed. Using +single-type imports makes it easy for the code reader to quickly find +out the package a particular type is in: You just search for the type name +from the start of the source file. +

    • +Collapse single-type imports + + +

      +If enabled, tries to collapse all single-type statements. +

      +Collapsing means to remove all single-type imports of a given package and +replace them with one on-demand import statement. +

    to top

    diff --git a/utils/jalopy/docs/indentation.html b/utils/jalopy/docs/indentation.html index 62e881d..a281328 100755 --- a/utils/jalopy/docs/indentation.html +++ b/utils/jalopy/docs/indentation.html @@ -16,3 +16,430 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.3. Indentation + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.3. Indentation

    +Controls the indentation settings. + +

    4.3.3.1. General

    Lets you change the general indentation settings.

    4.3.3.1.1. Policy

    +Lets you choose the way lines should be indented. +

    • +Standard indent +

      +With standard indentation, lines will be indented according to the +current indentation level (Note that the indentation level changes as the block +or parentheses level changes). +

      Example 4.30. Method declaration (standard indented)

      +public void severalParameters(String one, int two, String three,
      +    StringObject four, AnotherObject five) {
      +...
      +}
      +

      Example 4.31. Method Call (standard indented)

      +vector.add(new AppServerReference(
      +        "RemoteApplicationManager",
      +        poa.create_reference_with_id("RemoteApplicationManager".getBytes(),
      +            RemoteApplicationManagerHelper.id())));
      +

      Example 4.32. Assignment (standard indented)

      +doublette[InteressentenPflegeController.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
      +    .substring(0, 2) + "."
      +    + versichertenResultSetRow[i].field[0].substring(2, 4) + "."
      +    + versichertenResultSetRow[i].field[0].substring(4, 6);
      +

    • +Deep indent +

      +Deep indentation means that lines will be indented relative to the current +parentheses or assignment offset. This way consecutive code sections are somewhat easier +to recognize at the downside of consuming more horizontal space. +

      Example 4.33. Method declaration (deep indented)

      +public void severalParameters(String one, int two, String three,
      +                              StringObject four, AnotherObject five) {
      +    ...
      +}
      +

      Example 4.34. Method Call (deep indented)

      +this.add(lbPunktzahl,
      +         new GridBagLayout(0, 1, 2, 1, 0.0, 0.0,
      +                           GribBagConstraints.WEST,
      +                           GribBagConstraints.NONE,
      +                           new Insets(0, GribBagConstraints.WEST,
      +                                      GribBagConstraints.WEST,
      +                                      GribBagConstraints.WEST), 0, 0));
      +

      Example 4.35. Assignment (deep indented)

      +doublette[Controller.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
      +                                     .substring(0, 2) + "."
      +                                     + versichertenResultSetRow[i].field[0]
      +                                       .substring(2, 4)
      +                                     + "."
      +                                     + versichertenResultSetRow[i].field[0]
      +                                       .substring(4, 6);
      +

    4.3.3.1.2. Sizes

    +Lets you set different indentation sizes. +

    • +General indent + +

      +Specifies the number of spaces to use for general indentation (Studies have +found that 2 to 4 spaces for indentation is optimal) +

      Example 4.36. 2 space general indent

      +public class Preferences
      +{
      +->private Preferences()
      +->{
      +->}
      +
      +->public static void main(String[] argv)
      +->{
      +->->de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
      +->}
      +}
      +

      Example 4.37. 4 space general indent

      +public class Preferences
      +{
      +--->private Preferences()
      +--->{
      +--->}
      +
      +--->public static void main(String[] argv)
      +--->{
      +--->--->de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
      +--->}
      +}
      +

    • +Leading indent + +

      +Specifies the number of spaces to prepend before every line printed. +

      Example 4.38. 6 space leading indent

      +----->public class Preferences
      +----->{
      +----->    private Preferences()
      +----->    {
      +----->    }
      +
      +----->    public static void main(String[] argv)
      +----->    {
      +----->        de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
      +----->    }
      +----->}
      +

    • +Continuation indent + +

      +Specifies the number of spaces that should be inserted in front of +continuation lines, i.e. the consecutive lines in case of a line wrap. +

      Example 4.39. 2 space continuation indent

      +if ((condition1 && condition2)
      +    ->|| (condition3 && condition4)
      +    ->|| !(condition5 && condition6)) {
      +    doSomethingAboutIt();
      +}
      +

      Example 4.40. 4 space continuation indent

      +if ((condition1 && condition2)
      +    --->|| (condition3 && condition4)
      +    --->|| !(condition5 && condition6)) {
      +    doSomethingAboutIt();
      +}
      +

    • +Trailing comment indent + + + +

      +Specifies the number of spaces to insert between trailing comments and the +preceding statement. +

      Example 4.41. 3 space trailing comment indent

      +new String[] {
      +    "Sunday",-->// Sunday
      +    "Monday",-->// Monday
      +    "Tuesday",-->// Tuesday
      +    "Wednesday",-->// Wednesday
      +    "Thursday",-->// Thursday
      +    "Friday",-->// Friday
      +    "Saturday"-->// Saturday
      +}
      +

    • +Original Tab indent +

      +Specifies the original tabular size of the source code. Some indentations +or alignments may fail, if you miss the correct size here. + + +

    • +Extends indent +

      +If enabled, specifies the whitespace to print before the extends +keyword in case it was printed on a new line. +

      Example 4.42. extends indentation with 6 spaces

      +public interface Channel
      +------>extends Puttable, Takable
      +{
      +    ...
      +}
      +

    • +Implements indent +

      +Specifies the whitespace to print before the implements +keyword in case it was printed on a new line. +

      Example 4.43. implements indentation with 8 spaces

      +public class SynchronizedBoolean
      +------->implements Comparable, Cloneable
      +{
      +    ...
      +}
      +

    • +Throws indent +

      +Specifies the whitespace to print before the throws +keyword in case it was printed on a new line. + +

      Example 4.44. throws indentation with 3 spaces

      +private static final File getDestinationFile(File dest, String packageName,
      +                                             String filename)
      +-->throws IOException, FooException
      +{
      +    ...
      +}
      +

    4.3.3.2. Misc

    • +Use tabs to indent + +

      +Normally, Jalopy uses spaces to indent lines. If you prefer tabs, check this box. +

    • +Indent "case" from "switch" +

      +The Sun Java code convention recommends a switch style where case statements +are not indented relative to the switch statement as a whole. However, this +option allows you to indent the case statements to make the entire switch +statement stand out. +

      Example 4.45. Switch statement (unindented)

      +switch (prio)
      +{
      +case Priority.ERROR_INT :
      +case Priority.FATAL_INT :
      +    color = Color.red;
      +    break;
      +
      +case Priority.WARN_INT :
      +    color = Color.blue;
      +    break;
      +
      +default:
      +    color = Color.black;
      +    break;
      +}
      +

      Example 4.46. Switch statement (indented)

      +switch (prio)
      +{
      +--->case Priority.ERROR_INT :
      +--->case Priority.FATAL_INT :
      +--->    color = Color.red;
      +--->    break;
      +
      +--->case Priority.WARN_INT :
      +--->    color = Color.blue;
      +--->    break;
      +
      +--->default:
      +--->    color = Color.black;
      +--->    break;
      +}
      +

    • +Indent labels + +

      +Specifies whether lables should be indented with the current indentation level. +

      Example 4.47. Unindented label

      +// advance to the first CLASS_DEF or INTERFACE_DEF
      +LOOP:
      +        for (AST child = tree.getFirstChild();
      +             child != null;
      +             child = child.getNextSibling())
      +        {
      +            switch (child.getType())
      +            {
      +                case JavaTokenTypes.CLASS_DEF :
      +                case JavaTokenTypes.INTERFACE_DEF :
      +                    next = child;
      +                    break LOOP;
      +                default :
      +                    break;
      +            }
      +        }
      +

      Example 4.48. Indented label

      +        // advance to the first CLASS_DEF or INTERFACE_DEF
      +        LOOP:
      +        for (AST child = tree.getFirstChild();
      +             child != null;
      +             child = child.getNextSibling())
      +        {
      +            switch (child.getType()) {
      +                case JavaTokenTypes.CLASS_DEF :
      +                case JavaTokenTypes.INTERFACE_DEF :
      +                    next = child;
      +                    break LOOP;
      +
      +                default :
      +                    break;
      +            }
      +        }
      +

    • +Indent first column comments +

      +Normally, all comments will be indented relative to their position in the code +to avoid that comments break the logical structure of the program. Some +developers may like to disable the indentation for first column comments +during the developing phase. +

      Example 4.49. First column comment (indented)

      +    public static Printer create(AST node)
      +    {
      +
      +        /*
      +        if (node == null)
      +        {
      +            return new NullPrinter();
      +        }
      +        */
      +        return create(node.getType());
      +    }
      +

      Example 4.50. First column comment (unindented)

      +    public static Printer create(AST node)
      +    {
      +
      +/*
      +        if (node == null)
      +        {
      +            return new NullPrinter();
      +        }
      +*/
      +        return create(node.getType());
      +    }
      +

    4.3.3.3. Align

    • +Variable identifiers +

      +If enabled, aligns the identifiers of variable declarations. +

      Example 4.51. Variable identifiers

      +String text = "text";
      +int a = -1;
      +History.Entry entry = new History.Entry(text);
      +

      Example 4.52. Variable identifiers (aligned)

      +String        text = "text";
      +int           a = -1;
      +History.Entry entry = new History.Entry(text);
      +

    • +Variable assignments +

      +If enabled, aligns the assignment parts of variable declarations or, surprise, assignments. +

      Example 4.53. Variable assignments (aligned)

      +String text         = "text";
      +int a               = -1;
      +History.Entry entry = new History.Entry(text);
      +

      +If both variable alignment options are enabled, you can achieve a style like +the following: +

      Example 4.54. Variable identifiers/assignments (both aligned)

      +String        text  = "text";
      +int           a     = -1;
      +History.Entry entry = new History.Entry(text);
      +

      + +

    • +Method Def parameters +

      +If enabled, aligns the parameters of method declarations. This only applies if +all parameters will be wrapped; either because wrapping is forced or the +max. line length is reached. To force aligning, you have to enable the +wrapping for method parameters (See Method Def parameters). +

      Example 4.55. Method declaration parameters

      +public static File create(final File file,
      +                          File directory,
      +                          int backupLevel)
      +{
      +    ...
      +}
      +

      Example 4.56. Method declaration parameters (aligned)

      +public static File create(final File file,
      +                          File       directory,
      +                          int        backupLevel)
      +{
      +    ...
      +}
      +

    • +Method Call chains +

      +If disabled, indentation happens according to the current indentation level. +

      Example 4.57. Method Call chain (standard indented)

      +Fachschluesselerzeugung.createService()
      +.getNeuerFachschluesselServiceService(
      +    FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
      +

      +Otherwise indentation is performed relative to the column offset of the first chain link. +

      Example 4.58. Method Call chain (aligned)

      +Fachschluesselerzeugung.createService()
      +                       .getNeuerFachschluesselServiceService(
      +                            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
      +

    • +Ternary expressions +

      +If disabled, ternary expressions are printed according to the current +indentation policy. +

      Example 4.59. Ternary operators (standard indented)

      +        alpha = (aLongBooleanExpression) ? beta    |
      +        : gamma;                                   |
      +

      Example 4.60. Ternary operators (deep indented)

      +        alpha = (aLongBooleanExpression) ? beta    |
      +                : gamma;                           |
      +

      +If enabled, the second operator will always be aligned relative to the first one. +

      Example 4.61. Ternary expresssions (aligned)

      +        alpha = (aLongBooleanExpression) ? beta    |
      +                                         : gamma;  |
      +

      +Note that this switch only takes affect, if indeed a line break was inserted +before the second expression. You can force such line breaks with the +Wrap always before ternary expression colon setting. +

    4.3.3.4. Continuation

    +Lets you specify extra indentation for consectutive lines of certain expressions. +

    • +Blocks +

      +The Sun brace style could make seeing the statement body difficult. To +workaround this problem, you may want to use continuation indentation in case you like this +brace style. This setting applies for if, for, while +and do-while blocks. +

      Example 4.62. Non-continuation indentation

      +if ((condition1 && condition2)
      +    || (condition3 && condition4)
      +    || !(condition5 && condition6)) { // BAD WRAPS
      +    doSomethingAboutIt();             // MAKE THIS LINE EASY TO MISS
      +}
      +

      Example 4.63. Continuation indentation

      +if ((condition1 && condition2)
      +        || (condition3 && condition4)
      +        || !(condition5 && condition6)) {
      +    doSomethingAboutIt();
      +}
      +

      +Refer to Section 4.3.1.1.1, “Styles” for the available brace style options. +

    • +Operators +

      +If enabled, indentation will be increased before an operand will be printed. +

      Example 4.64. Ternary expression (deep indented)

      +String comma = spaceAfterComma
      +               --->? COMMA_SPACE
      +               --->: COMMA;
      +

    to top

    diff --git a/utils/jalopy/docs/index.html b/utils/jalopy/docs/index.html index 62e881d..2f83c93 100755 --- a/utils/jalopy/docs/index.html +++ b/utils/jalopy/docs/index.html @@ -16,3 +16,55 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy Java Source Code Formatter Beautifier Pretty Printer + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History
    + This page generated: June 8 2004

    Overview

    +Jalopy is a source code formatter for the Sun Java programming language. It +layouts any valid Java source code according to some widely configurable rules; +to meet a certain coding style without putting a formatting burden on individual +developers. +

    +With Jalopy you will be able to transform any foreign coding style to your +own liking, without any browbeating or bloodletting. +

    +Jalopy's functionality covers: +

    +Jalopy is +"OSI Certified Open Source Software", +released under a BSD License. Please +refer to Appendix A for the license terms of the +accompanying 3rd party libraries and the different Plug-in chapters +for the license terms of the provided Plug-ins. +

    to top

    diff --git a/utils/jalopy/docs/inspector-naming.html b/utils/jalopy/docs/inspector-naming.html index 62e881d..f125ecd 100755 --- a/utils/jalopy/docs/inspector-naming.html +++ b/utils/jalopy/docs/inspector-naming.html @@ -16,3 +16,57 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.4.2. Naming + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.4.2. Naming

    +Lets you specify the naming constraints for different Java source file elements. These +constraints are naturally expressed with regular expressions (Perl 5.003 syntax). +

    +The list component displays all covered elements along with their current regular +expression. +

    +Selecting an item in the list and either pressing the Change... +button or double-clicking on the item will open a little regular expression testing tool +that can be used to interactively craft a valid regular expression. +

    4.4.2.1. Regular expression tester

    +The regular expression tester lets you interactively specifiy a valid regular expression +that matches a certain String pattern. +

    • +Regexp +

      +The Regexp text field is where you have to insert the regular +expression. This text field initially contains the current regular expression for the +list item that is under construction. +

      +The used regular expression syntax is that of Perl 5.003. See Mastering Regular +Expressions [Friedl97] for an in-depth look at this +regular expression flavor. +

    • +String +

      +The String text field is where you have to type a String that should +be matched by the specified regular expression. This text field is initially empty; you +have to enter a String in order to be able to test the regular expression. +

    +Once you have setup up the text fields you can either use the Test +button to soley perform the pattern matching test or the Apply button +which both performs testing and - on success - closes the dialog and updates the list. +

    +You can always use the Cancel button to cancel editing. The dialog +will be closed nd no changes made to the list. +

    to top

    diff --git a/utils/jalopy/docs/inspector.html b/utils/jalopy/docs/inspector.html index 62e881d..a712b57 100755 --- a/utils/jalopy/docs/inspector.html +++ b/utils/jalopy/docs/inspector.html @@ -16,3 +16,172 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.4. Code Inspector + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.4. Code Inspector

    +Provides the configuration facility for the Jalopy Code Inspector. The Code Inspector is +able to inspect Java source files for naming convention violations and possible code +weaknesses. +

    4.4.1. General

    +Lets you control the general Code Inspector settings. +

    4.4.1.1. General

    • +Enable +

      +Lets you enable or disable the Code Inspector as a whole. +

    4.4.1.2. Tips

    +Lets you selectively choose what actions should be performed during inspection. Moving the +mouse pointer onto a checkbox displays a minimalistic tooltip after a short delay. +

    • +Tip 1 - Don't substitute another type for Object in the equals declaration +

      +For a detailed discussion see Effective Java [Bloch01], pp. 35. +

    • +Tip 2 - Object the general contract when overriding equals +

      +For a detailed discussion see Effective Java [Bloch01], pp. 25. +

    • +Tip 3 - Always override hashCode when you override equals +

      +For a detailed discussion see Effective Java [Bloch01], pp. 36. +

    • +Tip 4 - Always override equals when you override hashCode +

    • +Tip 5 - Always override toString +

      +For a detailed discussion see Effective Java [Bloch01], pp. 42. +

    • +Tip 6 - Use interfaces only to define types +

      +For a detailed discussion see Effective Java [Bloch01], pp. 89. +

    • +Tip 7 - Replace structures with classes +

      +For a detailed discussion see Effective Java [Bloch01], pp. 97. +

    • +Tip 8 - Return zero-length arrays, not nulls +

      +For a detailed discussion see Effective Java [Bloch01], pp. 134. +

    • +Tip 9 - Adhere to generally accepted naming conventions +

      +For a detailed discussion see Effective Java [Bloch01], pp. 165. +

    • +Tip 10 - Refer to objects by their interfaces +

      +For a detailed discussion see Effective Java [Bloch01], pp. 156. +

    • +Tip 11 - Never declare that a method "throws Exception" +

      +For a detailed discussion see Effective Java [Bloch01], pp. 181. +

    • +Tip 12 - Never declare that a method "throws Throwable" +

      +For a detailed discussion see Effective Java [Bloch01], pp. 181. +

    • +Tip 13 - Don't ignore exceptions +

      +For a detailed discussion see Effective Java [Bloch01], pp. 187. +

    • +Tip 14 - Never invoke wait outside a loop +

      +For a detailed discussion see Effective Java [Bloch01], pp. 201. +

    • +Tip 15 - Avoid thread groups +

      +For a detailed discussion see Effective Java [Bloch01], pp. 211. +

    • +Tip 16 - Document collection types +

      +As long as there are no strong-typed collections (a.k.a. Java Generics support) available, +it is best to document the object type of the items hold by a collection. +

      Example 4.154. Collection comment

      +private static final List _favorableTypes = new ArrayList(20); // List of <String>
      +

    • +Tip 17 - Adhere to naming convention for collection types +

      +If you use comments to document the object type of collection items, you should conform to +a generally accepted naming convention. +

    • +Tip 18 - Avoid empty finally blocks +

      +Empty finally blocks are of no use and may indicate programmer errors. +

      Example 4.155. Empty finally block

      +Writer writer = null;
      +
      +try
      +{
      +    writer = new BufferedWriter(new FileWriter(file));
      +    write.write(data);
      +}
      +catch (IOException ex)
      +{
      +    System.err.println("file could not be written -- " + file);
      +}
      +finally
      +{
      +}
      +

      +The programmer certainly wanted to close the Writer in the +finally block to ensure that allocated system resources will be freed. +

    • +Tip 19 - Avoid variable shadowing +

      +Variable shadowing should be avoided on general principle, as it tends to be confusing. +

      +For more information about shadowing, see the +Java Developer Connection (JDC) Tech Tips, October 10, 2000 +( +http://developer.java.sun.com/developer/TechTips/2000/tt1010.html#tip2, subscription needed) or +section 6.3.2, "Obscured Declarations," section 7.5.2, +"Type-Import-on-Demand Declaration," section 8.4.6, "Inheritance, Overriding, and Hiding," +section 8.4.8.5, "Example: Invocation of Hidden Class Methods," and section 14.4.3, +"Shadowing of Names by Local variables" in "The Java Language Specification Second +Edition" by Gosling, Joy, Steele, and Bracha +(http://java.sun.com/docs/books/jls/). +

    • +Tip 20 - Add NOI18N comment for String literals +

      +Enabling this tip will cause warnings for all String literals without associated +/* NOI18N */ comment. +

      +Internationalizing Java applications is often done with nifty tools that use marker +comments to indicate that a given String literal should not be considered for localization. +Most tools (at least the ones I know of) use trailing single-line comments which may not +be very robust for processing with a formatting tool such as Jalopy. In contrast the author +uses a multi-line comment of the form /* NOI18N */ that gets directly +placed after a String literal and will therefore always stuck with it. +

      Example 4.156. $NON-NLS-1$ comment

      +FileDialog dialog = new FileDialog(this,
      +    ResourceBundle.getBundle(BUNDLE_NAME)
      +    .getString("BTN_SAVE_AS", FileDialog.SAVE); //$NON-NLS-1$
      +

      +This trailing comment could be easily moved away from its String literal during formatting +which would result in an unwanted notice on successive internationalization runs. +

      Example 4.157. $NON-NLS-1$ comment

      +FileDialog dialog =
      +    new FileDialog(this,
      +                   ResourceBundle.getBundle(BUNDLE_NAME).
      +                                  getString("BTN_SAVE_AS",
      +                   FileDialog.SAVE); //$NON-NLS-1$
      +

      Example 4.158. NOI18N comment

      +FileDialog dialog =
      +    new FileDialog(this,
      +                   ResourceBundle.getBundle(BUNDLE_NAME).
      +                                  getString("BTN_SAVE_AS" /* NOI18N */),
      +                   FileDialog.SAVE);
      +

    to top

    diff --git a/utils/jalopy/docs/installation.html b/utils/jalopy/docs/installation.html index 62e881d..87ed6d5 100755 --- a/utils/jalopy/docs/installation.html +++ b/utils/jalopy/docs/installation.html @@ -16,3 +16,35 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 1. Installation + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 1. Installation

    +Provides a quick introduction on how to install a binary Jalopy distribution. +

    1.1. System requirements

    +Jalopy requires a properly configured JDK or JRE version 1.3 or later on +your system. +

    +Jalopy depends on and comes with several freely available Java libraries. For more +information regarding this 3rd party libraries refer to Appendix A, Library Dependencies. +

    Incompatibility with Sun JDK 1.4

    +The contained Javadoc parser may not work properly under Sun JDK 1.4. Refer to +Section 4.3.9, “Javadoc” for more information regarding this issue. +

    1.2. Installing Jalopy

    +Installation depends on the distribution you received. Please refer to the individual +Plug-in chapters in Part II, “Plug-ins” for detailed information. +

    to top

    diff --git a/utils/jalopy/docs/introduction.html b/utils/jalopy/docs/introduction.html index 62e881d..56e6332 100755 --- a/utils/jalopy/docs/introduction.html +++ b/utils/jalopy/docs/introduction.html @@ -16,3 +16,40 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Introduction + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Introduction

    +Jalopy is a source code formatting tool for the Sun Java Programming Language. +It can insert and remove indentation, enforce brace styles, wrap lines, sort +and group imports, add headers and footers, handle whitespace, insert/remove +and correct Javadoc entries to match method signatures and much more. +

    +If your development team can agree on a coding style, Jalopy can help you +maintain it, without any browbeating or bloodletting. With a simple Ant target, +you can format all the source into the style, as often as you like. +

    +Jalopy is written in Java and there are several Plug-ins available to integrate +the formatting engine into some of the more popular Java applications, including Ant, +Eclipse, JBuilder, JDeveloper, jEdit and NetBeans/Sun ONE Studio. +

    +Jalopy is +"OSI Certified Open Source Software", +released under a BSD License. +For the individual license terms of the provided Plug-ins, please refer to the +different Plug-in chapters in Part II, “Plug-ins”. +

    to top

    diff --git a/utils/jalopy/docs/ix01.html b/utils/jalopy/docs/ix01.html index 62e881d..852758e 100755 --- a/utils/jalopy/docs/ix01.html +++ b/utils/jalopy/docs/ix01.html @@ -16,3 +16,21 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Index + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Index

    A

    Alignment, Align
    Assignments, Align
    Method Def parameters, Align
    Variables
    assignments, Align
    identifiers, Align
    Ant, Ant Plug-in task
    taskdef, Installation
    Apache Software License, The Apache Software License, Version 1.1
    Assignment operators, Spaces around
    Auto-correction, General

    B

    Bitwise operators, Spaces around
    Blank lines, General, Misc
    After left curly brace, Misc
    Before right curly brace, Misc
    Case blocks, General
    Classes, General
    Control statements, General
    Interfaces, General
    Javadoc, General
    Last Import statement, General
    Methods/Constructors, General
    Multi-line comments, General
    Package statement, General
    Single-line comments, General
    Statement blocks, General
    Variable declarations, General
    Braces, Braces, Spaces around
    cuddle, Empty braces
    Empty, Empty braces
    empty, Empty braces
    insert, Insert braces
    padding, Spaces around
    remove, Remove braces
    style, General
    C, Styles
    custom, Styles
    GNU, Styles
    Sun, Styles
    whitespace, Whitespace
    wrapping, Wrapping
    Brackets, Spaces around
    padding, Spaces around
    Build, Building
    Ant, Prerequisites
    CVS, Prerequisites
    DocBook, Prerequisites
    Prerequisites, Prerequisites
    XSLT, Prerequisites

    C

    Chunks, Chunks
    By Blank lines, Chunks
    By comments, Chunks
    Code Convention, General
    Code Inspector, Code Inspector
    Naming, Naming
    Comma, Space after
    Command line, Synopsis
    arguments, Synopsis
    options, Synopsis
    Comment
    Header, Header
    trailing, Sizes
    Comment-based history, History
    Comments
    for history, History
    Javadoc, Comments, General
    Javadoc comments, Remove, General
    Multi-line, Comments
    Multi-line comments, Remove, Format
    Pragma, Comments
    Separator, Comments
    Single-line, Comments
    Single-line comments, Remove
    Common Public License Version, Common Public License Version 1.0
    Compatibility
    source, Compliance
    Compliance, Compliance
    Console, Console Application
    Continuation, Continuation
    Cuddled braces, Empty braces

    D

    Deep indent, General
    Dependencies, System requirements

    E

    Eclipse, Eclipse Plug-in
    Empty braces, Empty braces
    Empty statement, Empty braces
    Environment, Environment
    Environment variables, Environment
    Extension, JDeveloper Extension

    F

    File-based history, History
    Footer, Footer

    G

    GNU Free Documentation License, GNU Free Documentation License Version 1.1, March 2000
    GNU GENERAL PUBLIC LICENSE, GNU GENERAL PUBLIC LICENSE Version 2, June 1991
    Grouping depth, Grouping

    H

    Header, Header
    Smart Mode, General
    History, History
    comment, History
    file, History

    I

    Imports, Imports
    collapse, Optimize
    expand, Optimize
    grouping,
    on-demand, Optimize
    optimization, Optimize
    single-type, Optimize
    sorting, General
    grouping depth, Grouping
    Indentation, Indentation
    Aligment, Align
    Continutation, Continuation
    sizes, Sizes
    Continuation, Sizes
    extends, Sizes
    General, Sizes
    implements, Sizes
    Leading, Sizes
    Tabular, Sizes
    throws, Sizes
    Trailing comment, Sizes
    Installation, Installation, Installing Jalopy
    Ant, Installation, Installation
    Eclipse Plug-in, Installation
    JBuilder OpenTool, Installation
    JDeveloper Plug-in, Installation
    jEdit Plug-in, Installation
    NetBeans Module, Installation
    Sun ONE Studio Module, Installation
    Interpolation, Environment
    Introduction, Introduction

    J

    Javadoc comments, Comments, Remove, General
    JBuilder, JBuilder OpenTool
    JDeveloper, JDeveloper Extension
    jEdit, jEdit Plug-in

    L

    Label, Wrap always
    indent, Misc
    wrap, Wrap always
    Licenses
    ANTLR, ANTLR SOFTWARE RIGHTS
    Apache Software License, The Apache Software License, Version 1.1
    BSD, The Jalopy BSD License
    Common Public License Version, Common Public License Version 1.0
    GNU Free Documentation License, GNU Free Documentation License Version 1.1, March 2000
    GNU GENERAL PUBLIC LICENSE, GNU GENERAL PUBLIC LICENSE Version 2, June 1991
    Sun Public License Version, SUN PUBLIC LICENSE Version 1.0
    Line length, General
    Line wrapping, Wrapping
    Logical operators, Spaces around

    M

    Mathematical operators, Spaces around
    Method Def parameters, Align, Wrap always
    Module
    NetBeans, NetBeans/Sun ONE Studio module
    Sun ONE Studio, NetBeans/Sun ONE Studio module
    Multi-line comments, Comments, Remove, Format

    O

    OpenTool, JBuilder OpenTool
    Operators
    Assignment, Spaces around
    Bitwise, Spaces around
    Logical, Spaces around
    Mathematical, Spaces around
    Relational, Spaces around
    Shift, Spaces around
    wrap after, Policy
    wrap before, Policy

    P

    Padding, Spaces around
    Parentheses, Space before, Spaces around, Misc
    insert around expressions, Misc
    padding, Spaces around
    Plug-in
    Ant, Ant Plug-in task
    Console, Console Application
    Eclipse, Eclipse Plug-in
    JBuilder, JBuilder OpenTool
    JDeveloper, JDeveloper Extension
    jEdit, jEdit Plug-in
    NetBeans, NetBeans/Sun ONE Studio module
    Policy
    Wrapping, Policy
    Pragma comments, Comments
    Printer, Printer
    Projects, Projects

    R

    Regular expression
    Tester, Regular expression tester
    Regular expression tester, Regular expression tester
    Regular expressions, Synopsis
    Relational operators, Spaces around

    S

    Semicolon, Space after
    Separator comment, Comments
    Separator comments, Comments
    Serial version UID, Misc
    Settings, Settings
    Settings directory, Settings
    Shift operators, Spaces around
    Single-line comments, Comments, Remove
    Software License, The Jalopy BSD License, ANTLR SOFTWARE RIGHTS
    Source compatibility, Compliance
    Sun ONE Studio, NetBeans/Sun ONE Studio module
    Sun Public License, SUN PUBLIC LICENSE Version 1.0
    Synopsis, Synopsis
    System requirements, System requirements

    T

    Tabs
    size, Sizes
    use, Misc
    taskdef, Installation
    Trailing Comment, Sizes
    Type cast, Space after

    U

    Usage, Usage, Synopsis
    examples, Examples

    V

    Variables
    Environment, Environment
    Interpolation, Environment

    W

    White Space, White Space
    Whitespace
    after, Space after
    comma, Space after
    semicolon, Space after
    type cast, Space after
    before, Space before
    braces, Space before
    brackets, Space before
    colon, Space before
    parentheses, Space before
    padding, Spaces around
    Assignment operators, Spaces around
    Bitwise operators, Spaces around
    Braces, Spaces around
    Brackets, Spaces around
    Logical operators, Spaces around
    Mathematical operators, Spaces around
    Parentheses, Spaces around
    Relational operators, Spaces around
    Shift operators, Spaces around
    Wrapping, Wrapping
    Deep indent, General
    Line length, General
    Method Def parameters, Wrap always
    Policy, Policy
    to top

    diff --git a/utils/jalopy/docs/javadoc.html b/utils/jalopy/docs/javadoc.html index 62e881d..ee66a8a 100755 --- a/utils/jalopy/docs/javadoc.html +++ b/utils/jalopy/docs/javadoc.html @@ -16,3 +16,155 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.9. Javadoc + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.9. Javadoc

    +Let's you control all Javadoc-related options. Refer to the +Javadoc home page +for more information about Sun's Javadoc tool. +

    Incompatibility with Sun JDK 1.4

    +Note that the Javadoc parsing for Jalopy may not work properly under Sun +JDK 1.4 with the Client JVM. This seems to be a problem with the garbage +collection. You may want to enable the Server JVM as a workaround. +

    4.3.9.1. General

    +Controls the general handling of Javadoc comments. +

    • +Parse/Format comments +

      +Enables the parsing of existing Javadoc comments which in turn leads to a +reformatting of the original comment style during the printing. +

      +The used parser mostly supports HTML 3.2 and is not loose in a sense most browsers +are these days: tags not contained in the standard will produce errors. And you +should always strive to produce well-formed HTML +(it works for the <p>, <li>, +<dd>, <dt> and <dir> +tags, but anyway). +

      +Don't forget that the standard HTML metacharacters, such as less and greater signs +(<, >) or the ambersand (&), ... +and the commercial "at" sign (@) needs to be +escaped if not used as part of another HTML or Javadoc tag. +

      Table 4.2. Character entities

      SymbolNumeric EntityNamed EntityDescription
      &&038;&ampAmbersand
      <&060;&lt;Less than
      >&062;&gt;Greater than
      @&064; Commercial "at" sign

      Example 4.145. Escaping characters in Javadoc comments

      Don't use

      +/**
      + * @author <a href="mailto:first.last@company.com">first.last@company.com</a>
      + */
      +

      But rather use

      +/**
      + * @author <a href="mailto:first.last@company.com">first.last&064;company.com</a>
      + */
      +

    • +Correct tags +

      +Enables the auto-insertion or -removal of missing and obsolete Javadoc tags (all but the @throws tag, see below) and +the correction of misspelled Javadoc tag names. +

    • +Correct @throws tags +

      +Controls the auto-correction for @throws tags. If enabled, +Jalopy enforces a distinct @throws tag for every exception +thrown by a method/constructor. Thus, if a method only declares to throw an +IOException but throws a FileNotFoundException +(which is a subclass of the former) too, Jalopy will add a declaration for the latter. +

    4.3.9.2. Generation

    +Controls the auto-generation of missing Javadoc comments. +

    4.3.9.2.1. Element/Level
    • +Element/Level +

      +Lets you selectively enable the auto-generation of missing Javadoc comments for +specific class elements and access levels. +

    • +Include inner classes +

      +Enables the auto-generation feature for inner classes, too. The +auto-generation does not apply to anonymous inner classes. +

    4.3.9.2.2. Misc

    +Let's you control miscellaneous Javadoc settings. +

    • +Field comments in single line +

      +Let's you specify how Javadoc comments of fields, that fit into one line, should be printed. +

      Example 4.146. Field Javadoc comment

      +/**
      + * What history policy should be used?
      + */
      +private History.Policy _historyPolicy = History.Policy.DISABLED;
      +

      +If enabled, Javadoc comments for fields will be printed in a single line, +if possible. +

      Example 4.147. Field Javadoc comment (shortened)

      +/** What history policy should be used? */
      +private History.Policy _historyPolicy = History.Policy.DISABLED;
      +

      +Note that this switch does not take affect for field template comments, +as template are not parsed but inserted as-is. +

      +Note further that the Javadoc parsing +must be enabled for this feature to work. +

    4.3.9.3. Templates

    +Let's you define templates to be inserted for the different declaration elements. +Each element (Class, Interface, Constructor, Method and Field) has its +own template. +

    +Depending on the element type, a template consists of up to five parts that +together form a valid Javadoc comment. Note that the resulting comment will +be inserted as-is, and it is your responsibility to define the templates +in a consistent style. +

    +You can use variable expressions throughout your templates. Read +Section 4.3.8, “Environment” for more information about this feature. +

    4.3.9.4. Custom Tags

    +Allows the definition of custom Javadoc tags to aid the syntax checking of +Javadoc comments, and enable the auto-correction of misspelled custom tag names. +

    4.3.9.4.1. Standard Tags

    +Allows the definition of custom Javadoc standard tag names. The current build-in Standard +tags are: +@author, +@deprecated, +@exception, +@param, +@return, +@see, +@serial, +@serialData, +@serialField, +@since, +@throws, +@todo, +@version +

    +Use the Add... and Remove buttons +to add or remove items from the list. +

    +Valid standard tag names have the form +@[a-zA-Z]+, e.g. @exclude. +

    4.3.9.4.2. In-line Tags

    +Allows the definition of custom Javadoc in-line tag names. +The current build-in In-line tags are: +@docRoot, +@inheritDoc, +@link, +@linkPlain, +@value +

    +Use the Add... and Remove buttons +to add or remove items from the list. +

    +Valid in-line tag names have the form +@[a-zA-Z]+, e.g. @mylink. +

    to top

    diff --git a/utils/jalopy/docs/license-antlr.html b/utils/jalopy/docs/license-antlr.html index 62e881d..444453b 100755 --- a/utils/jalopy/docs/license-antlr.html +++ b/utils/jalopy/docs/license-antlr.html @@ -16,3 +16,49 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix C. ANTLR SOFTWARE RIGHTS + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix C. ANTLR SOFTWARE RIGHTS

    +ANTLR 1989-2000 Developed by jGuru.com (MageLang Institute), +http://www.ANTLR.org and +http://www.jGuru.com +

    +We reserve no legal rights to the ANTLR -- it is fully in the +public domain. An individual or company may do whatever +they wish with source code distributed with ANTLR or the +code generated by ANTLR, including the incorporation of +ANTLR, or its output, into commerical software. +

    +We encourage users to develop software with ANTLR. However, +we do ask that credit is given to us for developing +ANTLR. By "credit", we mean that if you use ANTLR or +incorporate any source code into one of your programs +(commercial product, research project, or otherwise) that +you acknowledge this fact somewhere in the documentation, +research report, etc... If you like ANTLR and have +developed a nice tool with the output, please mention that +you developed it using ANTLR. In addition, we ask that the +headers remain intact in our source code. As long as these +guidelines are kept, we expect to continue enhancing this +system and expect to make other tools available as they are +completed. +

    +The primary ANTLR guy: +

    +Terence Parr +

    to top

    diff --git a/utils/jalopy/docs/license-apache.html b/utils/jalopy/docs/license-apache.html index 62e881d..1571a3a 100755 --- a/utils/jalopy/docs/license-apache.html +++ b/utils/jalopy/docs/license-apache.html @@ -16,3 +16,64 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix D. The Apache Software License, Version 1.1 + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix D. The Apache Software License, Version 1.1

    +Copyright (C) 1999 The Apache Software Foundation. All rights reserved. +

    +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +

    1. +Redistributions of source code must retain the above copyright notice, +this list of conditions and the following disclaimer. +

    2. +Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. +

    3. +The end-user documentation included with the redistribution, if any, must +include the following acknowledgment: "This product includes software +developed by the Apache Software Foundation (http://www.apache.org/)." +Alternately, this acknowledgment may appear in the software itself, if +and wherever such third-party acknowledgments normally appear. +

    4. +The names "Ant" and "Apache Software Foundation" must not be used to +endorse or promote products derived from this software without prior +written permission. For written permission, please contact +apache@apache.org. +

    5. +Products derived from this software may not be called "Apache", nor may +"Apache" appear in their name, without prior written permission of the +Apache Software Foundation. +

    + THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +

    + This software consists of voluntary contributions made by many individuals + on behalf of the Apache Software Foundation. For more information on the + Apache Software Foundation, please see + http://www.apache.org. +

    to top

    diff --git a/utils/jalopy/docs/license-bsd.html b/utils/jalopy/docs/license-bsd.html index 62e881d..e69de29 100755 --- a/utils/jalopy/docs/license-bsd.html +++ b/utils/jalopy/docs/license-bsd.html @@ -1,18 +0,0 @@ - - diff --git a/utils/jalopy/docs/license-common-public.html b/utils/jalopy/docs/license-common-public.html index 62e881d..447e5be 100755 --- a/utils/jalopy/docs/license-common-public.html +++ b/utils/jalopy/docs/license-common-public.html @@ -16,3 +16,83 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix G. Common Public License Version 1.0 + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix G. Common Public License Version 1.0

    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.

    1. DEFINITIONS

    +"Contribution" means: +

    +a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and +

    b) in the case of each subsequent Contributor:

    i) changes to the Program, and

    ii) additions to the Program;

    +where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program. +

    +"Contributor" means any person or entity that distributes the Program. +

    +"Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program. +

    +"Program" means the Contributions distributed in accordance with this Agreement. +

    +"Recipient" means anyone who receives the Program under this Agreement, including all Contributors. +

    2. GRANT OF RIGHTS

    +a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form. +

    +b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. +

    +c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. +

    +d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. +

    3. REQUIREMENTS

    +d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. +

    +a) it complies with the terms and conditions of this Agreement; and +

    b) its license agreement:

    +i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; +

    +ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; +

    +iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and +

    +iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange. +

    +When the Program is made available in source code form: +

    +a) it must be made available under this Agreement; and +

    +b) a copy of this Agreement must be included with each copy of the Program. +

    +Contributors may not remove or alter any copyright notices contained within the Program. +

    +Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution. +

    4. COMMERCIAL DISTRIBUTION

    +Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense. +

    +For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages. +

    5. NO WARRANTY

    +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. +

    6. DISCLAIMER OF LIABILITY

    +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +

    7. GENERAL

    +If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. +

    +If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed. +

    +All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive. +

    +Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. +

    +This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation. +

    to top

    diff --git a/utils/jalopy/docs/license-gnu-doc.html b/utils/jalopy/docs/license-gnu-doc.html index 62e881d..36ebb87 100755 --- a/utils/jalopy/docs/license-gnu-doc.html +++ b/utils/jalopy/docs/license-gnu-doc.html @@ -16,3 +16,376 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix F. GNU Free Documentation License Version 1.1, March 2000 + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix F. GNU Free Documentation License Version 1.1, March 2000

    + Copyright (C) 2000 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +

    + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. +

    +0. PREAMBLE +

    +The purpose of this License is to make a manual, textbook, or other +written document "free" in the sense of freedom: to assure everyone +the effective freedom to copy and redistribute it, with or without +modifying it, either commercially or noncommercially. Secondarily, +this License preserves for the author and publisher a way to get +credit for their work, while not being considered responsible for +modifications made by others. +

    +This License is a kind of "copyleft", which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. +

    +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. +

    +1. APPLICABILITY AND DEFINITIONS +

    +This License applies to any manual or other work that contains a +notice placed by the copyright holder saying it can be distributed +under the terms of this License. The "Document", below, refers to any +such manual or work. Any member of the public is a licensee, and is +addressed as "you". +

    +A "Modified Version" of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. +

    +A "Secondary Section" is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall subject +(or to related matters) and contains nothing that could fall directly +within that overall subject. (For example, if the Document is in part a +textbook of mathematics, a Secondary Section may not explain any +mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. +

    +The "Invariant Sections" are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. +

    +The "Cover Texts" are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. +

    +A "Transparent" copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, whose contents can be viewed and edited directly and +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup has been designed to thwart or discourage +subsequent modification by readers is not Transparent. A copy that is +not "Transparent" is called "Opaque". +

    +Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, LaTeX input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML designed for human modification. Opaque formats include +PostScript, PDF, proprietary formats that can be read and edited only +by proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML produced by some word processors for output +purposes only. +

    +The "Title Page" means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, "Title Page" means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. +

    +2. VERBATIM COPYING +

    +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. +

    +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. +

    +3. COPYING IN QUANTITY +

    +If you publish printed copies of the Document numbering more than 100, +and the Document's license notice requires Cover Texts, you must enclose +the copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. +

    +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. +

    +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a publicly-accessible computer-network location containing a complete +Transparent copy of the Document, free of added material, which the +general network-using public has access to download anonymously at no +charge using public-standard network protocols. If you use the latter +option, you must take reasonably prudent steps, when you begin +distribution of Opaque copies in quantity, to ensure that this +Transparent copy will remain thus accessible at the stated location +until at least one year after the last time you distribute an Opaque +copy (directly or through your agents or retailers) of that edition to +the public. +

    +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. +

    +4. MODIFICATIONS +

    +You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: +

    1. + Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. +

    2. + List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has less than five). +

    3. + State on the Title page the name of the publisher of the + Modified Version, as the publisher. +

    4. +Preserve all the copyright notices of the Document. +

    5. + Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. +

    6. + Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. +

    7. + Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. +

    8. + Include an unaltered copy of this License. +

    9. + Preserve the section entitled "History", and its title, and add to + it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section entitled "History" in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. +

    10. + Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the "History" section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. +

    11. + In any section entitled "Acknowledgements" or "Dedications", + preserve the section's title, and preserve in the section all the + substance and tone of each of the contributor acknowledgements + and/or dedications given therein. +

    12. + Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. +

    13. + Delete any section entitled "Endorsements". Such a section + may not be included in the Modified Version. +

    14. + Do not retitle any existing section as "Endorsements" + or to conflict in title with any Invariant Section. +

    +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. +

    +You may add a section entitled "Endorsements", provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. +

    +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. +

    +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. +

    +5. COMBINING DOCUMENTS +

    +You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice. +

    +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. +

    +In the combination, you must combine any sections entitled "History" +in the various original documents, forming one section entitled +"History"; likewise combine any sections entitled "Acknowledgements", +and any sections entitled "Dedications". You must delete all sections +entitled "Endorsements." +

    +6. COLLECTIONS OF DOCUMENTS +

    +You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. +

    +You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. +

    +7. AGGREGATION WITH INDEPENDENT WORKS +

    +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, does not as a whole count as a Modified Version +of the Document, provided no compilation copyright is claimed for the +compilation. Such a compilation is called an "aggregate", and this +License does not apply to the other self-contained works thus compiled +with the Document, on account of their being thus compiled, if they +are not themselves derivative works of the Document. +

    +If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one quarter +of the entire aggregate, the Document's Cover Texts may be placed on +covers that surround only the Document within the aggregate. +Otherwise they must appear on covers around the whole aggregate. +

    +8. TRANSLATION +

    +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License provided that you also include the +original English version of this License. In case of a disagreement +between the translation and the original English version of this +License, the original English version will prevail. +

    +9. TERMINATION +

    +You may not copy, modify, sublicense, or distribute the Document except +as expressly provided for under this License. Any other attempt to +copy, modify, sublicense or distribute the Document is void, and will +automatically terminate your rights under this License. However, +parties who have received copies, or rights, from you under this +License will not have their licenses terminated so long as such +parties remain in full compliance. +

    +10. FUTURE REVISIONS OF THIS LICENSE +

    +The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +http://www.gnu.org/copyleft. +

    +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License "or any later version" applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. +

    +ADDENDUM: How to use this License for your documents +

    +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: +

    + Copyright (c) YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.1 + or any later version published by the Free Software Foundation; + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + A copy of the license is included in the section entitled "GNU + Free Documentation License". +

    +If you have no Invariant Sections, write "with no Invariant Sections" +instead of saying which ones are invariant. If you have no +Front-Cover Texts, write "no Front-Cover Texts" instead of +"Front-Cover Texts being LIST"; likewise for Back-Cover Texts. +

    +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. +

    to top

    diff --git a/utils/jalopy/docs/license-gnu.html b/utils/jalopy/docs/license-gnu.html index d14f59f..48dd4f9 100755 --- a/utils/jalopy/docs/license-gnu.html +++ b/utils/jalopy/docs/license-gnu.html @@ -16,6 +16,161 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix E. GNU GENERAL PUBLIC LICENSE Version 2, June 1991 + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix E. GNU GENERAL PUBLIC LICENSE Version 2, June 1991

    +Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +

    +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. +

    +Preamble +

    +The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. +

    +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. +

    +To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. +

    +For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. +

    +We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. +

    +Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. +

    +Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. +

    +The precise terms and conditions for copying, distribution and +modification follow. +

    + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +

    +0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". +

    +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. +

    +1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. +

    +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. +

    +2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: +

    + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. +

    + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. +

    + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) +

    +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. +

    +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. +

    +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. +

    +3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: +

    + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, +

    b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete diff --git a/utils/jalopy/docs/license-sun-public.html b/utils/jalopy/docs/license-sun-public.html index 62e881d..f60d7ed 100755 --- a/utils/jalopy/docs/license-sun-public.html +++ b/utils/jalopy/docs/license-sun-public.html @@ -16,3 +16,49 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Appendix H. SUN PUBLIC LICENSE Version 1.0 + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Appendix H. SUN PUBLIC LICENSE Version 1.0

    1. +Definitions. +

      1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party.

      1.1. "Contributor" means each entity that creates or contributes to the creation of Modifications.

      1.2. "Contributor Version" means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor.

      1.3. "Covered Code" means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof and corresponding documentation released with the source code.

      1.4. "Electronic Distribution Mechanism" means a mechanism generally accepted in the software development community for the electronic transfer of data.

      1.5. "Executable" means Covered Code in any form other than Source Code.

      1.6. "Initial Developer" means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A.

      1.7. "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.

      1.8. "License" means this document.

      1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein.

      1.9. "Modifications" means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is:

      1. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications.

      2. Any new file that contains any part of the Original Code or previous Modifications.

      1.10. "Original Code"../ means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License.

      1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor.

      1.11. "Source Code"../ means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated documentation, interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge.

      1.12. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control"../ means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.

    2. +Source Code License. +

      2.1 The Initial Developer Grant.

      The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims:

      (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and

      (b) under Patent Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof).

      (c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License.

      (d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices.

      2.2. Contributor Grant.

      Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license

      (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and

      b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination).

      (c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code.

      (d) notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor.

    3. Distribution Obligations.

      3.1. Application of License.

      The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5.

      3.2. Availability of Source Code.

      Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party.

      3.3. Description of Modifications.

      You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code.

      3.4. Intellectual Property Matters.

      (a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "../LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained.

      (b) Contributor APIs.

      If Contributor's Modifications include an application programming interface ("API"../) and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file.

      (c) Representations.

      Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License.

      3.5. Required Notices.

      You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer.

      3.6. Distribution of Executable Versions.

      You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer.

      3.7. Larger Works.

      You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code.

    4. Inability to Comply Due to Statute or Regulation.

      +If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. +

    5. Application of this License.

      +This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. +

    6. Versions of the License.

      6.1. New Versions.

      Sun Microsystems, Inc. ("Sun") may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number.

      6.2. Effect of New Versions.

      Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Sun. No one other than Sun has the right to modify the terms applicable to Covered Code created under this License.

      6.3. Derivative Works.

      If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must: (a) rename Your license so that the phrases "Sun," "Sun Public License," or "SPL"../ or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Sun Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.)

    7. DISCLAIMER OF WARRANTY.

      COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.

    8. TERMINATION.

      8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive.

      8.2. If You initiate litigation by asserting a patent infringement claim (excluding declaratory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that:

      (a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above.

      (b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant.

      8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license.

      8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination.

    9. LIMITATION OF LIABILITY.

      UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.

    10. U.S. GOVERNMENT END USERS. +

      The Covered Code is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation,"../ as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein.

    11. MISCELLANEOUS. +

      This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License.

    12. RESPONSIBILITY FOR CLAIMS.

      As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.

    13. MULTIPLE-LICENSED CODE.

      Initial Developer may designate portions of the Covered Code as ?Multiple-Licensed?. ?Multiple-Licensed? means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A.

    Exhibit A - Sun Public License Notice.

    The contents of this file are subject to the Sun Public License +Version 1.0 (the License); you may not use this file except in +compliance with the License. A copy of the License is available at +http://www.sun.com/ +

    The Original Code is _________________. The Initial Developer of the +Original Code is ___________. Portions created by ______ are Copyright +(C)_________. All Rights Reserved.

    Contributor(s): ______________________________________.

    Alternatively, the contents of this file may be used under the terms +of the _____ license (the ?[___] License?), in which case the +provisions of [______] License are applicable instead of those above. +If you wish to allow use of your version of this file only under the +terms of the [____] License and not to allow others to use your +version of this file under the SPL, indicate your decision by deleting +the provisions above and replace them with the notice and other +provisions required by the [___] License. If you do not delete the +provisions above, a recipient may use your version of this file under +either the SPL or the [___] License.

    [NOTE: The text of this Exhibit A may differ slightly from the text of +the notices in the Source Code files of the Original Code. You should +use the text of this Exhibit A rather than the text found in the +Original Code Source Code for Your Modifications.]

    to top

    diff --git a/utils/jalopy/docs/links.html b/utils/jalopy/docs/links.html index 62e881d..aec22d8 100755 --- a/utils/jalopy/docs/links.html +++ b/utils/jalopy/docs/links.html @@ -16,3 +16,29 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Links + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    + This page generated: June 8 2004

    Integrators

    koalaGMLJava/Swing Code Generator
    OpenUSSJ2EE-based E-Learning platform
    FormsWizard, PLSQLWizardTranslators for Oracle applications to Java (commercial)

    Related Open Source projects

    Artistic StyleJava Source Code Indentation Filter
    BaratCode Parser/Analyser
    CheckStyleJava Coding Convention Checker
    ImportScrubberJava Import Optimizer
    JacobeJava Source Code Formatter (not Open Source, but free)
    JCSCJava Coding Style Checker
    JRefactoryJava Refactoring Tool
    Mozart Development EnvironmentFramework for user extensible compilers and development tools
    PMDJava source code analyser/checker
    QDoxFramework for extracting class/interface/method definitions
    RecoderSource Code Metaprogramming Framework
    RevJavaReview assistant for Java programs
    TransmogrifyJava Refactoring Tool

    Related commercial projects

    CodeCompanionJava Coding Convention Checker
    JindentJava Source Code Formatter
    to top

    diff --git a/utils/jalopy/docs/manual.html b/utils/jalopy/docs/manual.html index 62e881d..a571a21 100755 --- a/utils/jalopy/docs/manual.html +++ b/utils/jalopy/docs/manual.html @@ -16,3 +16,28 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy User Manual + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Jalopy User Manual

    Legal Notice

    +Permission is granted to copy, distribute and/or modify this document under +the terms of the GNU Free Documentation License, Version 1.1 or any later +version published by the Free Software Foundation; with no "Invariant Sections", +"Front-Cover Texts" or "Back-Cover Texts", each as defined in the license. +

    +For a copy of the license terms refer to Appendix F, GNU Free Documentation License Version 1.1, March 2000. +


    to top

    diff --git a/utils/jalopy/docs/messages.html b/utils/jalopy/docs/messages.html index 62e881d..ede8c34 100755 --- a/utils/jalopy/docs/messages.html +++ b/utils/jalopy/docs/messages.html @@ -16,3 +16,63 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.5. Messages + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.5. Messages

    +Controls the Jalopy message output. +

    +Given the sensitive nature of automatic source code processing, it is quite +important to keep informed about what is going on during the formatting process. +The default configuration should be sufficient for most users, so there should +seldom arise the need to change anything here. +

    4.5.1. Categories

    +Jalopy provides different message categories for setting verbosity level. +Changing the threshold from ERROR to DEBUG +successively displays more (albeit not necessarily more useful) messages. +

    • +General +

      +General purpose chain for I/O activity and all sorts of stuff that doesn't fit +elsewhere. +

    • +Parsing +

      +Message chain for messages related to the Java language parser. +

    • +Javadoc parsing +

      +Message chain for messages related to the parsing of Javadoc comments. +

    • +Transforming +

      +Message chain for messages related to the post-processing of the generated AST. +

    • +Printing +

      +Message chain for the main printing engine. +

    • +Javadoc Printing +

      +Message chain for Javadoc printing related messages. +

    4.5.2. Misc

    • +Show stacktrace +

      +Enables or disables the inclusion of the current execution stack trace with +error messages. This proves useful in case you need to file a bug report as it +reveals the source of the error. +

    to top

    diff --git a/utils/jalopy/docs/misc.html b/utils/jalopy/docs/misc.html index 62e881d..8534439 100755 --- a/utils/jalopy/docs/misc.html +++ b/utils/jalopy/docs/misc.html @@ -16,3 +16,168 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.13. Misc + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.13. Misc

    +Lets you control miscellaneous settings that doesn't fit elsewhere. +

    4.3.13.1. Misc

    • +Insert expression parentheses +

      +It is always good advise to use more parentheses than you think you need. They +may not be needed, but they add clarity and don't cost anything. +

      Example 4.150. How is this expression evaluated?

      +int result = 12 + 4 % 3 * 7 / 8;
      +

      Example 4.151. How is this expression evaluated? (continued)

      +int result = 12 + ((4 % 3 * 7) / 8);
      +

    • +Insert serial version UID +

      +Common sense dictates to declare an explicit serial version UID in every +serializable class to eliminate the serial version UID as a potential source +of incompatibility (with the additional benefit of a small performance gain). +If this switch is enabled and the class directly dereives from either +java.io.Serializable or java.io.Externalizable, +Jalopy computes and inserts a serial version UID for the class. +

      +For this feature to work, the class that has its serial version UID computed +needs to be available on the classpath. +

    • +Insert logging conditional +

      +Typically, logging systems have a method that submits a logging message like + +

      +logger.debug("some message: " + someVar);
      +

      +

      +This is fine, but if the debug level is set such that this message will +NOT display, then time is wasted doing the string marshalling. +

      +Thus, the preferred way to do this is + +

      +if (logger.isDebugEnabled()) {
      +    logger.debug("some message: " + someVar);
      +}
      +

      + +which will only use CPU time if the log message is needed. Enabling this switch +will ensure that every logging call with the debug level set will be enclosed with +the conditional expression. +

      +Use this feature with care! The current implementation only supports the Jakarta +Log4J toolkit and is somewhat weak in that every method call called +debug is treated as a logging call which could be incorrect +in your application. However, it works fine for the l7dlog calls. +

    • +Insert trailing newline +

      +If enabled, Jalopy inserts an empty line at the end of every file. This may +help to avoid problems with certain text formatters and processors. +

      +Note that Jalopy always inserts at least one empty line after footers, so there +is no real need (but it doesn't hurt) to check the mark in case footer insertion +will be performed (see Section 4.3.11, “Footer”) +

    • +Array brackets after identifiers +

      +Lets you choose where the brackets of array types should be placed. +

      +By default, Jalopy prints the square brackets right after the array type. +

      Example 4.152. Array brackets after type

      +int[] a;
      +

      +But C/C++ programmers may expect them to appear after the identifier. +

      Example 4.153. Array brackets after identifier

      +int a[];
      +

    • +Force formatting +

      +Jalopy can keep track of which files have been formatted previously. +See Section 4.3.13.2, “History” below. If History is enabled, Jalopy will +exclude files that have a modification date coincident with the last formatting. +However, you can override this history check to force a format. For example, +you might need to update the copyright notice for the whole code base. Enabling +this switch ensures that all source files are always be formatted. Note that +this switch is only meaningful if the history feature is enabled. +

    4.3.13.2. History

    +The history feature offers a way to optimize the speed at which Jalopy processes +of a group of files repeatedly. Using history, Jalopy is able to track file +modifications between successive invocations, and only format those source +files which have actually changed, or which weren't processed previously. +This can save a huge amount of execution time for a project that is formatted +repeatedly over time. There are two methods for keeping history. +

    • +Use history file +

      +If you can't get along with a history header comment at the top of each source +file, but would like historical optimization, the file-based approach may work +for you. The history information of previous formatting will be saved in a file +history.dat under the Jalopy settings directory. +

      +Note that this file will grow over time, especially if one manages several big +projects. So the history file could become quite huge. As all history entries +are read into memory at startup, it could eat up quite a bit of memory space. +Therefore a little history viewer is provided which enables you to selectively +remove obsolete entries. +

      +In order to effectively use formatting of a project with several developers it is +nice to be able to only format files which have changed. There are three methods of +working out if a file has changed provided in a drop down. Timestamp will use the +modification time of the file, this does not work very well with source control +and multiple developers. There are two standard checksums available. These +work by taking a checksum of the file and comparing it to the one in the history file. +If this checksum is different, the file is parsed and formatted in memory and a new +checksum calculated. If the new checksum is different than the checksum for the +unformatted file, it is written to disk. This stops files that have just been updated +from source control from having being formatted (and timestamps updated). +

      +Use the View... button to display the history viewer. You +can selectively remove entries via the popup menu. +

    • +Use history comments +

      +Jalopy will insert a small comment in the first line of every source file. +The comment encodes the time a file was last formatted along with the package +name of the file. This method is precise and relatively foolproof but does not work well +with SCM tools. +

    4.3.13.3. Backup

    +For security reasons Jalopy creates a backup copy of the currently +processed file so it can be restored in case a severe error occured during the +formatting process. The original file is stored in the backup directory and normally +deleted after the newly formatted file has been successfully written. +

    • +Level +

      +The backup level defines how many numbered backups should be retained (up to 30). +The default is to never hold any backups. +

    • +Directory +

      +Specifies where file backups are stored. You should leave this setting untouched +in order to make your code convention portable across different systems and platforms. +

    4.3.13.4. Threads

    +Jalopy, more precisely the provided Plug-ins, are multi-threaded. On +multi-processor systems the work can be divided onto several processors to +speed up processing. +

    • +Number +

      +Specifies the number of processing threads to be used. This setting should be +equal to the number of processors your system has. +

    to top

    diff --git a/utils/jalopy/docs/part-core.html b/utils/jalopy/docs/part-core.html index 62e881d..1340c78 100755 --- a/utils/jalopy/docs/part-core.html +++ b/utils/jalopy/docs/part-core.html @@ -16,3 +16,25 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Part I. Jalopy core + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Jalopy core

    +This part of the manual covers the core Jalopy engine: generic installation and +usage instructions along with a detailed discussion of the available switches +to customize application behavior and formatting output. +

    to top

    diff --git a/utils/jalopy/docs/part-plugins.html b/utils/jalopy/docs/part-plugins.html index 62e881d..9ddbeaf 100755 --- a/utils/jalopy/docs/part-plugins.html +++ b/utils/jalopy/docs/part-plugins.html @@ -16,3 +16,23 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Part II. Plug-ins + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Plug-ins

    +This part of the manual covers the different Plug-ins available. +

    to top

    diff --git a/utils/jalopy/docs/plugin-ant-config.html b/utils/jalopy/docs/plugin-ant-config.html index 62e881d..c8f1bea 100755 --- a/utils/jalopy/docs/plugin-ant-config.html +++ b/utils/jalopy/docs/plugin-ant-config.html @@ -16,3 +16,29 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 5.2. Configuration + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    5.2. Configuration

    +To display the settings dialog you should use the provided wrapper script for +your platform (available in the /bin folder of the distribution). +

    +Of course, you can setup the classpath yourself by adding all +.jar files as usual to the classpath and then type +

    +java Preferences
    +

    to top

    diff --git a/utils/jalopy/docs/plugin-ant-license.html b/utils/jalopy/docs/plugin-ant-license.html index 62e881d..e1cdd0e 100755 --- a/utils/jalopy/docs/plugin-ant-license.html +++ b/utils/jalopy/docs/plugin-ant-license.html @@ -16,3 +16,27 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 5.4. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    5.4. License

    +The Ant Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

    +See Appendix B, The Jalopy BSD License for the license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-ant-usage.html b/utils/jalopy/docs/plugin-ant-usage.html index 62e881d..24b1cf3 100755 --- a/utils/jalopy/docs/plugin-ant-usage.html +++ b/utils/jalopy/docs/plugin-ant-usage.html @@ -16,3 +16,131 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 5.3. Usage + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    5.3. Usage

    +The Jalopy task can take a few parameters to control the runtime behavior of +Jalopy. If omitted, your current preferences settings will be used. +

    +Nested FileSets +can and should be used to specify the source files and/or directories. +

    Table 5.1. Jalopy Ant task parameters

    AttributeDescriptionRequired
    backupIndicates whether backup copies for all file sources should be kept.No
    classpathrevThe classpath to setup the class repository with, given as a reference to a path defined elsewhere. If you want the import optimization feature to work, you have to specify the classpath reference you use to compile your sources here.No
    conventionSets the location to the convention file to use - given either relative to the project's basedir or as an absolute local path or internet address. If omitted, the current settings are used, if available. Otherwise the Jalopy build-in defaults will be used.No
    destdirSets the destination directory to create/copy all formatting output into. If the given directory does not exist, it will be created. If this attribute is ommitted, all input files will simply be overriden.No
    encodingSets the encoding that controls how Jalopy interprets text files containing characters beyond the ASCII character set. Defaults to the platform default encoding.No
    failonerrorIndicates whether a run should be held if errors occured. Defaults to "true".No
    fileSpecifies a single source file to format.Yes, if no fileset is specified.
    fileformatSets the file format of the output files. The file format controls what end of line character is used. Either one of "UNIX", "DOS", MAC", "DEFAULT" or "AUTO" can be used. Defaults to "AUTO" (case insensitive).No
    forceIndicates whether the formatting of files should be forced, even if the file is up-to-date.No
    historySpecifies the history policy to use. Either one of + "COMMENT", "FILE" or + "NONE" can be used. + No
    javadocIndicates whether Javadoc related messages should be printed.No
    loglevelSpecifies the logging level for message output. Either one of + "ERROR", "WARN", "INFO" or "DEBUG" can be used.No
    styleDEPRECATED. See conventionNo
    threadsSpecifies the number of processing threads to use. Integer between 1 - 8. + No

    5.3.1. Example

    +The following example demonstrates how you can make use of the Jalopy Ant task. +

    +Note that the "format" target depends on the "compile" target. +This way we can be sure that the given classpathref does cover all types used +in your sources (and this is an absolute necessity for the import optimization feature +to work reliable). +

    Example 5.1. Example Ant build file

    +<?xml version="1.0" ?>
    +<project name="myProject" default="format" basedir="." >
    +
    +  <property name="dir.jalopy" value="/mystuff/jalopy/bin" />
    +  <property name="dir.lib" value="${basedir}/ext/lib" />
    +  <property name="dir.compile" value="${basedir}/tmp~/build/classes" />
    +  <property name="dir.src.java" value="${basedir}/src/java" />
    +
    +  <!-- ==================================================================== -->
    +  <!-- Defines the Jalopy task                                              -->
    +  <!-- ==================================================================== -->
    +  <taskdef name="jalopy"
    +           classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
    +    <!--
    +
    +      we did not copy the needed .jars into the /lib directory of Ant in order
    +      to avoid possible classpath issues, so we have to specify a lookup
    +      classpath here
    +
    +      -->
    +    <classpath>
    +      <fileset dir="${dir.jalopy}">
    +        <include name="*.jar" />
    +      </fileset>
    +    </classpath>
    +  </taskdef>
    +
    +
    +  <!-- ==================================================================== -->
    +  <!-- Defines the project classpath                                        -->
    +  <!-- ==================================================================== -->
    +  <path id="project.classpath" >
    +
    +    <!-- our compilation directory -->
    +    <pathelement location="${dir.compile}" />
    +
    +    <!-- needed 3rd party libraries -->
    +    <fileset dir="${dir.lib}" >
    +      <include name="**/*.jar" />
    +    </fileset>
    +  </path>
    +
    +
    +  <!-- ==================================================================== -->
    +  <!-- Compiles the project sources                                         -->
    +  <!-- ==================================================================== -->
    +  <target name="compile"
    +          depends="init">
    +    <javac destdir="${dir.compile}"
    +           fork="true">
    +      <classpath refid="project.classpath" />
    +      <src path="${dir.src.java}" />
    +    </javac>
    +  </target>
    +
    +
    +  <!-- ==================================================================== -->
    +  <!-- Formats all source files                                             -->
    +  <!-- ==================================================================== -->
    +  <target name="format" depends="compile">
    +
    +    <!--
    +
    +      Invokes Jalopy as follows:
    +
    +      - All formatted files will have unix fileformat (\n)
    +      - Load your code convention from the given url
    +      - Override the convention to use the file history feature
    +      - Override the convention to use alder32 checksums of files for history testing
    +      - Override the convention to use loglevel "info"
    +      - Override the convention to use 2 threads
    +      - The import optimization feature will work (if enabled in the active
    +        convention), because a classpath reference is specified
    +
    +        Don't forget to setup an include pattern as Jalopy truly expects
    +        valid Java source files as input!
    +
    +      -->
    +    <jalopy fileformat="unix"
    +            convention="http://www.foo.com/myConvention.xml"
    +            history="file"
    +            historymethod="adler32"
    +            loglevel="info"
    +            threads="2"
    +            classpathref="project.classpath">
    +      <fileset dir="${dir.src.java}">
    +        <include name="**/*.java" />
    +      </fileset>
    +    </jalopy>
    +  </target>
    +</project>
    +

    to top

    diff --git a/utils/jalopy/docs/plugin-ant.html b/utils/jalopy/docs/plugin-ant.html index 62e881d..e964a08 100755 --- a/utils/jalopy/docs/plugin-ant.html +++ b/utils/jalopy/docs/plugin-ant.html @@ -16,3 +16,68 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 5. Ant Plug-in task + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 5. Ant Plug-in task

    +Describes the installation and usage of the Jalopy Ant Plug-in task. +

    5.1. Installation

    +Explains the steps involved in getting the Ant task up and running. +

    5.1.1. System requirements

    +The Plug-in requires Ant 1.3 or higher. It has been tested with 1.3 and 1.5 versions of Ant. +Please feel free to notify of other success stories. +See Section 1.1, “System requirements” for the basic requirements to +run Jalopy. +

    +To obtain more information about this wonderful build tool, visit the official +Ant home page at the Apache Jakarta site: +http://jakarta.apache.org/ant/ +

    5.1.2. Installation

    +The Plug-in comes either as a single .zip or compressed +.tar archive. Unzipping either one of these files into a directory +of your choice (referred to as <INST_DIR>) +will produce three subdirectories /bin, /docs +and /lib. +

    +

    +..
    +  bin/       contains wrapper scripts for different platforms
    +  docs/      contains the documentation
    +  lib/       contains all necessary libraries
    +

    +

    +Before you can use the Jalopy Ant task in your build scripts, you have to add +it to your system. Maybe the simplest way is to utilize the +<taskdef> element in your build script as follows: +

    +<taskdef name="jalopy"
    +         classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
    +  <classpath>
    +    <fileset dir="<INST_DIR>/lib">
    +      <include name="*.jar" />
    +    </fileset>
    +  </classpath>
    +</taskdef>
    +

    +If you rather want to add the provided libraries to your classpath (either by +copying the libraries into the /lib folder of your Ant +installation or setting up the classpath as usual), please be aware that the +provided parser (aelfred-xxx.jar) +is incompatible with Ant 1.4.1 or prior releases. If you happen to use one of +these outdated versions, the parser library must not be copied into the +/lib folder (or added to the classpath) otherwise Ant will fail to work! +

    to top

    diff --git a/utils/jalopy/docs/plugin-console-license.html b/utils/jalopy/docs/plugin-console-license.html index 62e881d..b379bc3 100755 --- a/utils/jalopy/docs/plugin-console-license.html +++ b/utils/jalopy/docs/plugin-console-license.html @@ -16,3 +16,28 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 6.3. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    6.3. License

    +The Console Plug-in is "OSI Certified Open Source Software", +released under the GNU General Public License. See Appendix E, GNU GENERAL PUBLIC LICENSE Version 2, June 1991 +for more information. +

    +See Appendix B, The Jalopy BSD License for the Jalopy license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-console-usage.html b/utils/jalopy/docs/plugin-console-usage.html index 62e881d..5f33ceb 100755 --- a/utils/jalopy/docs/plugin-console-usage.html +++ b/utils/jalopy/docs/plugin-console-usage.html @@ -16,3 +16,97 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 6.2. Usage + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    6.2. Usage

    +Presents the available command line options along with some usage examples. +

    6.2.1. Synopsis

    +To start Jalopy from the command line you may either use +

    +jalopy [-options] args...
    +

    +or +

    +java Jalopy [-options] args...
    +

    +or +

    +java -jar jalopy-<version>.jar [-options] args...
    +

    +depending on your installation option. +

    +You can specify as many args as you want, +where args describes either files, +directories or filter expressions. You can use any valid Perl5 (5.003) +regular expression as a filter expression. +

    Options
    +-c, --convention=FILE   use FILE as code convention file
    +    --disclaimer        print software disclaimer
    +-d, --dest=DIR          use DIR as base output directory
    +-e, --encoding=WORD     assume WORD as encoding of input files where WORD
    +                        describes one of the JDK supported encodings
    +                        (if omitted, the platform default is used)
    +-f, --format=WORD       use WORD as output file format where WORD can be
    +                        either UNIX, DOS, MAC, AUTO (the default) or DEFAULT
    +                        (all case-insensitive)
    +    --force             force formatting even if file up-to-date
    +-h, --help              display this help
    +    --nobackup          don't keep backup files
    +-r, --recursive{=NUM}   recurse into directories, up to NUM levels
    +                        if NUM is omitted, recurses indefinitely
    +-t, --thread=NUM        use NUM processing threads
    +-v, --version           print product version and exit
    +

    +If no input file(s) are given, Jalopy starts listening on STDIN. +

    6.2.2. Examples

    +

    Example 6.1. Sample command line usage

    +jalopy -r myDirectory
    +

    +Formats all Java source files found in directory myDirectory +and all subdirectories. Creates backup copies of all files. The file format +of the original source files will be kept. +

    + +

    Example 6.2. Sample command line usage

    +jalopy -d /directory -f DOS
    +myFile1.java myFile2.java
    +

    +Formats the two files myFile1.java and +myFile2.java and writes the new files into +directory /directory. Uses DOS as the file +format of the new files. +

    + +

    Example 6.3. Sample command line usage

    +jalopy -r 3 -d /directory ^A.*java
    +

    +Formats all Java source files found in the current directory and three +levels down that begin with a captial 'A' and writes the new files into +directory /tmp. The file format of the +original source files will be kept. +

    + +

    Example 6.4. Sample command line usage

    +type f:\test\in.java | jalopy > out.java
    +

    +Formats the file f:\test\in.java read from STDIN and +outputs its formatted contents to the file out.java in the +current directory. +

    + +

    to top

    diff --git a/utils/jalopy/docs/plugin-console.html b/utils/jalopy/docs/plugin-console.html index 62e881d..113c235 100755 --- a/utils/jalopy/docs/plugin-console.html +++ b/utils/jalopy/docs/plugin-console.html @@ -16,3 +16,59 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 6. Console Application + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 6. Console Application

    +The Console application provides a powerful command line interface for Jalopy. +

    6.1. Installation

    +Explains the steps involved to install the Console Plug-in. +

    6.1.1. System requirements

    +See Section 1.1, “System requirements” for the basic requirements to +run Jalopy. +

    6.1.2. Installation

    +The Plug-in comes either as a single .zip or compressed .tar file. +Unzipping either one of these files into a directory of your choice (referred +to as <INST_DIR>) will produce three +subdirectories /bin, /docs and +/lib. +

    +

    +..
    +  bin/       contains wrapper scripts for different platforms
    +  docs/      contains the documentation
    +  lib/       contains all necessary libraries
    +

    +

    +Wrapper scripts are provided for the common platforms, so you may want to add +the /bin folder to your path. If your platform +is not covered you should make use of the -jar option of the +Java application launcher (the java -jar command), since +this requires no classpath manipulation. If you don't want to use the +-jar option, you have to add the .jar +files as usual to your classpath. +

    +For the Unix Bash shell, this means can be achieved using +

    +export CLASSPATH=${CLASSPATH}:<INST_DIR>/lib/jalopy-console-<version>.jar
    +

    +For Windows, use something like +

    +set CLASSPATH=%CLASSPATH%;<INST_DIR>\lib\jalopy-console-<version>.jar
    +

    +Refer to your system documentation on how to apply these changes more permanently. +

    to top

    diff --git a/utils/jalopy/docs/plugin-eclipse-integration.html b/utils/jalopy/docs/plugin-eclipse-integration.html index 62e881d..08dfeba 100755 --- a/utils/jalopy/docs/plugin-eclipse-integration.html +++ b/utils/jalopy/docs/plugin-eclipse-integration.html @@ -16,3 +16,55 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 7.2. Integration + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    7.2. Integration

    +Shows how the Plug-in is integrated into the Eclipse IDE. +

    7.2.1. Main menu bar

    +Currently, the software adds a new item into the main menu bar of Eclipse +to launch the Jalopy settings dialog. Note that the this configuration +dialog is actually a Java Swing dialog launched in-process so the +appearance and behaviour may slightly differ compared to native applications. +A future version will bring tightly integration with the Eclipse workbench +preferences dialog. +

    • +Window->Jalopy Settings... +

      +Displays the Jalopy settings dialog. Use this item if you want to change the +settings that control the layout of any formatted code. +

    +The menu item appears only for certain views/editors. If you want to +enable it permanently, mark +Window->Customize Perspective...->Action Sets->Jalopy + +

    7.2.2. Java Editor context menu

    +The software adds a new menu item to the context menu of Java editors. +

    • +Format with Jalopy +

      +Formats the contents of the editor. +

    7.2.3. Project, Folder, File context menus

    +The software adds a new menu item to the context menu of projects, folders and +Java source files in the navigation view of the Java perspective. +

    • +Format +

      +Formats the selected files. Depending on the object type (project, folder, file) formats +either all Java source files of the project, the contents of the selected folder(s) +(including subfolders) or the currently selected Java source file(s). +

    to top

    diff --git a/utils/jalopy/docs/plugin-eclipse-license.html b/utils/jalopy/docs/plugin-eclipse-license.html index 62e881d..06cf4fa 100755 --- a/utils/jalopy/docs/plugin-eclipse-license.html +++ b/utils/jalopy/docs/plugin-eclipse-license.html @@ -16,3 +16,28 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 7.3. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    7.3. License

    +The Eclipse Plug-in is "OSI Certified Open Source Software", +released under the Common Public License. See Appendix G, Common Public License Version 1.0 +for more information. +

    +See Appendix B, The Jalopy BSD License for the Jalopy license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-eclipse.html b/utils/jalopy/docs/plugin-eclipse.html index 62e881d..75fab6c 100755 --- a/utils/jalopy/docs/plugin-eclipse.html +++ b/utils/jalopy/docs/plugin-eclipse.html @@ -16,3 +16,51 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 7. Eclipse Plug-in + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 7. Eclipse Plug-in

    +Describes the installation and usage of the Jalopy Eclipse Plug-in. +

    7.1. Installation

    +Explains the steps involved to install the Eclipse Plug-in. +

    7.1.1. System requirements

    +This Plug-in requires Eclipse 2.0 or higher. It has only been tested with Eclipse 2.0. +See Section 1.1, “System requirements” for the basic requirements +to run Jalopy. +

    +To obtain more information about this powerful IDE, visit the official +Eclipse homepage: +http://www.eclipse.org/ +

    7.1.2. Installation

    +The Plug-in comes either as a single .zip or +compressed .tar archive. Unzipping either one of these +files into a directory of your choice (referred to as +<INST_DIR>) will produce two +subdirectories /de.hunsicker.jalopy.plugin.eclipse_version +and /docs. +

    +

    +..
    +  de.hunsicker.jalopy.plugin.eclipse_version/    contains the Plug-in files
    +  docs/                                          contains the documentation
    +

    +

    +Copy the de.hunsicker.jalopy.plugin.eclipse_version +folder into your Eclipse plugin directory and +restart Eclipse. That's all there is to it, you are now ready to run Jalopy +from within Eclipse. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jbuilder-integration.html b/utils/jalopy/docs/plugin-jbuilder-integration.html index 62e881d..92d21ad 100755 --- a/utils/jalopy/docs/plugin-jbuilder-integration.html +++ b/utils/jalopy/docs/plugin-jbuilder-integration.html @@ -16,3 +16,51 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 8.2. Integration + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    8.2. Integration

    +Shows how the Plug-in is integrated into the JBuilder IDE. +

    8.2.1. AppBrowser main menu

    +The software adds two new menu items into the main menu of the AppBrowser to +seamlessly integrate with JBuilder: +

    • +Project->Format <file> (Ctrl-Shift-F10) +

      +Formats the current editor view. Use this item if you need to format the +current opened file. +

      +Only available if there is an open view that contains a Java source file. +

    • +Tools->Jalopy Options.... +

      +Displays the Jalopy settings dialog. +

      +Use this item if you want to configure your settings to control the +layout of any formatted code. +

    8.2.2. Project pane popup-menu

    +There will also be a new menu item available at the end of the popup-menu of +the Project pane: Format. Use this item if you want +to format several files at once. All currently selected files are formatted. +

    +If it happens that a file has an open editor view, this view will be updated, +not the actual file. You have to save the view first to see the physical file +updated. +

    8.2.3. Editor view popup menu +

    +Both the Format <file> and Jalopy Options... items can be also reached via the popup menu of the active editor view. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jbuilder-license.html b/utils/jalopy/docs/plugin-jbuilder-license.html index 62e881d..2d70807 100755 --- a/utils/jalopy/docs/plugin-jbuilder-license.html +++ b/utils/jalopy/docs/plugin-jbuilder-license.html @@ -16,3 +16,27 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 8.3. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    8.3. License

    +The JBuilder Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

    +See Appendix B, The Jalopy BSD License for the license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jbuilder.html b/utils/jalopy/docs/plugin-jbuilder.html index 62e881d..bac41b8 100755 --- a/utils/jalopy/docs/plugin-jbuilder.html +++ b/utils/jalopy/docs/plugin-jbuilder.html @@ -16,3 +16,52 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 8. JBuilder OpenTool + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 8. JBuilder OpenTool

    +Describes the installation and usage of the Jalopy JBuilder Plug-in OpenTool. +

    8.1. Installation

    +Explains the steps involved to install the JBuilder Plug-in. +

    8.1.1. System requirements

    +The JBuilder Plug-in requires JBuilder 5.0 or higher. It has only been tested with JBuilder +Personal 6.0 and 7.0. See Section 1.1, “System requirements” +for the basic requirements to run Jalopy. +

    +To obtain more information about this +powerful IDE, visit the official JBuilder homepage at the Borland site: +http://www.borland.com/jbuilder/ +

    8.1.2. Installation

    +The Plug-in comes either as a single .zip or compressed .tar file. +Unzipping either one of these files into a directory of your choice (referred +to as <INST_DIR>) will produce two +subdirectories /docs and /lib. +

    +

    +..
    +  docs/      contains documentation
    +  lib/       contains all necessary libraries
    +

    +

    +Remove all files from any prior Jalopy version from +your JBuilder extension directory (/lib/ext). +

    +Further installation is simple: just copy all files from your +<INST_DIR>/lib folder +into the /lib/ext directory of your JBuilder distribution. +JBuilder will then need to be restarted before Jalopy begins working. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jdev-integration.html b/utils/jalopy/docs/plugin-jdev-integration.html index 62e881d..906c6c3 100755 --- a/utils/jalopy/docs/plugin-jdev-integration.html +++ b/utils/jalopy/docs/plugin-jdev-integration.html @@ -16,3 +16,56 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 9.2. Integration + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    9.2. Integration

    +Shows how the Plug-in is integrated into the JDeveloper IDE. +

    9.2.1. Navigator context menu

    +The software adds a new menu item into the context popup menu of the Navigator: +

    • +Format [Workspace|Project] +

      +By selecting the "Format" menu item, all Java sources of the +selected node are formatted according to the current Jalopy preferences. +

      +The item appears in the popup menu if the user clicks the right mouse button on +a Java source node or any other parent node that may contain Java sources +(such as Workspace, Project, Directory, EJB or BC4J nodes). +

    9.2.2. Java editor context menu

    +The software adds a new menu item into the context popup menu of Java code editors: +

    • +Format +

      +By selecting the "Format" menu item, the contents of the active code editor view +are formatted according to the current Jalopy preferences. +

    9.2.3. Preferences dialog

    +The Jalopy preferences are integrated into the preferences dialog of +JDeveloper 9i which is reachable through the +Tools->Preferences... +menu. +Each Jalopy preferences page is added as a subentry to the main Jalopy +preferences entry. +

    +Jalopy preferences are stored in the $HOME/.jalopy directory. +This is in contrast to other JDeveloper preferences which are stored within the +IDE configuration files. It is intentional in order to allow reuse of Jalopy +preferences between different IDEs. Note that in this release, Jalopy +preferences are stored whenever the user leaves a page. If the user moves to +another settings page, all settings are stored to disk even if the user +chooses to cancel the preferences dialog later on. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jdev-license.html b/utils/jalopy/docs/plugin-jdev-license.html index 62e881d..fea13a6 100755 --- a/utils/jalopy/docs/plugin-jdev-license.html +++ b/utils/jalopy/docs/plugin-jdev-license.html @@ -16,3 +16,27 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 9.3. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    9.3. License

    +The JDeveloper Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

    +See Appendix B, The Jalopy BSD License for the license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jdev.html b/utils/jalopy/docs/plugin-jdev.html index 62e881d..68cd50c 100755 --- a/utils/jalopy/docs/plugin-jdev.html +++ b/utils/jalopy/docs/plugin-jdev.html @@ -16,3 +16,51 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 9. JDeveloper Extension + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 9. JDeveloper Extension

    +Describes the installation and usage of the Jalopy JDeveloper Plug-in Extension. +

    9.1. Installation

    +Explains the steps involved to install the JDeveloper Plug-in. +

    9.1.1. System requirements

    +The JDeveloper Plug-in requires Oracle9i JDeveloper or later. 1.1.3 is the +latest version and has only been tested with JDeveloper 10g Production. Older +releases may work on JDeveloper 9.0.2 and 9.0.3. See Section 1.1, “System requirements” for the basic +requirements to run Jalopy. +

    +To obtain more information about this powerful IDE, visit the official JDeveloper homepage +at the Oracle site: +http://otn.oracle.com/products/jdev/ +

    9.1.2. Installation

    +The Plug-in comes either as a single .zip or +compressed .tar file. Unzipping either one of these files +into a directory of your choice (referred to as <INST_DIR>) +will produce two subdirectories /docs and /lib. +

    +

    +..
    +  docs/      contains the documentation
    +  lib/       contains all necessary libraries
    +

    +

    +Further installation is simple: just copy all files from the +<INST_DIR>/lib folder +into the /jdev/lib/ext directory of your JDeveloper +distribution. JDeveloper will then need to be restarted before Jalopy begins +working. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jedit-integration.html b/utils/jalopy/docs/plugin-jedit-integration.html index 62e881d..7529668 100755 --- a/utils/jalopy/docs/plugin-jedit-integration.html +++ b/utils/jalopy/docs/plugin-jedit-integration.html @@ -16,3 +16,42 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 10.2. Integration + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    10.2. Integration

    +Shows how the Plug-in is integrated into jEdit. +

    +The software adds a new menu item group into the Plugins +menu of the editor view. Available are two new menu items: +

    • +Plugins->Jalopy->Format current Buffer. +

      +Formats the contents of the active text area. +

      +Note that this menu item reflects the state of the text area: it will only be enabled +if the current edit mode is actually the java mode. +

    • +Plugins->Jalopy->Jalopy Options.... +

      +Displays the Jalopy settings dialog. +

      +Use this item if you want to change your settings to control the +layout of any formatted code. +

    +These options are available under jEdit's Global Options dialog, too. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jedit-license.html b/utils/jalopy/docs/plugin-jedit-license.html index 62e881d..72f045d 100755 --- a/utils/jalopy/docs/plugin-jedit-license.html +++ b/utils/jalopy/docs/plugin-jedit-license.html @@ -16,3 +16,28 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 10.3. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    10.3. License

    +The jEdit Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

    +See Appendix B of the manual +for the license and refer to Appendix A for +the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-jedit.html b/utils/jalopy/docs/plugin-jedit.html index 62e881d..1927417 100755 --- a/utils/jalopy/docs/plugin-jedit.html +++ b/utils/jalopy/docs/plugin-jedit.html @@ -16,3 +16,56 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 10. jEdit Plug-in + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 10. jEdit Plug-in

    +Describes the installation and usage of the Jalopy jEdit Plug-in. +

    10.1. Installation

    +Explains the steps involved to install the jEdit Plug-in. +

    10.1.1. System requirements

    +The Jalopy jEdit Plug-in requires at least jEdit 4.1pre1 and MessageView 0.1.0. +If you want to import/exprt XML settings, you need the XML Plug-in also. +Refer to the Jalopy user manual for the basic requirements to run Jalopy (You +may find the latest version on the Jalopy website, +http://jalopy.sf.net/installation.html) +

    +To obtain more information about this wonderful Editor, visit the official +jEdit homepage: +http://www.jedit.org/ +

    10.1.2. Installation

    +The Plug-in comes either as a single .zip or compressed +.tar archive. Unzipping either one of these files into a directory +of your choice (referred to as <INST_DIR>) will +produce two subdirectories /docs and /lib. +

    +

    +..
    +  docs/      contains the documentation
    +  lib/       contains all necessary libraries
    +

    +

    +If there is already an older version of Jalopy installed, you have to remove it +prior to install. Open the Plugin Manager via +Plugins->Plugin Manager, select the Jalopy Java Source Code Formatter entry and +press Remove Plugins. +

    +Further installation is simple: just copy all .jar files +contained in the <INST_DIR>/lib folder +into the /jars directory of your jEdit distribution. +jEdit will then need to be restarted before Jalopy begins working. +

    to top

    diff --git a/utils/jalopy/docs/plugin-netbeans-integration.html b/utils/jalopy/docs/plugin-netbeans-integration.html index 62e881d..26ac7ce 100755 --- a/utils/jalopy/docs/plugin-netbeans-integration.html +++ b/utils/jalopy/docs/plugin-netbeans-integration.html @@ -16,3 +16,48 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 11.2. Integration + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    11.2. Integration

    +Shows how the Plug-in is integrated into the NetBeans IDE. +

    11.2.1. Workspace main menu

    +The software adds two new menu items into the main menu of the current +Workspace to seamlessly integrate with NetBeans: +

    • +Build->Format [All] (Ctrl-Shift-F10). +

      +Formats the currently selected node(s). +

      +Only available if there are indeed nodes selected which represents or contains +Java source files. +

    • +Tools->Jalopy Options.... +

      +Displays the Jalopy settings dialog. +

      +Use this item if you want to change your settings to control the +layout of any formatted code. +

    11.2.2. Explorer popup-menu

    +The Format [All] item can be also reached via the +popup menu of the Explorer. Note that the item only appears for folder nodes +or plain Java source files. It does not work for form based nodes. +

    +If it happens that a file has an open editor view, this view will be updated, +not the actual file. You have to save the view first to see the physical file +updated. +

    to top

    diff --git a/utils/jalopy/docs/plugin-netbeans-license.html b/utils/jalopy/docs/plugin-netbeans-license.html index 62e881d..321c9bd 100755 --- a/utils/jalopy/docs/plugin-netbeans-license.html +++ b/utils/jalopy/docs/plugin-netbeans-license.html @@ -16,3 +16,28 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 11.3. License + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    11.3. License

    +The NetBeans Plug-in is "OSI Certified Open Source Software", +released under the Sun Public License. See Appendix H, SUN PUBLIC LICENSE Version 1.0 +for more information. +

    +See Appendix B, The Jalopy BSD License for the Jalopy license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

    to top

    diff --git a/utils/jalopy/docs/plugin-netbeans.html b/utils/jalopy/docs/plugin-netbeans.html index 62e881d..d462344 100755 --- a/utils/jalopy/docs/plugin-netbeans.html +++ b/utils/jalopy/docs/plugin-netbeans.html @@ -16,3 +16,61 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 11. NetBeans/Sun ONE Studio module + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 11. NetBeans/Sun ONE Studio module

    +Describes the installation and usage of the Jalopy NetBeans/Sun ONE Studio Plug-in module. +

    11.1. Installation

    +Explains the steps involved to install the NetBeans Plug-in module. +

    11.1.1. System requirements

    +The Plug-in requires NetBeans 3.3 (or above) or Sun ONE Studio 4. It has only been +tested with NetBeans 3.4. +See Section 1.1, “System requirements” for the basic requirements +to run Jalopy. +

    +To obtain more information about this +powerful IDE, visit the official NetBeans homepage: +http://www.netbeans.org/ or the Sun ONE Studio +pages at Sun: +http://wwws.sun.com/software/sundev/jde/ +

    11.1.2. Installation

    +The Plug-in comes either as a single .zip or compressed +.tar file. Unzipping either one of these files into a directory +of your choice (referred to as <INST_DIR>) +will produce two subdirectories /docs and +/lib. +

    +

    +..
    +  docs/      contains the documentation
    +  lib/       contains all necessary libraries
    +

    +

    +Now follow these steps to install the Jalopy Plug-in: +

    1. +Start NetBeans/Sun ONE Studio. +

    2. +Open the Update Center Wizard by selecting +Tools->Update Center... +(You need to have the Auto Update module enabled for this to work). +

    3. +On the first page 'Select Location of modules', choose 'Install Manually +Downloaded Modules (.nbm Files)', select the .nbm contained +in <INST_DIR>/lib and +proceed through all steps of the wizard as outlined. +

    to top

    diff --git a/utils/jalopy/docs/plugins.html b/utils/jalopy/docs/plugins.html index 62e881d..eb0299f 100755 --- a/utils/jalopy/docs/plugins.html +++ b/utils/jalopy/docs/plugins.html @@ -16,3 +16,25 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Jalopy - Plug-ins + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    + This page generated: June 8 2004

    Plug-ins

    +There are several Plug-ins available for Jalopy to add its extended formatting +capabilities to your favourite Java IDE or build tool. +

    +Below you find a list with the current Plug-ins. Click on the entries +to get more information. +

    +More to come! +

    to top

    diff --git a/utils/jalopy/docs/printer.html b/utils/jalopy/docs/printer.html index 62e881d..2248952 100755 --- a/utils/jalopy/docs/printer.html +++ b/utils/jalopy/docs/printer.html @@ -16,3 +16,202 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3. Printer + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3. Printer

    +Lets you control all printer related settings. +

    4.3.1. Braces

    +Controls the handling of curly braces (the Java block delimeters). +

    4.3.1.1. General

    +Controls how the enclosing block delimeters - left and right curly +brace - are printed. You can either choose from a predefined set of common +styles or build one on your own. +

    4.3.1.1.1. Styles

    +Controls which brace style will be used to lay out blocks. +

    • +C style +

      +Selects the C brace style. This style is sometimes called "Allman style" or "BSD style". +

      Example 4.1. C style

      +if (!isDone)
      +{
      +    doSomething();
      +}
      +else
      +{
      +    System.err.println("Finished");
      +}
      +

    • +Sun style +

      +Selects the Sun brace style. Sometimes called "K&R style". +

      Example 4.2. Sun style

      +if (!isDone) {
      +    doSomething();
      +} else {
      +    System.err.println("Finished");
      +}
      +

    • +GNU style +

      +Selects the GNU brace style. +

      Example 4.3. GNU style

      +if (!isDone)
      +  {
      +    doSomething();
      +  }
      +else
      +  {
      +    System.err.println("Finished");
      +  }
      +

    • +Custom style +

      +Selecting this option will enable you to freely choose between the different brace +style options discussed below. +

    4.3.1.1.2. Wrapping

    +Controls the brace wrapping options. +

    • +Newline before left brace +

      +If enabled, always prints a newline before the left curly brace. +

    • +Newline after right brace +

      +If enabled, prints a newline after the left curly brace (when possible). +

    • +Treat class/method blocks different +

      +It is common in the Java developer community to have the opening brace +at the end of the line of the keyword for all types of blocks (Sun brace style). +One may find the C++ convention of treating class/interface and method/constructor +blocks different from other blocks useful. With this switch you can achieve +exactly that: if enabled, class/interface and method/constructor blocks are +then always printed in C brace style (newline before left brace). +

    • +Treat class/method blocks different if wrapped +

      +With this switch enabled, the opening brace for class/interface or +method/constructor blocks will always be printed on a new line (C style), if +either the parameter list spawns several lines and a throws +clause follows, or one of the possible clauses (extends, +implements, throws) was wrapped. +

    4.3.1.1.3. Whitespace

    +Controls the indentation whitespace for the left and right curly brace. +

    • +Before left brace +

      +Number of spaces to print before the left curly brace. +

    • +After left brace +

      +Number of spaces to print after the left curly brace. +

    • +After right brace +

      +Number of spaces to print after the right curly brace. +

    4.3.1.2. Misc

    +Controls miscellaneous brace options. +

    4.3.1.2.1. Insert braces

    +Per definition braces are superfluous on single statements, but it is +a common recommendation that braces should be always used in such cases. +With this option, you can specify whether missing braces for single +statements should be inserted for the control statements if, +for, while and do-while. +

    +Enabling this option for while statements would render +

    Example 4.4. Brace insertion

    +while (!isDone)
    +    doSomething();
    +

    +into +

    +while (!isDone)
    +{
    +    doSomething();
    +}
    +

    4.3.1.2.2. Remove braces

    +It is permittable to remove braces in case they are superfluous. This not only +applies to the control statements if, for, +while and do-while, but also to every +block in general (remember a block is just a sequence of statements, +local class declarations and local variable declaration statements within +braces). +

    Example 4.5. Brace removal

    +for (int i = 0; i < 100; i++)
    +{
    +    sum += value[i];
    +}
    +

    +would become +

    +for (int i = 0; i < 100; i++)
    +    sum += value[i];
    +

    4.3.1.2.3. Empty braces

    +Controls how empty braces should be handled. If no option is selected, +they are left untouched. +

    Example 4.6. Empty braces

    +if (in != null)
    +{
    +    try
    +    {
    +        in.close();
    +    }
    +    catch (IOException ignored)
    +    {
    +    }
    +}
    +

    +All options don't apply to class/interface and method/constructor bodies but +are only used for control statements and blocks. +

    • +Insert empty statement + + + +

      +Inserts an empty statement to make it obvious for the reader that the empty braces +are intentional. +

      Example 4.7. Empty braces with empty statement

      +if (in != null)
      +{
      +    try
      +    {
      +        in.close();
      +    }
      +    catch (IOException ignored)
      +    {
      +        ;
      +    }
      +}
      +
    • +Cuddle braces +

      +Cuddles the braces. They will be printed right after the control statement. + + +

      Example 4.8. Cuddled empty braces

      +if (in != null)
      +{
      +    try
      +    {
      +        in.close();
      +    }
      +    catch (IOException ignored) {}
      +}
      +

    to top

    diff --git a/utils/jalopy/docs/project.html b/utils/jalopy/docs/project.html index 62e881d..5e3d846 100755 --- a/utils/jalopy/docs/project.html +++ b/utils/jalopy/docs/project.html @@ -16,3 +16,42 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.2. Projects + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.2. Projects

    +Enables you to manage your Jalopy settings in a project-like manner. For every +project you define, Jalopy creates a new subdirectory (under its main settings directory), +where all related files will be stored. + +

    +The list component displays all currently known project spaces. Click on an +entry to see what actions are available. +

    + +

    +The different actions are: +

    + +

    • Add...

      Displays a dialog that lets you define a new project. The project +meta-information consists of a name and a short description. The name defines +the subdirectory where all project settings will reside, therefore you should +avoid characters that your platform does not allow to be used in file paths. +

    • Remove

      Lets you remove the selected project. A project may only be removed if it +is not active. The default project cannot be removed.

    • Activate

      Activates the selected project. The stored settings will be loaded and the +configuration dialog updates accordingly.

    +

    to top

    diff --git a/utils/jalopy/docs/separation.html b/utils/jalopy/docs/separation.html index 62e881d..d45925e 100755 --- a/utils/jalopy/docs/separation.html +++ b/utils/jalopy/docs/separation.html @@ -16,3 +16,288 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.5. Blank Lines + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.5. Blank Lines

    +Controls the Jalopy Blank Lines settings: the insertion of blank lines to +separate statements or declarations with different functions or meanings. +

    4.3.5.1. General

    +Lets you specify the general blank lines sizes for different Java source file elements. +

    • +Package statement +

      +Lets you control how many blank lines should be printed after the package statement. +

      Example 4.115. 3 Blank lines after package statement

      package de.hunsicker.jalopy.printer;
      +<--
      +<--
      +<--
      +import antlr.collections.AST;
      +
      +import de.hunsicker.jalopy.parser.JavaAST;
      +import de.hunsicker.jalopy.parser.JavaTokenTypes;
      +
      +...
      +

    • +Last import statement +

      +Lets you control how many blank lines should be printed after the last import statement. +

      Example 4.116. 4 Blank lines after last import statement

      package de.hunsicker.jalopy.printer;
      +
      +import antlr.collections.AST;
      +
      +import de.hunsicker.jalopy.parser.JavaAST;
      +import de.hunsicker.jalopy.parser.JavaTokenTypes;
      +<--
      +<--
      +<--
      +<--
      +public class Printer
      +{
      +    ...
      +}
      +

    • +Classes +

      +Lets you control how many blank lines should be printed between two +class declarations. +

      Example 4.117. 2 Blank lines between two class declarations

      class One
      +{
      +    ...
      +}
      +<--
      +<--
      +class Two
      +{
      +    ...
      +}
      +

    • +Interfaces +

      +Lets you control how many blank lines should be printed between two +interface declarations. +

      Example 4.118. 3 Blank lines between two interface declarations

      interface One
      +{
      +    ...
      +}
      +<--
      +<--
      +<--
      +interface Two
      +{
      +    ...
      +}
      +

    • +Methods +

      +Lets you control how many blank lines should be printed between two +method/constructor declarations. +

      Example 4.119. 3 Blank lines between two method declarations

      public static Printer getInstance()
      +{
      +    return INSTANCE;
      +}
      +<--
      +<--
      +<--
      +public void print(AST node, ASTWriter out)
      +           throws IOException
      +{
      +    ...
      +}
      +

    • +Blocks +

      +Lets you control how many blank lines should be printed before and after +statement blocks (if-else , for, while, do-while, switch, try-catch-finally, synchronized). +Note that the 'Blank lines after' setting also applies for anonymous inner classes. +

      Example 4.120. 2 Blank lines between before and after blocks

      AST type = null;
      +<--
      +<--
      +switch (next.getType())
      +{
      +    case JavaTokenTypes.LPAREN :
      +        type = PrinterUtils.advanceToFirstNonParen(next);
      +        break;
      +    default :
      +        type = next;
      +        break;
      +}
      +<--
      +<--
      +AST ident = type.getFirstChild();
      +

    • +Declarations +

      +Lets you control how many blank lines should be printed before and after +variable declarations. +

    • +Case blocks +

      +Lets you control how many blank lines should be printed before each case +block of a switch expression. +

      Example 4.121. 3 Blank lines before case blocks

      switch (next.getType())
      +{
      +<--
      +<--
      +<--
      +    case JavaTokenTypes.LPAREN :
      +        type = PrinterUtils.advanceToFirstNonParen(next);
      +        break;
      +<--
      +<--
      +<--
      +    default :
      +        type = next;
      +        break;
      +}
      +

    • +Control statements +

      +Lets you control how many blank lines should be printed before the statements +return, break and continue. +

      Example 4.122. 2 Blank lines before case control statements

      switch (next.getType())
      +{
      +    case JavaTokenTypes.LPAREN :
      +        type = PrinterUtils.advanceToFirstNonParen(next);
      +<--
      +<--
      +        break;
      +
      +    default :
      +        type = next;
      +<--
      +<--
      +        break;
      +}
      +

    • +Single-line comments +

      +Lets you control how many blank lines should be printed before single-line +comments. +

    • +Multi-line comments +

      +Lets you control how many blank lines should be printed before multi-line +comments. +

    • +Javadoc comments +

      +Lets you control how many blank lines should be printed before Javadoc +comments. +

    4.3.5.2. Misc

    Lets you control miscellaneous separation settings.

    4.3.5.2.1. Misc
    • +Blank lines after left curly brace +

      +Forces the given number of blank lines after left curly braces no matter +what your other blank lines settings say. +

      Example 4.123. Blank lines before blocks=1

      public void foo()
      +{
      +<--
      +    if (condition())
      +    {
      +<--
      +        if (anotherCondition())
      +        {
      +            doSomething();
      +        }
      +    }
      +}
      +

      Example 4.124. Blank lines before blocks=1, Blank lines after left curly braces=0

      public void foo()
      +{
      +    if (condition())
      +    {
      +        if (anotherCondition())
      +        {
      +            doSomething();
      +        }
      +    }
      +}
      +

    • +Blank lines before right curly brace +

      +Forces the given number of blank lines before closing curly braces no matter +what your other blank lines settings say. +

      Example 4.125. Blank lines before blocks=1

      public void foo()
      +{
      +    if (condititon())
      +    {
      +        if (anotherCondition())
      +        {
      +            doSomething();
      +<--
      +        }
      +<--
      +    }
      +<--
      +}
      +

    • +Keep Blank lines up to +

      +If enabled, retains up to the given number of blank lines found in the +original source. This only works for method or constructor bodies. Note that Jalopy +still takes your other blank lines settings into account. +

      Example 4.126. Source code with blank lines to separate code sections

      aMVString = new MultiValueString("abc");
      +<--
      +System.out.println("MV = "+aMVString);
      +<--
      +System.out.println("MV0 = "+aMVString.extract(0));
      +System.out.println("MV1 = "+aMVString.extract(1));
      +System.out.println("MV2 = "+aMVString.extract(2));
      +System.out.println("");
      +

      +If this feature is left disabled, Jalopy will print the individual lines according +to the current blank lines settings but won't try to retain any blank lines. +

    4.3.5.2.2. Chunks

    +Lets you define what makes a chunk: a section of associated statements. +

    • +By comments +

      +If enabled, a statement with a comment before is recognized as the start of a new +chunk. +

      Example 4.127. Aligning variable declarations

      +String        text  = "text";
      +int           a     = -1;
      +
      +// create a new entry
      +History.Entry entry = new History.Entry(text);
      +

      Example 4.128. Aligning variable declarations with chunking by comments

      +String text  = "text";
      +int    a     = -1;
      +
      +// create a new entry
      +History.Entry entry = new History.Entry(text);
      +

    • +By Blank lines +

      +If enabled, a statement which has one or more blank lines before is recognized +as the start of a new chunk. +

    4.3.5.3. Comments

    +Lets you control the behaviour of the separator comments. If the +sorting of class elements is enabled, Separator comments +can be inserted before every element section, to make it easier to identify the +different parts of a source file. +

    Example 4.129. Separator comment

    +//~ Methods ------------------------------------------------------------------
    +

    4.3.5.3.1. General
    • +Add separator comments +

      +Enables the insertions of separator comments. +

    • +Add separator comments for inner classes +

      +The insertion of separator comments for inner classes/interfaces may lead to +confusion, therefore you can control it here separately. +

    4.3.5.3.2. Descriptions

    Lets you define the description text for each of the different class elements.

    4.3.5.3.3. Fill character

    Lets you define the fill character for the comments.

    to top

    diff --git a/utils/jalopy/docs/settings.html b/utils/jalopy/docs/settings.html index 62e881d..025a308 100755 --- a/utils/jalopy/docs/settings.html +++ b/utils/jalopy/docs/settings.html @@ -16,3 +16,75 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 4. Settings + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 4. Settings

    +Provides a detailed discussion of all available settings to configure Jalopy. +

    +Jalopy stores all settings as files inside its +Settings directory (or subdirectories thereof). +This directory is located in the user home directory ($HOME/.jalopy). +

    +A graphical user interface is provided to easily configure the settings. +Please refer to the individual Plug-in chapters in Part II, “Plug-ins” +for information on how to display it from within the Plug-in you received. +

    4.1. General

    +Jalopy stores its settings in a binary file +$HOME/.jalopy/PROJECT_DIR/preferences.dat. +However you can import/export your settings in both the binary, and a textual +XML format. A group of settings forms a code convention. +

    4.1.1. Convention

    +Lets you name a group of settings, a code convention. +

    • +Name +

      +The name of the code convention. The name must be no longer than 10 characters. +

    • +Description +

      +Stores a short description for the code convention. +

    4.1.2. Compliance

    +Lets you specify whether Java sources should be treated as JDK 1.3 or +as JDK 1.4 compatible. The latter means assert will be +recognized as a reserved keyword. +

    • +Source compatibility +

      +Lets you choose the JDK version to use for source compatibility. +

    4.1.3. Import/Export

    +Use the Import... and Export... +buttons to import an already-saved code convention, or export your current settings as +a new code convention. You can choose between the binary .jal format +or an XML representation. +

    +Jalopy is able to import settings from both local and distributed locations. +Just specify a valid Internet address (either starting with http:// or +www.) for the latter. Jalopy will then attempt to synchronize +its settings with the given url on every invocation. That way it is easy to +share a single code convention across a group of developers. +

    +Please note that versions prior to 1.0b8 stored the backup directory always as +an absolute file. Therefore after importing a code convention, you should +check whether this directory points to your preferred backup directory. This +advice holds true even for later versions in case you've changed the default +backup directory. +

    +However if the backup directory setting is left untouched, the directory is +stored relative to the Jalopy settings directory. This way you can savely +share your code convention across different systems and platforms. +

    to top

    diff --git a/utils/jalopy/docs/sorting.html b/utils/jalopy/docs/sorting.html index 62e881d..5aac458 100755 --- a/utils/jalopy/docs/sorting.html +++ b/utils/jalopy/docs/sorting.html @@ -16,3 +16,78 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.12. Sorting + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.12. Sorting

    Lets you tweak the sorting settings.

    4.3.12.1. Declarations

    +At first glance, sorting of class declaration elements may seem somewhat +obscure, but good sorting can lead to a reduction of complexity if the +location of each element is predictable. +

    • +Sort class elements +

      +Enables or disables the sorting of class elements. +

      Example 4.149. Sorted Java source file (with Separator comments)

      +class TypePrinter
      +    extends AbstractPrinter
      +{
      +    //~ Instance/static variables ----------------------------------------------
      +
      +    /** Singleton. */
      +    private final static Printer INSTANCE = new TypePrinter();
      +
      +    //~ Constructors -----------------------------------------------------------
      +
      +    /**
      +     * Creates a new TypePrinter object.
      +     */
      +    protected TypePrinter()
      +    {
      +    }
      +
      +    //~ Methods ----------------------------------------------------------------
      +
      +    public static Printer getInstance()
      +    {
      +        return INSTANCE;
      +    }
      +
      +    public void print(AST node, ASTWriter out)
      +               throws IOException
      +    {
      +        AST child = node.getFirstChild();
      +        PrinterFactory.create(child).print(child, out);
      +    }
      +}
      +

    • Ordering

      +You can specify the order in which static variable/initializer, instance variable, +instance initializer, constructor, method, inner class and interface elements +should appear in source files by selecting the element type and moving it up or +down the list. +

      +If you enable any of the check boxes, all elements of the selected type +(within a section) will be sorted too. First by access modifier +(public, protected, package protected, private) and - for two elements with the +same accessibility - lexicographically. For methods those which follow the Java +Bean pattern (getXXX, setXXX, isXXX) will be sorted first. +

    4.3.12.2. Modifiers

    +Enables or disables the sorting of declaration modifiers. +

    • Ordering

      +Lets you specify the order in which the individual modifiers should appear. +Select an entry and use the Up and Down +buttons to move it to the desired location. +

    to top

    diff --git a/utils/jalopy/docs/usage.html b/utils/jalopy/docs/usage.html index 62e881d..75fe0f4 100755 --- a/utils/jalopy/docs/usage.html +++ b/utils/jalopy/docs/usage.html @@ -16,3 +16,23 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + Chapter 3. Usage + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    Chapter 3. Usage

    Usage depends on the distribution you received. Please refer to the +individual Plug-in chapters in Part II, “Plug-ins” for details. +

    to top

    diff --git a/utils/jalopy/docs/whitespace.html b/utils/jalopy/docs/whitespace.html index 62e881d..86081a9 100755 --- a/utils/jalopy/docs/whitespace.html +++ b/utils/jalopy/docs/whitespace.html @@ -16,3 +16,227 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.2. White Space + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.2. White Space

    +Controls the white space handling for the individual components of Java statements. +

    4.3.2.1. Space before

    +Lets you choose the components that should get one leading space inserted before them. +

    • +Method declaration parentheses +

      Example 4.9. Method declaration parentheses

      +public void someMethod()) {
      +  ...
      +}
      +
      +public void someMethod ()) {
      +  ...
      +}
      +

    • +Method call parentheses +

      Example 4.10. Method call parentheses

      +for (Iterator i = pointList.iterator(); i.hasNext();) {
      +    ...
      +}
      +
      +for (Iterator i = pointList.iterator (); i.hasNext ();) {
      +    ...
      +}
      +

    • +Statement parentheses +

      Example 4.11. Statement parentheses

      +while(!isDone)
      +    doSomething();
      +
      +while (!isDone)
      +    doSomething();
      +

    • +Braces +

      Example 4.12. Braces

      +    String[] values = new String[]{
      +        "One", "Two", "Three", "Four", "Five", "Six", "Seven"
      +    };
      +
      +    String[] values = new String[] {
      +        "One", "Two", "Three", "Four", "Five", "Six", "Seven"
      +    };
      +

    • +Brackets +

      Example 4.13. Brackets

      +for (i = 0; i < 100; i++)
      +    sum += value[i];
      +
      +for (i = 0; i < 100; i++)
      +    sum += value [i];
      +

    • +Brackets in types +

      Example 4.14. Brackets in types

      +String[] names = (String[])data.toArray(new String[]);
      +
      +String [] names = (String [])data.toArray(new String []);
      +

    • +Case colon +

      Example 4.15. Case colon

      +switch (character) {
      +    case 'A':
      +        break;
      +}
      +
      +switch (character) {
      +    case 'A' :
      +        break;
      +}
      +

    4.3.2.2. Space after

    +Lets you choose what components should have one trailing space inserted after the component. +

    • +Comma +

      Example 4.16. Comma

      +doSomething (a,b,c,d);
      +
      +doSomething (a, b, c, d);
      +

    • +Semicolon +

      Example 4.17. Semicolon

      +for (i=0;i<10;i++) ...
      +
      +for (i=0; i<10; i++) ...
      +

    • +Type Cast +

      Example 4.18. Type Cast

      +int line = ((JavaAST)node).getStartLine();
      +
      +int line = ((JavaAST) node).getStartLine();
      +

    • +Negation +

      +Prints a space after the unary operators Logical NOT (!) and Bitwise NOT (~). +

      Example 4.19. Logical NOT

      +while(!isDone) {
      +    doSomething();
      +}
      +
      +while(! isDone) {
      +    doSomething();
      +}
      +

    4.3.2.3. Spaces around

    +Controls what components should have both a leading and trailing space inserted. This is sometimes called "padding". + + +

    • +Assignment Operators + + + + +

      Example 4.20. Assignment Operators (=, +=, -=, *=, \=, %=, &=, |=, ^=, <<=, >>=, >>>=)

      +a=(b+c)*d;
      +a = (b+c)*d;
      +

    • +Logical Operators + + + +

      Example 4.21. Logical Operators (&&, ||)

      +if((LA(1)=='/')&&(LA(2)!='*'||(LA(2)=='*'&&LA(3)!='*'))) ...
      +
      +if((LA(1)=='/') && (LA(2)!='*' || (LA(2)=='*' && LA(3)!='*'))) ...
      +

    • +Relational Operators + + + + +

      Example 4.22. Relational Operators (==, !=, <, >, <=, >=)

      +if((LA(1)=='\n'||LA(1)=='\r')) ...
      +
      +if((LA(1) == '\n'||LA(1) == '\r')) ...
      +

    • +Bitwise Operators + + + +

      Example 4.23. Bitwise Operators (&, |, ^)

      +public static final boolean isUnix()
      +{
      +    return (getOperatingSystem()&PLAT_UNIX) != 0;
      +}
      +
      +public static final boolean isUnix()
      +{
      +    return (getOperatingSystem() & PLAT_UNIX) != 0;
      +}
      +

    • +Mathematical Operators + + + + +

      Example 4.24. Mathematical Operators (+, -, /, *, %)

      +a=(b+c)*d;
      +
      +a=(b + c) * d;
      +

    • +Shift Operators + + + +

      Example 4.25. Shift Operators (<<, >>, >>>)

      +if(((1L<<i)&l)!=0)
      +    System.out.print("1");
      +
      +if(((1L << i)&l)!=0)
      +    System.out.print("1");
      +

    • +Braces + + + + +

      Example 4.26. Braces

      +Object[] items = {"2", "3", "4"};
      +
      +Object[] items = { "2", "3", "4" };
      +

    • +Brackets + + + +

      Example 4.27. Brackets

      +for (i = 0; i < 100; i++)
      +    sum += value[i];
      +
      +for(i = 0; i < 100; i++)
      +    sum += value[ i ];
      +

    • +Parentheses + + + +

      Example 4.28. Parentheses

      +GridBagLayout layout = new GridBagLayout();
      +setLayout(layout);
      +
      +GridBagLayout layout = new GridBagLayout();
      +setLayout( layout );
      +

    • +Type Cast Parentheses +

      Example 4.29. Type Cast Parentheses

      +int line = ((JavaAST)node).getStartLine();
      +
      +int line = (( JavaAST )node).getStartLine();
      +

    to top

    diff --git a/utils/jalopy/docs/wrapping.html b/utils/jalopy/docs/wrapping.html index 62e881d..824116f 100755 --- a/utils/jalopy/docs/wrapping.html +++ b/utils/jalopy/docs/wrapping.html @@ -16,3 +16,588 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + + + + 4.3.4. Wrapping + + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
    Features | + History | + Manual | + FAQ | + Javadoc
    + This page generated: June 8 2004

    4.3.4. Wrapping

    +Controls when and how lines gets wrapped. +

    4.3.4.1. General

    +Lets you control the general line wrapping options. +

    4.3.4.1.1. General

    +Lets you control the general line wrapping options. +

    • +Wrap lines +

      +Enables or disables the automatic line wrapping. +

    • +Line length +

      +Lets you specify the maximum line length. Jalopy tries (more or less) to limit +each line within the given length. +

    • +Deep indent +

      +Specifies the length after which a gap will be identified as "deep indented". +Jalopy tries to avoid these kind of gaps and will force a line break or apply +another indentation scheme, if this size is exceeded. +

      Example 4.65. Deep indent size (60) not exceeded

      +                                                            |                  |
      +    protected static synchronized File getANewDestinationFile(File dest,       |
      +                                                            | String packageName,
      +                                                            | String filename) |
      +|----------------- the gap ---------------------------|throws IOException      |
      +    {                                                       |                  |
      +    }                                                       |                  |
      +                                                            |                  |
      +                                                            60                 79
      +

      Example 4.66. Deep indent size (50) exeeded

      +                                                  |                            |
      +    protected static synchronized File getANewDestinationFile(File dest,       |
      +                                                  |           String packageName,
      +                                                  |           String filename) |
      +|----------------- the gap ---------------------------|throws IOException      |
      +    {                                             |                            |
      +    }                                             |                            |
      +                                                  |                            |
      +                                                  50                           79
      +
    4.3.4.1.2. Policy

    +Lets you fine-control the wrapping behaviour. +

    • +Wrap after left parenthesis +

      +Lets you control the wrapping behaviour for statement and expression lists. +

      +If left disabled, the first line break will be preferably inserted +behind the first parameter or expression and only occurs after the left +parenthesis if the maximum line length would be exceeded.

      Example 4.67. Wrap after left parenthesis (disabled)

      +                                                                               |
      +appServerReferencesVector.add(new AppServerReference(
      +        "RemoteApplicationManager",                                            |
      +        poa.create_reference_with_id(         |
      +            "RemoteApplicationManager".getBytes(),                             |
      +            RemoteApplicationManagerHelper.id())));                            |
      +                                                                               |
      +

      +Otherwise the line break will always occur behind the left parenthesis. +

      Example 4.68. Wrap after left parenthesis (enabled)

      +appServerReferencesVector.add(
      +    new AppServerReference(
      +        "RemoteApplicationManager",
      +        poa.create_reference_with_id(
      +            "RemoteApplicationManager".getBytes(),
      +            RemoteApplicationManagerHelper.id())));
      +

      +This switch affects the output style of method/constructor declarations and +calls, creator statements and if-else, for, +while and do-while blocks. +

      +As per default, the wrapped lines will be indended using +Standard indentation, but you +may want to apply another indentation scheme. See +Section 4.3.3.1.1, “Policy” for more information. +

    • +Wrap before right parenthesis +

      +Forces a line break before the right parenthesis of parameter or expression lists. +The parenthesis will be intended according to the current indentation level. +Only takes action if at least one parameter/expression was indeed wrapped. +

      +This switch affects the output style of method/constructor declarations and +calls, creator statements and if-else, for, +while and do-while blocks. +

      Example 4.69. Right parenthesis (disabled)

      +public void severalParameters(String one,
      +                              int two,
      +                              String three,
      +                              StringObject four,
      +                              AnotherObject five) {
      +}
      +

      Example 4.70. Right parenthesis (enabled)

      +public void severalParameters(String one,
      +                              int two,
      +                              String three,
      +                              StringObject four,
      +                              AnotherObject five
      +) {
      +}
      +

      +Both switches combined, looks like the following example: +

      Example 4.71. Left and right parenthesis

      +appServerReferencesVector.add(
      +    new AppServerReference(
      +        "RemoteApplicationManager",
      +        poa.create_reference_with_id(
      +            "RemoteApplicationManager".getBytes(),
      +            RemoteApplicationManagerHelper.id()
      +        )
      +    )
      +);
      +

      +For blocks the output may go like this: +

      Example 4.72. Left and right parenthesis (wrapped)

      +if (
      +    "pick".equals(m.getName()) && m.isStatic() && m.isPublic()
      +) {
      +    pickFound = true;
      +}
      +else if (
      +    "pick".equals(m.getName()) && m.isStatic() && m.isPublic()
      +) {
      +    pickFound = true;
      +}
      +

    • +Wrap grouping parentheses +

      +Lets you control the wrapping behaviour for grouping parentheses. If enabled, +linebreaks are inserted after left and before right parentheses of grouped +expressions to let the expression(s) stand out. +

      Example 4.73. Grouping parentheses (standard indented)

      +if (
      +    !((bankverbindung instanceof ObjectValue)
      +    || (bankverbindung instanceof PrimitiveValue))
      +) {
      +    throw new RuntimeException();
      +}
      +

      Example 4.74. Wrapped grouping parentheses (standard indented)

      +if (
      +    !(
      +        (bankverbindung instanceof ObjectValue)
      +        || (bankverbindung instanceof TkPrimitiveValue)
      +    )
      +) {
      +    throw new RuntimeException();
      +}
      +

    • +Wrap after assignments +

      +Lets you control the way wrapping takes action for assignments. If left disabled, +line wrapping preferably occurs as part of the expression printing. Otherwise +wrapping will be performed right after the assignment. +

      Example 4.75. Don't wrap after assignment

      +this.interessentenNr = new InteressentenNr(
      +        Fachschluesselerzeugung.createService()
      +        .getNeuerFachschluessel(
      +            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT
      +        )
      +    );
      +

      Example 4.76. Wrap after assignment

      +this.interessentenNr =
      +    new InteressentenNr(
      +        Fachschluesselerzeugung.createService()
      +        .getNeuerFachschluessel(
      +            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT
      +        )
      +    );
      +

    +Line wrapping will often occur with statements that consist of several (possibly long) +expressions. Here you specify whether line wrapping should occur +before or after the expression operator. +

    • +Wrap before operators +

      +If enabled, lines will be wrapped before the operator. The operator will be +printed with the continuation line. +

      Example 4.77. Wrap before operators

      +if ((condition1 && condition2)
      +    || (condition3 && condition4)
      +    || !(condition5 && condition6))
      +{
      +    doSomethingAboutIt();
      +}
      +

    • +Wrap after operators +

      +If enabled, lines will be wrapped after the operator. +

      Example 4.78. Wrap after operators

      +if ((condition1 && condition2) ||
      +    (condition3 && condition4) ||
      +    !(condition5 && condition6))
      +{
      +    doSomethingAboutIt();
      +}
      +

      +If you happen to use Sun Brace styling, you might want to enable +continuation indentation +to let the statement body stand out. +

    4.3.4.2. Always

    +Lets you choose the statements/expressions that are to be wrapped always. +

    4.3.4.2.1. Wrap always

    +For certain cases, the need may arise to force line wrapping to achieve a +consistent, uniform look. If you enable any of the following switches, line wrapping +will occur for the specified cases no matter whether you have enabled general +line wrapping or not. +

    • +Before extends keyword +

      +Forces a line break before the extends keyword of a class/interface declaration. +

      Example 4.79. Class/Interface extends keyword

      +public interface Channel extends Puttable, Takable
      +{
      +    ...
      +}
      +

      Example 4.80. Class/Interface extends keyword (wrapped)

      +public interface Channel
      +    extends Puttable, Takable
      +{
      +    ...
      +}
      +

      +You can control the space printed before the keyword with the +Extends Indent setting. +If you leave the switch disabled, the clause will be printed with +standard indentation. +

    • +After extends types +

      +Forces a line wrap after each type name of the extended classes. +

      Example 4.81. Class/Interface extends types

      +public interface Channel extends Puttable, Takable
      +{
      +    ...
      +}
      +

      Example 4.82. Class/Interface extends types (wrapped)

      +public interface Channel extends Puttable,
      +                                 Takable
      +{
      +    ...
      +}
      +

    • +Before implements keyword +

      +Forces a line break before the implements keyword of a class declaration. +

      Example 4.83. implements keyword

      +public class SynchronizedBoolean implements Comparable, Cloneable
      +{
      +    ...
      +}
      +

      Example 4.84. implements keyword (wrapped)

      +public class SynchronizedBoolean
      +    implements Comparable, Cloneable
      +{
      +    ...
      +}
      +

      +You can control the space printed before the keyword with the +Implements Indent setting. +If you leave the switch disabled, the clause will be printed with +standard indentation. +

    • +After implements types +

      +Forces a line wrap after each type name of the implemented classes. +

      Example 4.85. Class implements types

      +public class SynchronizedBoolean implements Comparable, Cloneable
      +{
      +    ...
      +}
      +

      Example 4.86. Class implements types (wrapped)

      +public class SynchronizedBoolean implements Comparable,
      +                                            Cloneable
      +{
      +    ...
      +}
      +

    • +Before throws keyword +

      +Forces a line break before the throws keyword of a method/constructor declaration. +

      Example 4.87. throws keyword

      +private File getDestinationFile(File dest, String packageName,
      +                                String filename) throws IOException
      +{
      +    ...
      +}
      +

      Example 4.88. throws keyword (wrapped)

      +private File getDestinationFile(File dest, String packageName,
      +                                String filename)
      +                         throws IOException
      +{
      +    ...
      +}
      +

      +You can control the space printed before the keyword with the +Throws Indent setting. If you +leave the switch disabled, Jalopy tries to align the throws clause with the +method/constructor parameters as with the above example. If no alignment is +possible, the clause will be printed with +standard indentation. +

    • +After throws types +

      +Forces a line wrap after each type name of the throws clause of a method/constructor declaration. +

      Example 4.89. throws types

      +private File getDestinationFile(File dest, String packageName,
      +                                String filename)
      +                         throws IOException, FooException
      +{
      +    ...
      +}
      +

      Example 4.90. throws types (wrapped)

      +private File getDestinationFile(File dest, String packageName,
      +                                String filename)
      +                         throws IOException,
      +                                FooException
      +{
      +    ...
      +}
      +

      Example 4.91. throws types (standard indented)

      +private static final File getDestinationFile(File dest, String packageName,
      +                                             String filename)
      +    throws IOException,
      +          FooException
      +{
      +    ...
      +}
      +

    • +Method Def parameters +

      +Forces a line wrap after each parameter of a method or constructor declaration. +

      Example 4.92. Method declaration parameters

      +public static File create(File file, File directory, int backupLevel)
      +                   throws IOException
      +{
      +    ...
      +}
      +

      Example 4.93. Method declaration parameters (wrapped)

      +public static File create(File file,
      +                          File directory,
      +                          int backupLevel)
      +                   throws IOException
      +{
      +    ...
      +}
      +
    • +Method Call chains +

      +Forces a line wrap after each chained method call. +

      Example 4.94. Chained Method Call

      +message.format(ERROR_SOURCE_ADDRESS).param (m_session.getAimName()).send();
      +

      Example 4.95. Chained Method Call (wrapped)

      +message.format(ERROR_SOURCE_ADDRESS)
      +       .param (m_session.getAimName())
      +       .send();
      +

    • +Method Call parameters +

      +Forces a line wrap after each parameter of a method call. +

      Example 4.96. Method call

      +doSomething();
      +_userDatabase.addUser("Name", encryptPassword("password", _secretKey),
      +                      "123 fake address");
      +doSomethingElse();
      +

      Example 4.97. Method call (wrapped)

      +doSomething();
      +_userDatabase.addUser("Name",
      +                      encryptPassword("password",
      +                                      _secretKey),
      +                      "123 fake address");
      +doSomethingElse();
      +

    • +Method Call parameters if nested +

      +Forces a line wrap after each parameter of a method call if at least one +parameter is a method call itself. This option can prove especially useful if +one prefers to nest method calls as parameters rather than adding local +variables just to hold those parameters. +

      Example 4.98. Method call if nested (wrapped)

      +doSomething();
      +_userDatabase.addUser("Name",
      +                      encryptPassword("password", _secretKey),
      +                      "123 fake address");
      +doSomethingElse();
      +

    • +Ternary expression question mark (?) +

      +Forces a line wrap after the first operand. +

      Example 4.99. Ternary expression question mark (deep indented)

      +String comma = spaceAfterComma
      +               ? COMMA_SPACE : COMMA;
      +

      +Indentation for consecutive lines depends on the used indenatation policy. +You may further want to use continuation indentation. +

    • +Ternary expression colon (:) +

      +Forces a line wrap after the second operand. +

      Example 4.100. Ternary expression colon

      +String comma = spaceAfterComma ? COMMA_SPACE
      +                               : COMMA;
      +

      +If both switches are disabled, ternary expressions are printed in one line (if everything fits in one line, that is). +

      Example 4.101. Ternary expressions

      +String comma = spaceAfterComma ? COMMA_SPACE : COMMA;
      +

      +If both switches are enabled, you can force a style like the following: +

      Example 4.102. Ternary expressions (continued)

      +String comma = spaceAfterComma
      +    ? COMMA_SPACE
      +    : COMMA;
      +

    • +Labels +

      +Forces a line wrap after labels. +

      Example 4.103. Label

      +// advance to the first CLASS_DEF or INTERFACE_DEF
      +LOOP:   for (AST child = tree.getFirstChild();
      +             child != null;
      +             child = child.getNextSibling())
      +        {
      +            switch (child.getType())
      +            {
      +                case JavaTokenTypes.CLASS_DEF :
      +                case JavaTokenTypes.INTERFACE_DEF :
      +                    next = child;
      +                    break LOOP;
      +
      +                default :
      +                    break;
      +            }
      +        }
      +

      Example 4.104. Label (wrapped)

      +// advance to the first CLASS_DEF or INTERFACE_DEF
      +LOOP:
      +        for (AST child = tree.getFirstChild();
      +             child != null;
      +             child = child.getNextSibling())
      +        {
      +            switch (child.getType())
      +            {
      +                case JavaTokenTypes.CLASS_DEF :
      +                case JavaTokenTypes.INTERFACE_DEF :
      +                    next = child;
      +                    break LOOP;
      +
      +                default :
      +                    break;
      +            }
      +        }
      +

    4.3.4.2.2. Wrap always when exceed

    +Lets you force wrapping for all parameter or expressions if +the parameter or expression list would otherwise exceed the maximal line length. +If you enable any of the following switches, line wrapping +may occur for the specified cases no matter whether you have enabled general +line wrapping or not. +

    • +After extends types +

      +Forces a line wrap after each type name of the extends clause of a +class/interface declaration if the whole clause does not fit in one line. +

      Example 4.105. Extends types wrapped as needed (standard indented)

      +public interface VeryImportantInterface                        |
      +    extends LeastImportantInterface, LessImportantInterface,   |
      +        ImportantInterface                                     |
      +}                                                              |
      +    ...                                                        |
      +}                                                              |
      +

      Example 4.106. Extends types wrapping forced (standard indented)

      +public interface VeryImportantInterface                        |
      +    extends LeastImportantInterface,                           |
      +        LessImportantInterface,                                |
      +        ImportantInterface                                     |
      +}                                                              |
      +    ...                                                        |
      +}                                                              |
      +
    • +After implements types +

      +Forces a line wrap after each type name of the implements clause of a +class/interface declaration if the whole clause does not fit in one line. +

      Example 4.107. Implements types wrapped as needed (standard indented)

      +public class ImportantClass                                    |
      +    implements ImportantInterface, Serializable, Comparable,   |
      +        Cloneable                                              |
      +}                                                              |
      +    ...                                                        |
      +}                                                              |
      +

      Example 4.108. Implements types wrapping forced (standard indented)

      +public class ImportantClass                                    |
      +    implements ImportantInterface,                             |
      +        Serializable,                                          |
      +        Comparable,                                            |
      +        Cloneable                                              |
      +}                                                              |
      +    ...                                                        |
      +}                                                              |
      +
    • +After throws types +

      +Forces a line wrap after each type name of the throws clause of a +method/constructor declaration if the whole clause does not fit in one line. +

      Example 4.109. Throws types wrapped as needed (deep indented)

      +private File getDestinationFile(File dest, String packageName, |
      +                                String filename)               |
      +                         throws IOException, FooException,     |
      +                                FooBarException                |
      +{                                                              |
      +    ...                                                        |
      +}                                                              |
      +

      Example 4.110. Throws types wrapping forced (deep indented)

      +private File getDestinationFile(File dest, String packageName, |
      +                                String filename)               |
      +                         throws IOException,                   |
      +                                FooException,                  |
      +                                FooBarException                |
      +{                                                              |
      +    ...                                                        |
      +}                                                              |
      +
    • +After parameters/expressions +

      +If enabled, this switch will cause all parameters/expressions to be +wrapped, if and only if the first parameter/expression of the list has been +wrapped. +

      Example 4.111. Expression list (all wrapped)

      +if (
      +    "pick".equals(m.getName()) &&
      +    m.isStatic() &&
      +    m.isPublic()
      +) {
      +    pickFound = true;
      +}
      +else if (
      +    "pick".equals(m.getName()) &&
      +    m.isStatic() &&
      +    m.isPublic()
      +) {
      +    pickFound = true;
      +}
      +

    4.3.4.3. Misc

    Lets you control miscellaneous wrapping settings.

    4.3.4.3.1. Arrays

    Contains options to control the wrapping for arrays.

    • Wrap as needed

      Enabling this options means array elements will be wrapped so that they +will be limited within the current line length setting.

      Example 4.112. Wrap as needed

      +String[] constraints = {                                               |
      +    "patternPanel.top=form.top", "patternPanel.hcenter=form.hcenter",  |
      +    "okButton.top=patternPanel.bottom+20",                             |
      +    "okButton.right=form.hcenter-10", "cancelButton.vcenter=10",       |
      +    "cancelButton.left=10"                                             |
      +};                                                                     |
      +

    • Wrap after element

      Forces a newline after every n-th element.

      Example 4.113. Wrap after element 1

      +String[] constraints = {                                               |
      +    "patternPanel.top=form.top",                                       |
      +    "patternPanel.hcenter=form.hcenter",                               |
      +    "okButton.top=patternPanel.bottom+20",                             |
      +    "okButton.right=form.hcenter-10",                                  |
      +    "cancelButton.vcenter=10",                                         |
      +    "cancelButton.left=10"                                             |
      +};                                                                     |
      +

      Example 4.114. Wrap after element 2

      +String[] constraints = {                                               |
      +    "patternPanel.top=form.top", "patternPanel.hcenter=form.hcenter",
      +    "okButton.top=patternPanel.bottom+20", "okButton.right=form.hcenter-10",
      +    "cancelButton.vcenter=10", "cancelButton.left=10"                  |
      +};                                                                     |
      +

      +If both options are left disabled, the array elements will be printed in one +line, right after the left curly brace. +

    to top

    diff --git a/utils/jalopy/readme.html b/utils/jalopy/readme.html index 49c78cd..1262ed1 100755 --- a/utils/jalopy/readme.html +++ b/utils/jalopy/readme.html @@ -16,3 +16,55 @@ * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . --> + +
    Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact

    README Ant Task

    +This is the README for the Ant Task distribution of the Jalopy Java +Source Code Formatter. This Plug-in provides the integration with the +wonderful Jakarta build tool. +

    1. Distribution libraries

    +This distribution contains the following libraries: +

    • + AElfred XML Parser (aelfred-1.2.jar) +
    • + A modified and re-packaged ANTLR Parser Generator runtime 2.7.2a2 (bundled with the Jalopy runtime) +
    • + Jalopy Java Source Code Formatter runtime (jalopy-1.0b11.jar) +
    • + Jalopy Ant Task (jalopy-ant-0.6.2.jar) +
    • JAXP Java API for XML Processing (jaxp-1.2.jar) +
    • JDOM XML API (jdom-1.0b8.jar) +
    • log4j logging toolkit (log4j-1.2.6.jar) +
    • Oro Regular expressions (oro-2.0.6.jar) +
    • SAX Simple API for XML (sax-2.0.1.jar) +

    2. Latest version

    +Details of the latest version can be found on the Jalopy project +web site at SourceForge, see +http://jalopy.sf.net. +

    3. Installation

    +For installation instructions, see +/docs/plugin-ant.html. +

    4. Custom build

    +For build instructions, see +/docs/build.html. +

    5. Change history

    +To learn about implementation changes, fixed bugs and new features of this +version, see /docs/history.html. +

    6. Licensing

    +This Plug-in is licensed under a +BSD License. For +additional license terms of the used 3rd-party libraries, please refer to +Appendix A. +

    7. Contact

    +For ways to contact the author or submit bug, feature or support requests, see +/docs/contact.html. +

    8. Contributors

    +For a list of project contributors, see +/docs/contributors.html. +

    to top

    -- 1.7.10.2