Merge branch 'doc/JAL-3746_Release_2_11_2' into develop
authorJim Procter <j.procter@dundee.ac.uk>
Tue, 21 Sep 2021 15:24:15 +0000 (16:24 +0100)
committerJim Procter <j.procter@dundee.ac.uk>
Tue, 21 Sep 2021 15:24:15 +0000 (16:24 +0100)
24 files changed:
help/help/help.jhm
help/help/helpTOC.xml
help/help/html/features/clarguments.html
help/help/html/features/commandline.html
help/help/html/features/groovy.html
help/help/html/features/jvlfiles.html
help/help/html/features/search.html
help/help/html/features/search.png
help/help/html/features/seqfetch.html
help/help/html/groovy/featuresCounter.html
help/help/html/index.html
help/help/html/keys.html
help/help/html/logging.html [new file with mode: 0644]
help/help/html/memory.html
help/help/html/releases.html
help/help/html/webServices/newsreader.html
help/help/html/whatsNew.html
src/jalview/bin/Cache.java
src/jalview/bin/Jalview.java
src/jalview/gui/AlignFrame.java
src/jalview/gui/BlogReader.java
src/jalview/gui/Preferences.java
src/jalview/gui/SeqPanel.java
src/jalview/io/JSONFile.java

index 99d010d..7dbb76d 100755 (executable)
    
    <mapID target="importvcf" url="html/features/importvcf.html" />
    <mapID target="importvcf.attribs" url="html/features/importvcf.html#attribs" />
+   <mapID target="logging" url="html/logging.html" />
 </map>
index a0c7fe6..a72f5ac 100755 (executable)
@@ -27,7 +27,7 @@
         <tocitem text="Virtual Features in CDS/Protein Views" target="splitframe.virtualfeats"/>
                                <tocitem text="VCF Variant Attributes" target="importvcf.attribs"/>
                                <tocitem text="Feature Filters and Attribute Colourschemes" target="features.featureschemes" />
-                               
+        <tocitem text="The Java Console, Logging and Reporting Bugs" target="logging" />
                </tocitem>
                
                <tocitem text="Editing Alignments" target="edit" />
                        </tocitem>
                </tocitem>
                <tocitem text="Preferences" target="preferences" />
+    <tocitem text="The Java Console, Logging and Reporting Bugs" target="logging" />
                <tocitem text="Scripting with Groovy" target="groovy">
                        <tocitem text="Groovy Features Counter example" target="groovy.featurescounter"/>
                </tocitem>
index 0d800cf..1eecfb9 100644 (file)
   parameters, then include it at the beginning of the command line to
   ensure they are processed before any remaining arguments.
   <br>
+  Typical command line execution follows the following pattern:
+  <pre>
+  jalview -open &lt;Alignment File/URL&gt; [additional import arguments] [export arguments]
+  </pre>
+  
   <table width="100%" border="1" cellspacing="0" cellpadding="0">
     <tr>
       <td width="27%"><div align="center">-nodisplay</div></td>
           User Interface. (automatically disables questionnaire, version
           and usage stats checks)</div></td>
     </tr>
-
+    <tr>
+      <td><div align="center">-open FILE/URL</div></td>
+      <td><div align="left">Specify the alignment file to
+          open or process by providing additional arguments.</div></td>
+    </tr>
     <tr>
       <td><div align="center">-props FILE/URL</div></td>
       <td><div align="left">Use the given Jalview properties
index e00d390..0ef78f9 100644 (file)
@@ -38,7 +38,7 @@
 
   <ul>
     <li>Standard installation on Linux/Unix:<pre>
-       /PATH_TO_JALVIEW/Jalview -open http://www.jalview.org/examples/jpred_msa.fasta -annotations http://www.jalview.org/examples/jpred_msa.seq.concise -colour Clustal</pre>
+       /PATH_TO_JALVIEW/Jalview -open https://www.jalview.org/examples/jpred_msa.fasta -annotations https://www.jalview.org/examples/jpred_msa.seq.concise -colour Clustal</pre>
     </li>
     <li>Standard installation on Windows:<pre>
       \PATH_TO_JALVIEW\Jalview.exe -open %HOMEPATH%\myalignment.fa</pre>
@@ -65,10 +65,31 @@ open /Applications/Jalview.app --args -open ~/myalignment.fa</pre><em>(put
   </p>
   <p>
     <strong>Passing JVM Arguments to Jalview</strong><br /> If you need
-    to modify parameters for Jalview's Java Virtual Machine, then take a
-    look at the instructions for how to <a href="../memory.html#jvm">setting
-      the JVM's maximum memory</a>.
+    to modify parameters for Jalview's Java Virtual Machine, or
+    configure system properties, then take a look at the instructions
+    for how to <a href="../memory.html#jvm">setting the JVM's
+      maximum memory</a>.<br /> 
+  <p>
+    <strong>Changing Jalview's 'Look and Feel'</strong> <br />If you
+    are experiencing issues with the font size or layout of Jalview's
+    GUI, you can try changing Jalview's 'Look and feel' by
+    specifying a custom system property 'laf' on startup (see <a
+      href="../memory.html#jvm">setting the JVM's memory</a> for
+    instructions on how to do this for your platform). <br />For the
+    Jalview standalone executable jar, simply provide one of the
+    property settings before the -jar argument
   </p>
+  <ul>
+    <li>-Dlaf=system (default look and feel for the OS)</li>
+    <li>-Dlaf=crossplatform (Java's Metal Look and Feel)</li>
+    <li>-Dlaf=nimbus (Java's alternative Nimbus Look and Feel)</li>
+    <li>-Dlaf=mac (only has an effect on OSX)</li>
+    <li>-Dlaf=gtk (only has an effect on Linux)</li>
+  </ul>
+  The currently configured look and feel is logged to Jalview's console.
+  Once the look and feel has been changed, it will be stored in
+  Jalview's .jalview_properties file for future Jalview sessions.
+
   <p>&nbsp;</p>
   <p>&nbsp;</p>
 </body>
index ead4436..cc91154 100644 (file)
@@ -39,7 +39,7 @@
     installation of Groovy. Just select <strong>Tools&#8594;Groovy
       Console...</strong> from the Jalview Desktop's drop-down menu. After a
     short pause, you should then see the <a
-      href="http://groovy-lang.org/groovyconsole.html">Groovy
+      href="https://groovy-lang.org/groovyconsole.html">Groovy
       Console</a> appear. This allows you to interactively execute Groovy
     scripts whilst Jalview is running. We've also provided a <strong>Calculations&#8594;Execute
       Groovy Script</strong> button so you can execute the currently loaded
@@ -101,7 +101,7 @@ print currentAlFrame.getTitle();</pre>
     InstallAnywhere version of Jalview, you can find additional groovy
     scripts in the examples/groovy subfolder of the installation
     directory. The examples are also available at <a
-      href="http://www.jalview.org/examples/groovy">http://www.jalview.org/examples/groovy</a>.
+      href="https://www.jalview.org/examples/groovy">https://www.jalview.org/examples/groovy</a>.
   </p>
   <p>
     <em>Using Groovy to add new Alignment Calculations</em><br />We've
@@ -115,8 +115,8 @@ print currentAlFrame.getTitle();</pre>
     <em>Creating custom colourschemes</em><br/>
     You can create your own alignment colourschemes with a groovy script. We've provided two examples:<br/>
     <ul>
-    <li><a href="http://www.jalview.org/examples/groovy/colourConserved.groovy">colourConserved.groovy</a> creates an 'Conserved' colourscheme - similar to the classic <a href="http://www.nrbsc.org/old/gfx/genedoc/">GeneDOC</a> shading model.</li>
-    <li><a href="http://www.jalview.org/examples/groovy/colourUnconserved.groovy">colourUnconserved.groovy</a> creates an 'Unconserved' colourscheme, where any unconserved residues are coloured pink.</li>
+    <li><a href="https://www.jalview.org/examples/groovy/colourConserved.groovy">colourConserved.groovy</a> creates an 'Conserved' colourscheme - similar to the classic <a href="http://www.nrbsc.org/old/gfx/genedoc/">GeneDOC</a> shading model.</li>
+    <li><a href="https://www.jalview.org/examples/groovy/colourUnconserved.groovy">colourUnconserved.groovy</a> creates an 'Unconserved' colourscheme, where any unconserved residues are coloured pink.</li>
     
     </ul>
   </p>
index 27742b3..e23af30 100644 (file)
   <pre>
 # Jalview Launch File
 # Please install the Jalview Desktop from 
-# http://www.jalview.org/getdown/release
+# https://www.jalview.org/getdown/release
 # and then try to open this file again
 jalview.apparg=-open
-jalview.apparg=http://www.jalview.org/examples/jpred_msa.fasta
+jalview.apparg=https://www.jalview.org/examples/jpred_msa.fasta
 jalview.apparg=-annotations
-jalview.apparg=http://www.jalview.org/examples/jpred_msa.seq.concise
+jalview.apparg=https://www.jalview.org/examples/jpred_msa.seq.concise
 jalview.apparg=-colour
 jalview.apparg=Clustal
 </pre>
@@ -62,7 +62,7 @@ jalview.apparg=Clustal
 # Please install the Jalview Desktop from 
 # http://www.jalview.org/getdown/release
 # and then try to open this file again
-appbase=http://www.jalview.org/getdown/archive/2_10_5/
+appbase=https://www.jalview.org/getdown/archive/2_10_5/
 </pre>
   For security, the Jalview application will only allow
   <em>appbase</em> URLs from www.jalview.org.
index eec68ee..837d7b3 100755 (executable)
@@ -36,7 +36,7 @@ td {
   </p>
   <p>The search box is displayed by pressing Control and F or
     selecting &quot;Find...&quot; from the &quot;Search&quot; menu.</p>
-  <img src="search.png" width="398" height="124">
+  <img src="search.png" width="400" height="152">
   <p>&quot;Find next&quot; will find the next occurrence of the
     specified and adjust the alignment window view to show it, and
     &quot;Find all&quot; highlights all matches for a pattern. The
@@ -48,18 +48,19 @@ td {
       of posix and perl style regex - see below for a summary)</li>
     <li>Gaps are ignored when matching the query to the sequences
       in the alignment.</li>
+    <li>Hidden columns can optionally be ignored (<em>since Jalview 2.11</em>)</li>
     <li>The search is applied to both sequences and their IDs, and
       optionally also to the description string (<em>since Jalview
         2.10</em>)
     </li>
     <li>If a region is selected, then search will <strong>only</strong>
-      be performed on that region.
+      be performed on that region.<br />
+    <em>Tip: to quickly clear the current selection, click the
+        alignment view you wish to search, then press 'Escape'.</em>
     </li>
-    <li>To quickly clear the current selection, press the
-      &quot;Escape&quot; key.</li>
     <li>Tick the &quot;Match Case&quot; box to perform a case
       sensitive search.</li>
-    <li>To access a <a ref="#queryhistory">previously used
+    <li>To access a <a href="#queryhistory">previously used
         query</a> press the down arrow or click on the button on the right
       of the text field.
   </ul>
@@ -155,12 +156,13 @@ td {
     stored along with your Jalview user preferences. To open the search
     history, click on the button to the right of the query field, or
     press the down arrow key.</p>
-  <img src="searchhist.png" width="404" height="185" align="left" />
-  <p>The search history keeps up to 99 queries by default. To clear
+  <p><img src="searchhist.png" width="404" height="185" />
+  </p><p>The search history keeps up to 99 queries by default. To clear
     the history, or modify the size of the history, right-click the text
     box.</p>
-  <img src="searchclearhist.png" width="402" height="127" align="left" />
-  <p>
+  <p><img src="searchclearhist.png" width="402" height="127"/>
+  </p>
+<p width="100%">
     <strong>Other dialogs that provide a query history</strong>
   </p>
   <p>
index 89adb1a..47c18f4 100644 (file)
Binary files a/help/help/html/features/search.png and b/help/help/html/features/search.png differ
index e726c49..4e9a75f 100755 (executable)
       &quot;OK&quot; to initiate the retrieval.</li>
   </ol>
 
-  <p>If you use the WSDBFetch sequence fetcher services (EMBL,
-    UniProt, PFAM, and RFAM) in work for publication, please cite:</p>
-  <p>
-    Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate
-    J., Velankar S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez
-    R. <br> SOAP-based services provided by the European
-    Bioinformatics Institute.<br> Nucleic Acids Res. 33(1):W25-W28
-    (2005) <br> <br>
-  </p>
+  <p>If you use the Sequence Fetcher, please remember to cite the
+    corresponding services (linked to below):</p>
+  <ul>
+    <li>Ensembl - <a
+      href="https://github.com/Ensembl/ensembl-rest/wiki#citing">The
+        Ensembl REST API</a></li>
+    <li>EMBL/EMBLCDS - Provided by the <a
+      href="https://www.ebi.ac.uk/ena/browser/api/#/ENA_Browser_Data_API/getFlatFileUsingGET">European
+        Nucleotide Archive's ENA Data API</a><br />
+    <em>Note: Versions of Jalview prior to 2.11.1.1 employed the
+        XML endpoint of the ENA browser, which was retired in August
+        2020.</em></li>
+    <li>Uniprot - Free Text Search and Retrieval via the <a
+      href="https://www.uniprot.org/help/api">Uniprot REST API</a></li>
+    <li>PDB - Free Text Search via the <a
+      href="https://www.ebi.ac.uk/pdbe/api/doc/search.html">PDBe
+        REST API</a> and retrieval via <a
+      href="https://www.ebi.ac.uk/Tools/dbfetch/">WSDbFetch</a><br />
+      Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate
+      J., Velankar S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez
+      R. <br> SOAP-based services provided by the European
+      Bioinformatics Institute.<br> Nucleic Acids Res.
+      33(1):W25-W28 (2005) <br> <br>
+    </li>
+  </ul>
 </body>
 </html>
index 3b6705b..bd7144e 100644 (file)
@@ -43,7 +43,7 @@
   </ol>
   <strong>Please note: The 2.10.2 feature counting interface is not compatible with earlier versions.</strong><br/><br/>
   <em><a
-    href="http://www.jalview.org/examples/groovy/featuresCounter.groovy">http://www.jalview.org/examples/groovy/featuresCounter.groovy</a>
+    href="https://www.jalview.org/examples/groovy/featuresCounter.groovy">https://www.jalview.org/examples/groovy/featuresCounter.groovy</a>
     - rendered with <a href="http://hilite.me">hilite.me</a></em>
   <!-- HTML generated using hilite.me --><div style="background: #f8f8f8; overflow:auto;width:auto;border:solid gray;border-width:.1em .1em .1em .8em;padding:.2em .6em;"><pre style="margin: 0; line-height: 125%"><span style="color: #408080; font-style: italic">/*</span>
 <span style="color: #408080; font-style: italic"> * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)</span>
index 442c508..a6bb1b6 100755 (executable)
@@ -45,7 +45,7 @@
   <p>
     For more information, you might also want to take a look at the
     documentation section of the Jalview website (<a
-      href="http://www.jalview.org/about/documentation">http://www.jalview.org/about/documentation</a>).
+      href="https://www.jalview.org/about/documentation">https://www.jalview.org/about/documentation</a>).
   </p>
   <p>
     If you are using the Jalview Desktop application and are looking for
     google the online version of these pages. If you don't find what you
     are looking for, or want to report a bug or make a feature request,
     then get in contact over at <a
-      href="http://www.jalview.org/community">http://www.jalview.org/community</a>
+      href="https://www.jalview.org/community">https://www.jalview.org/community</a>
+  </p>
+  <p>
+    <strong>Logging, troubleshooting and reporting bugs</strong><br />If
+    something seems to be wrong with your Jalview installation, or you
+    think you've found a problem, take a look at <a href="logging.html">Jalview's
+      logging and bug reporting</a> documentation.
   </p>
-
   <p>
     <strong>Citing Jalview</strong><br />If you use Jalview in your
     work, please cite the Jalview 2 paper in Bioinformatics:
index 29b6813..0faa1d5 100755 (executable)
       <td><strong>Cursor Keys<br> (Arrow Keys)
       </strong></td>
       <td>Cursor</td>
-      <td>Move cursor around alignment</td>
+      <td>Move cursor around alignment.<br /> Press SHIFT to move
+        cursor from an aligned region to next gap, or to the next
+        aligned region when at a gap.
+      </td>
     </tr>
     <tr>
       <td><strong>Cursor Keys<br> (Arrow Keys)
diff --git a/help/help/html/logging.html b/help/help/html/logging.html
new file mode 100644 (file)
index 0000000..0975a47
--- /dev/null
@@ -0,0 +1,212 @@
+<html>
+<!--
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ -->
+<head>
+<title>The Java Console, Logging and Reporting Bugs</title>
+</head>
+<body>
+  <p>
+    <strong>The Java Console, Logging and Reporting Bugs<br /></strong>
+  </p>
+  <p>
+    Like most programs, Jalview contains bugs, despite our best efforts.
+    However, Jalview also produces a series of messages during its
+    operation, often referred to as 'logs'. These logs provide a record
+    of Jalview's operation. They can also be extremely useful when <a
+      href="#reportingbugs">reporting bugs</a>, since they help the
+    Jalview developers diagnose and find a workaround for specific
+    problems that you might encounter.
+  </p>
+  <p>
+    The primary place to look for logs is in the <a href="#java_console">Java
+      Console</a> which you can open from within Jalview by going to the <em>Tools</em>
+    menu and checking the box next to <em>Show Java Console</em>. This
+    option is stored in your Jalview preferences file and so is
+    remembered across Jalview sessions.
+  </p>
+  <p>The Java Console will show you information about what the
+    Jalview application is doing (often in the background) whilst it is
+    running.</p>
+  <p>However, when tracking down problems preventing Jalview from
+    starting up properly, you need to look at the startup logs - which
+    are not shown in the Jalview Console. The location of these depends
+    on how you launched Jalview:</p>
+  <p>
+    <strong>Jalview Desktop Installation Launch Logs</strong><br />If you are using
+    a standard desktop version of Jalview installed from one of our
+    install4j installers, then messages about Jalview's initial launch
+    can be found in
+  <pre>JALVIEW_APP_DIR/launcher.log</pre>
+  where
+  <em>JALVIEW_APP_DIR</em> is the directory that Jalview's application
+  was installed into.
+  <br /> For Jalview 2.11.0 onwards:
+  <ul>
+    <li>In Windows this is <em>%APPDATA%\Local\Jalview</em> by
+      default
+    </li>
+    <li>In macOS this is <em>/Applications/Jalview.app/Contents/Resources/app</em>
+      by default
+    </li>
+    <li>In Linux and other Unix OSes this is <em>~/opt/jalview</em>
+      by default
+    </li>
+  </ul>
+  <p><strong>Jalview Executable Jar Launch Logs</strong><br/>If you are using the Jalview executable jar file (also
+  used by bioconda and OSX homebrew installations) then the default run class (
+  <em>jalview.bin.Launcher</em> -- a minimised launcher that will set
+  memory and linux dpi settings before re-launching
+  <em>jalview.bin.Jalview</em>), will output logging information to
+  STDOUT and STDERR.
+  </p>
+
+  <p><strong>
+    <a name="java_console">Java Console and Log Level</a>
+  </strong></p>
+  <p>
+    The Java Console is opened by selecting <strong>Tools
+      &rarr; Show Java Console</strong>. The visibility of the console is stored
+    in your preferences, so if you quit Jalview with the console open,
+    it will be shown the next time you start Jalview. You can close the
+    console by selecting the same menu option again, or just closing the
+    console window.
+  </p>
+  <p>The Java Console's text display always shows information about
+    your system and Jalview installation details. The rest are the most
+    recent messages output during your Jalview session. Some messages
+    are only captured by the console when it is open, so to get a full
+    log for debugging a problem, enable the console and then restart
+    Jalview.</p>
+
+  <p>
+    You can temporarily control the detail of what appears as output by
+    selecting a <em>Log level</em> using the drop-down list at the
+    bottom left of the console. There are several levels to choose from:
+    The most verbose is TRACE, followed by DEBUG, INFO, WARN. When the
+    Console is opened, the default level will be chosen (INFO).
+  </p>
+  <p>
+    <strong>Note! If you change the log level in the Java
+      Console, this change will only persist for as long as the console
+      is open. Once you close the console the log level will revert back
+      to what it had been when you opened the console (usually INFO).</strong>
+  </p>
+  <p><strong>Permanently changing Jalview's default log level</strong><br/>
+    You can change the default log level by editing the Jalview
+    preferences file, <em>.jalview_properties</em>, found in your home
+    directory (on Windows: %HOMEPATH%, or the folder above 'My
+    Documents'; on macOS: ~ or /Users/<em>username</em>; on linux/unix:
+    ~ or /home/<em>username</em>), and setting the property <em>logs.Jalview.level</em>
+    to the log level you prefer, e.g.
+  <pre>
+  logs.Jalview.level=DEBUG
+  </pre>
+  You can also set the property
+  <pre>
+  logs.Axis.level=DEBUG
+  </pre>
+  <p>to get debug information for Jalview's JPred service. The Axis log
+  level cannot be set from within the Java Console.
+  </p>
+  <p>
+    You can also set the <em>logs.jalview.level</em> property to a log level
+    not usually presented in the Java Console (though restricted to log
+    levels used by Apache Log4j -- see <a
+      href="https://logging.apache.org/log4j/2.x/manual/customloglevels.html">Log4j
+      Custom Log Levels</a> for details of the standard log levels
+    available). Jalview does not currently define any custom log levels.
+    If you do set the property with a log level that is normally not
+    visible in the Java Console this should be respected and visibly
+    selected when you open the console.
+  </p>
+  <p>
+    The <em>Clear</em> button at the bottom of the console will clear
+    all logging messages except for the initial system information which
+    is rewritten to the console.
+  </p>
+  <p>
+    The <em>Copy to clipboard</em> button at the bottom right of the
+    console will copy all of the text in the console to your system
+    clipboard, ready to paste into another application (e.g. email
+    composer or issue tracker).
+  </p>
+
+  <p><strong><a name="reportingbugs">Reporting Bugs</a></strong></p>
+
+  <p>
+    If you come across a problem in Jalview where something is not
+    working as described, or how you think it should, you should first
+    check the <a href="https://www.jalview.org/faq">Jalview FAQ</a> to
+    see if this is a known problem and if there is a suggested
+    workaround.
+  </p>
+  <p>
+    If there is no FAQ answer covering your problem then you can submit
+    a bug report on the <a href="https://issues.jalview.org/">Jalview
+      Issue Tracker</a>. It is good practice to search the issue tracker
+    first to see if the issue has already been reported. If an issue
+    already exists please continue to add your own comments to the issue
+    which may well help narrow down the problem, if not then you can
+    create an account and submit a new bug report:
+  </p>
+  <p>
+    Make sure that you set Project to <em>Jalview (JAL)</em>, and Issue
+    Type to <em>Bug</em> or <em>New Feature</em> or <em>Improvement</em>
+    appropriately.<br /> Give a one line summary of the issue in the <em>Summary</em>.
+    <br /> In the <em>Environment</em> text box you can describe the
+    system you are using. This is usually most easily done by opening
+    the Java Console, clicking the <em>Clear</em> button, and then
+    immediately on the <em>Copy to clipboard</em> button, and then
+    pasting the clipboard into the text box.
+  </p>
+  <p>
+    You can then give more detailed information about how to recreate
+    the problem in the <em>Description</em> text box. If you want to
+    attach any screenshots or example alignment files that demonstrate
+    the problem then you can drag them to the Create Issue dialog in
+    your browser, or use the <em>Attachment</em> browse facility to
+    locate them on your computer.
+  </p>
+
+  <p>
+    To help the Jalview team with diagnosing a particular issue, it is
+    really helpful if you can also add more detailed logs output whilst
+    re-creating the problem. To do this, open the Java Console, click
+    the <em>Clear</em> button and select TRACE in the <em>Log level</em>
+    drop down list. <br /> Whilst leaving the console open, perform the
+    task in Jalview that re-creates the problem. <br /> Then you can
+    copy the debug information in the Java Console by clicking on the <em>Copy
+      to clipboard</em> button and then paste that into the Description, or a
+    Comment of your issue.
+  </p>
+
+  <p>
+    For other queries or comments about Jalview, remember you can
+    contact the Jalview team using email via the
+    <a href="https://www.jalview.org/mailman/listinfo/jalview-discuss">Jalview
+      discussion list</a>, on Twitter <a
+      href="https://twitter.com/Jalview/">@Jalview</a>, or for technical
+    discussions, via the Jalview developer's chatroom at
+    <a href="https://gitter.im/jalview/developers">https://gitter.im/jalview/developers</a>.
+  </p>
+
+</body>
+</html>
index 0374dcb..7d6fb85 100755 (executable)
@@ -80,7 +80,7 @@
       arguments, but you must put the <em>jvl</em> file first, e.g. <pre>
       /PATH_TO_JALVIEW/Jalview /path/to/file/mymemorysetting.jvl /path/to/alignments/myalignment.fa</pre> Alternatively, you can use the standard Jalview command line
       arguments with or without the jvl file (first), e.g. <pre>
-       /PATH_TO_JALVIEW/Jalview /path/to/file/mymemorysetting.jvl -open http://www.jalview.org/examples/jpred_msa.fasta -annotations http://www.jalview.org/examples/jpred_msa.seq.concise -colour Clustal</pre> You can use command line arguments to control memory
+       /PATH_TO_JALVIEW/Jalview /path/to/file/mymemorysetting.jvl -open https://www.jalview.org/examples/jpred_msa.fasta -annotations https://www.jalview.org/examples/jpred_msa.seq.concise -colour Clustal</pre> You can use command line arguments to control memory
       settings in Windows and macOS too: <br /> In Windows you must
       use, e.g. <pre>
       \PATH_TO_JALVIEW\Jalview.exe %HOMEPATH%\mymemorysetting.jvl -open %HOMEPATH%\myalignment.fa</pre> In macOS you can use the macOS <em>open</em> command like this: <pre>
index c83741a..93c1267 100755 (executable)
@@ -1,3 +1,4 @@
+
 <html>
 <!--
  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
@@ -51,23 +52,347 @@ li:before {
   </p>
   <table border="1">
     <tr>
-      <th nowrap><em>Release</em></th>
+      <th nowrap><a id="Jalview.$$Version-Rel$$"><em>Release</em></th>
       <th><em>New Features</em></th>
       <th><em>Issues Resolved</em></th>
     </tr>
     <tr>
       <td width="60" align="center" nowrap><strong><a
+          id="Jalview.2.11.1">2.11.1</a><a id="Jalview.2.11.1.5">.5</a><br />
+          <em>22/06/2021</em></strong></td>
+      <td align="left" valign="top"><em>Development</em>
+        <ul>
+          <li>Updated building instructions</li>
+        </ul></td>
+      <td>
+        <ul>
+          <li>
+            <!-- JAL-3840 -->Occupancy calculation is incorrect for
+            alignment columns with over -1+2^32 gaps (breaking filtering
+            and display)
+          </li>
+          <li>
+            <!-- JAL-3833 -->Caps on Hi-DPI scaling to prevent crazy
+            scale factors being set with buggy window-managers (linux
+            only)
+          </li>
+        </ul> <em>Development</em>
+        <ul>
+          <li>Fixed non-fatal gradle errors during build</li>
+        </ul>
+      </td>
+    </tr>
+    <tr>
+      <td width="60" align="center" nowrap><strong><a
+          id="Jalview.2.11.1">2.11.1</a><a id="Jalview.2.11.1.4">.4</a><br />
+          <em>09/03/2021</em></strong></td>
+      <td align="left" valign="top"><em>Improved control of
+          Jalview's use of network services via jalview_properties</em>
+        <ul>
+          <li>
+            <!-- JAL-3814 -->New .jalview_properties token controlling
+            launch of the news browser (like -nonews argument)
+          </li>
+          <li>
+            <!-- JAL-3813 -->New .jalview_properties token controlling
+            download of linkout URLs from
+            www.jalview.org/services/identifiers
+          </li>
+          <li>
+            <!-- JAL-3812 -->New .jalview_properties token controlling
+            download of BIOJSHTML templates
+          </li>
+          <li>
+            <!-- JAL-3811 -->New 'Discover Web Services' option to
+            trigger a one off JABAWS discovery if autodiscovery was
+            disabled
+          </li>
+        </ul></td>
+      <td align="left" valign="top">
+        <ul>
+          <li>
+            <!-- JAL-3818 -->Intermittent deadlock opening structure in
+            Jmol
+          </li>
+        </ul> <em>New Known defects</em>
+        <ul>
+          <li>
+            <!-- JAL-3705 -->Protein Cross-Refs for Gene Sequence not
+            always restored from project (since 2.10.3)
+          </li>
+          <li>
+            <!-- JAL-3806 -->Selections from tree built from CDS aren't
+            propagated to Protein alignment (since 2.11.1.3)
+          </li>
+        </ul>
+      </td>
+    </tr>
+    <tr>
+      <td width="60" align="center" nowrap><strong><a
+          id="Jalview.2.11.1">2.11.1</a><a id="Jalview.2.11.1.3">.3</a><br />
+          <em>29/10/2020</em></strong></td>
+      <td align="left" valign="top">
+        <ul>
+
+        </ul>
+      </td>
+      <td align="left" valign="top">
+        <ul>
+          <li>
+            <!-- JAL-3765 -->Find doesn't always highlight all matching
+            positions in a sequence (bug introduced in 2.11.1.2)
+          </li>
+          <li>
+            <!-- JAL-3760 -->Alignments containing one or more protein
+            sequences can be classed as nucleotide
+          </li>
+          <li>
+            <!-- JAL-3748 -->CDS alignment doesn't match original CDS
+            sequences after alignment of protein products (known defect
+            first reported for 2.11.1.0)
+          </li>
+          <li>
+            <!-- JAL-3725 -->No tooltip or popup menu for genomic
+            features outwith CDS shown overlaid on protein
+          </li>
+          <li>
+            <!-- JAL-3751 -->Overlapping CDS in ENA accessions are not
+            correctly mapped by Jalview (e.g. affects viral CDS with
+            ribosomal slippage, since 2.9.0)
+          </li>
+          <li>
+            <!-- JAL-3763 -->Spliced transcript CDS sequences don't show
+            CDS features
+          </li>
+          <li>
+            <!-- JAL-3700 -->Selections in CDS sequence panel don't
+            always select corresponding protein sequences
+          </li>
+          <li>
+            <!-- JAL-3759 --> <em>Make groups from selection</em> for a
+            column selection doesn't always ignore hidden columns
+          </li>
+        </ul> <em>Installer</em>
+        <ul>
+          <li>
+            <!-- JAL-3611 -->Space character in Jalview install path on
+            Windows prevents install4j launching getdown
+          </li>
+        </ul> <em>Development</em>
+        <ul>
+          <li>
+            <!-- JAL-3248 -->Fixed typos and specified compatible gradle
+            version numbers in doc/building.md
+          </li>
+        </ul>
+      </td>
+    </tr>
+    <tr>
+      <td width="60" align="center" nowrap><strong><a
+          id="Jalview.2.11.1">2.11.1</a><a id="Jalview.2.11.1.2">.2</a><br />
+          <em>25/09/2020</em></strong></td>
+      <td align="left" valign="top">
+        <ul>
+        </ul>
+      </td>
+      <td align="left" valign="top">
+        <ul>
+          <li>
+            <!-- JAL-3757 -->Fresh install of Jalview 2.11.1.1 reports
+            "Encountered problems opening
+            https://www.jalview.org/examples/exampleFile_2_7.jvp"
+          </li>
+        </ul>
+      </td>
+    </tr>
+    <tr>
+      <td width="60" align="center" nowrap><strong><a
           id="Jalview.2.11.1">2.11.1</a><a id="Jalview.2.11.1.1">.1</a><br />
-          <em>13/07/2020</em></strong></td>
+          <em>17/09/2020</em></strong></td>
       <td align="left" valign="top">
         <ul>
-        <!-- -->
-       </ul>
+          <li>
+            <!-- JAL-3638 -->Shift+arrow keys navigate to next gap or
+            residue in cursor mode
+          </li>
+          <li>
+            <!-- JAL-3695 -->Support import of VCF 4.3 by updating
+            HTSJDK from 2.12 to 2.23
+          </li>
+          <li>
+            <!-- JAL-3621 -->IntervalStore library updated to v.1.1:
+            optimisations and improvements suggested by Bob Hanson and
+            improved compatibility with JalviewJS
+          </li>
+          <li>
+            <!-- JAL-3615 -->Retrieve GZipped stockholm formatted
+            alignments from Pfam and Rfam
+          </li>
+          <li>
+            <!-- JAL-2656 -->Recognise GZipped content for URLs and File
+            import (no longer based on .gz extension)
+          </li>
+          <li>
+            <!-- JAL-3570 -->Updated Spanish Translation for 2.11.1
+          </li>
+          <li>
+            <!-- JAL-3692 -->Migrate EMBL record retrieval to use latest
+            ENA Browser (https://www.ebi.ac.uk/ena/browser/home) and
+            EMBL flat file
+          </li>
+          <li>
+            <!-- JAL-3667 -->Improved warning messages, debug logging
+            and fixed Retry action when Jalview encounters errors when
+            saving or making backup files.
+          </li>
+          <li>
+            <!-- JAL-3676 -->Enhanced Jalview Java Console:
+            <ul>
+              <li>Jalview's logging level can be configured</li>
+              <li>Copy to Clipboard Buttion</li>
+            </ul>
+          </li>
+          <li>
+            <!-- JAL-3541 -->Improved support for Hi-DPI (4K) screens
+            when running on Linux (Requires Java 11+)
+          </li>
+        </ul> <em>Launching Jalview</em>
+        <ul>
+          <li>
+            <!-- JAL-3608 -->Configure Jalview Desktop's look and feel
+            through a system property
+          </li>
+          <li>
+            <!-- JAL-3477 -->Improved built-in documentation and command
+            line help for configuring Jalview's memory
+          </li>                   
+        </ul>
       </td>
       <td align="left" valign="top">
         <ul>
-         <li><!-- JAL-3493 -->Escape does not clear highlights on the alignment (Since Jalview 2.10.3)</li>
-       </ul>
+          <li>
+            <!-- JAL-3691 -->Conservation and Quality tracks are shown
+            but not calculated and no protein or DNA score models are
+            available for tree/PCA calculation when launched with
+            Turkish language locale
+          </li>
+          <li>
+            <!-- JAL-3493 -->Escape does not clear highlights on the
+            alignment (Since Jalview 2.10.3)
+          </li>
+          <li>
+            <!--  JAL-3680 -->Alt+Left or Right arrow in cursor mode
+            doesn't slide selected sequences, just sequence under cursor
+          </li>
+          <li>
+            <!-- JAL-3732 -->Alt+Up/Down in cursor mode doesn't move
+            sequence under the cursor
+          </li>
+          <li>
+            <!-- JAL-3613 -->Peptide-to-CDS tracking broken when
+            multiple EMBL gene products shown for a single contig
+          </li>
+          <li>
+            <!-- JAL-3696 -->Errors encountered when processing variants
+            from VCF files yield "Error processing VCF: Format specifier
+            '%s'" on the console
+          </li>
+          <li>
+            <!-- JAL-3697 -->Count of features not shown can be wrong
+            when there are both local and complementary features mapped
+            to the position under the cursor
+          </li>
+          <li>
+            <!-- JAL-3673 -->Sequence ID for reference sequence is
+            clipped when Right align Sequence IDs enabled
+          </li>
+          <li>
+            <!-- JAL-2983 -->Slider with negative range values not
+            rendered correctly in VAqua4 (Since 2.10.4)
+          </li>
+          <li>
+            <!-- JAL-3685 -->Single quotes not displayed correctly in
+            internationalised text for some messages and log output
+          </li>
+          <li>
+            <!-- JAL-3490 -->Find doesn't report matches that span
+            hidden gapped columns
+          </li>
+          <li>
+            <!-- JAL-3597 -->Resolved memory leaks in Tree and PCA
+            panels, Alignment viewport and annotation renderer.
+          </li>
+          <li>
+            <!-- JAL-3561 -->Jalview ignores file format parameter
+            specifying output format when exporting an alignment via the
+            command line
+          </li>
+          <li>
+            <!-- JAL-3667 -->Windows 10: For a minority of users, if
+            backups are not enabled, Jalview sometimes fails to
+            overwrite an existing file and raises a warning dialog. (in
+            2.11.0, and 2.11.1.0, the workaround is to try to save the
+            file again, and if that fails, delete the original file and
+            save in place.)
+          </li>
+          <li>
+            <!-- JAL-3750 -->Cannot process alignments from HTTPS urls
+            via command line
+          </li>
+          <li>
+            <!-- JAL-3741 -->References to http://www.jalview.org in
+            program and documentation
+          </li>
+        </ul> <em>Launching Jalview</em>
+        <ul>
+          <li>
+            <!-- JAL-3718 -->Jalview application fails when launched the
+            first time for a version that has different jars to the
+            previous launched version.
+          </li>
+        </ul> <em>Developing Jalview</em>
+        <ul>
+          <li>
+            <!-- JAL-3541 -->Fixed issue with cleaning up old coverage
+            data, causing cloverReport gradle task to fail with an
+            OutOfMemory error.
+          </li>
+          <li>
+            <!-- JAL-3280 -->Migrated the Jalview Version Checker to
+            monitor the release channel
+          </li>
+        </ul> <em>New Known defects</em>
+        <ul>
+          <li>
+            <!-- JAL-3748 -->CDS shown in result of submitting proteins
+            in a CDS/Protein alignment to a web service is wrong when
+            proteins share a common transcript sequence (e.g.
+            genome of RNA viruses)
+          </li>
+          <li>
+            <!-- JAL-3576 -->Co-located features exported and re-imported
+            are ordered differently when shown on alignment and in
+            tooltips. (Also affects v2.11.1.0)
+          </li>
+          <li>
+            <!-- JAL-3702 -->Drag and drop of alignment file onto
+            alignment window when in a HiDPI scaled mode in Linux only
+            works for the top left quadrant of the alignment window
+          </li>
+          <li>
+            <!-- JAL-3701 -->Stale build data in jalview standalone jar
+            builds (only affects 2.11.1.1 branch)
+          </li>
+          <li>
+            <!-- JAL-3127 -->Sequence ID colourscheme not re-applied
+            when alignment view restored from project (since Jalview 2.11.0)
+          </li>
+          <li>
+            <!-- JAL-3749 -->Duplicate CDS sequences are generated when
+            protein products for certain ENA records are repeatedly
+            shown via Calculate-&gt;Show Cross Refs
+          </li>
+        </ul>
       </td>
     </tr>
     <tr>
index c3c1d3f..2e8b69a 100644 (file)
@@ -25,7 +25,7 @@
   <p>
     <strong>The Jalview Desktop RSS News Reader</strong><br /> The
     Jalview Desktop includes a built in news reader for the <a
-      href="http://www.jalview.org/feeds/desktop/rss">Jalview
+      href="https://www.jalview.org/feeds/desktop/rss">Jalview
       Desktop News Channel</a>.
   </p>
 
@@ -48,9 +48,9 @@
   <br />
   <p>
     The <em>Jalview news reader</em> was introduced in <a
-      href="http://www.jalview.org/releaseHistory.html#Jalview2.7">Jalview
+      href="https://www.jalview.org/releaseHistory.html#Jalview2.7">Jalview
       version 2.7</a>. Its implementation is based on <a
-      href="http://jswingreader.sourceforge.net/">JSwingReader</a>.
+      href="https://jswingreader.sourceforge.net/">JSwingReader</a>.
   </p>
   <br />
   <em>If you need to prevent the news-reader opening, then add the
index 0f0c7f1..b94b9bf 100755 (executable)
 </head>
 <body>
   <p>
-    <strong>Jalview 2.11.1.0</strong>
+    Welcome to Jalview Version $$Version-Rel$$ !!<br />Please take a
+    look at the <a href="releases.html#Jalview.$$Version-Rel$$">release
+      notes</a> for this build.
   </p>
   <p>
-    Jalview 2.11.1.0 is the first minor release for the 2.11 series.
-    Along with a number of critical bug fixes and improvements it brings
-    new functionality for mapping sequence features between CDS and
-    Protein alignments. It is also the first release made under a new <em>four</em>
-    number versioning scheme, which will allow us to keep track of
-    patches and bug fixes.
+    <strong>Jalview 2.11.1.4</strong>
+  </p>
+  <p>Jalview 2.11.1.4 is the fourth patch release in the 2.11.1
+    series. One critical bug was fixed in this release - when Jalview
+    would occasionally hang when viewing structures in Jmol. This release
+    also introduces a number of new configuration options for disabling
+    web service connections used by the Jalview Debian package.
   </p>
-  <ul>
-    <li><strong>Virtual Features</strong><br />In previous
-      versions of Jalview, specific nucleotide sequence features such as
-      genomic variants and exons were transferred to protein products on
-      import. Jalview 2.11.1 instead provides 'virtual features' that
-      can be enabled and overlaid on linked CDS/Protein views via their
-      <a href="features/splitView.html#virtualfeats">Sequence
-        Features dialog</a>. This allows more analyses of nucleotide and
-      peptide sequence features on alignments in a more flexible and
-      memory efficient way than in earlier versions.<br />
-    <em>Note: Virtual features work best when variants are
-        annotated with CSQ fields. Please <a
-        href="features/importvcf.html#computepepvariants">see this
-          Groovy script workaround</a> if you are working with VCF files
-        without CSQ fields.
-    </em></li>
-    <li><strong>Improved VCF data import</strong><br /> <a
-      href="features/importvcf.html#attribs">Standard attributes for
-        filtering variants</a> (e.g. position, QUAL field etc) are now
-      extracted from VCF files. This new feature was suggested by a user
-      at the Jalview booth during ISMB 2019.</li>
-    <li><strong>Extended feature attributes are exported
-        in GFF3</strong><br />Complex attributes from VCF files can be exported
-      and imported via GFF3</li>
-    <li><strong>Updated Jalview Installer and Launcher</strong><br />Jalview's
-      installation packages are now built with Install4j 8, which brings
-      better support for Linux and improved control of file
-      associations. New <a href="memory.html#jvm">parameters on the
-        Jalview launcher</a> allow an upper memory limit to be specified <em>via</em>
-      a Jalview launch file, to prevent it from hogging your system.</li>
-  </ul>
   <p>
-    See the <a href="releases.html#Jalview.2.11.1.0">2.11.1.0
-      release notes</a> for full details of bugs fixed and new known issues.
+    For the full release notes, see <a
+      href="releases.html#Jalview.2.11.1.4">the Jalview 2.11.1.4
+      release notes</a>.
   </p>
   <p>
-    <em>JalviewJS News</em><br />With the release of Jalview 2.11.1.0,
-    the team are now focused on bringing JalviewJS to full production.
-    To follow our progress take a look at <em>http://www.jalview.org/jalview-js/</em>
-    and follow updates on our new <a
-      href="https://github.com/jalview/jalview-js/">JalviewJS
-      Releases github repository</a>.
+    <strong>Known Issues</strong>
   </p>
+  <p>New known issues in this release affect recovery of CDS/Protein
+    relationships from project files, and interactive selection of
+    protein sequences from a tree built on linked nucleotide sequences.
+    We will provide patches for these issues as soon as possible.</p>
+  </ul>
 </body>
 </html>
index 216b498..29f0d84 100755 (executable)
@@ -182,8 +182,8 @@ import jalview.ws.sifts.SiftsSettings;
  * when shading by annotation</li>
  * <li>ANNOTATIONCOLOUR_MAX (red) Shade used for maximum value of annotation
  * when shading by annotation</li>
- * <li>www.jalview.org (http://www.jalview.org) a property enabling all HTTP
- * requests to be redirected to a mirror of http://www.jalview.org</li>
+ * <li>www.jalview.org (https://www.jalview.org) a property enabling all HTTP
+ * requests to be redirected to a mirror of https://www.jalview.org</li>
  * <li>FIGURE_AUTOIDWIDTH (false) Expand the left hand column of an exported
  * alignment figure to accommodate even the longest sequence ID or annotation
  * label.</li>
@@ -523,7 +523,7 @@ public class Cache
                     DEFAULT_CACHE_THRESHOLD_IN_DAYS));
 
     IdOrgSettings.setUrl(getDefault("ID_ORG_HOSTURL",
-            "http://www.jalview.org/services/identifiers"));
+            "https://www.jalview.org/services/identifiers"));
     IdOrgSettings.setDownloadLocation(ID_ORG_FILE);
 
     StructureImportSettings.setDefaultStructureFileFormat(jalview.bin.Cache
index 4c21624..0b5fafa 100755 (executable)
@@ -453,7 +453,7 @@ public class Jalview
               // String defurl =
               // "http://anaplog.compbio.dundee.ac.uk/cgi-bin/questionnaire.pl";
               // //
-              String defurl = "http://www.jalview.org/cgi-bin/questionnaire.pl";
+              String defurl = "https://www.jalview.org/cgi-bin/questionnaire.pl";
               Cache.log.debug(
                       "Starting questionnaire with default url: " + defurl);
               desktop.checkForQuestionnaire(defurl);
@@ -782,14 +782,18 @@ public class Jalview
      * @j2sIgnore
      */
     {
-      file = Cache.getDefault("STARTUP_FILE",
-              Cache.getDefault("www.jalview.org", "http://www.jalview.org")
-                      + "/examples/exampleFile_2_7.jar");
+      file = jalview.bin.Cache.getDefault("STARTUP_FILE",
+              jalview.bin.Cache.getDefault("www.jalview.org",
+                      "https://www.jalview.org")
+                      + "/examples/exampleFile_2_7.jvp");
       if (file.equals(
-              "http://www.jalview.org/examples/exampleFile_2_3.jar"))
+              "http://www.jalview.org/examples/exampleFile_2_3.jar") || file.equals(
+                      "http://www.jalview.org/examples/exampleFile_2_7.jar"))
       {
+        file.replace("http:", "https:");
         // hardwire upgrade of the startup file
-        file.replace("_2_3.jar", "_2_7.jar");
+        file.replace("_2_3", "_2_7");
+        file.replace("2_7.jar", "2_7.jvp");
         // and remove the stale setting
         Cache.removeProperty("STARTUP_FILE");
       }
@@ -1085,7 +1089,7 @@ public class Jalview
                     + "-groovy FILE\tExecute groovy script in FILE, after all other arguments have been processed (if FILE is the text 'STDIN' then the file will be read from STDIN)\n"
                     + "-jvmmempc=PERCENT\tOnly available with standalone executable jar or jalview.bin.Launcher. Limit maximum heap size (memory) to PERCENT% of total physical memory detected. This defaults to 90 if total physical memory can be detected. See https://www.jalview.org/help/html/memory.html for more details.\n"
                     + "-jvmmemmax=MAXMEMORY\tOnly available with standalone executable jar or jalview.bin.Launcher. Limit maximum heap size (memory) to MAXMEMORY. MAXMEMORY can be specified in bytes, kilobytes(k), megabytes(m), gigabytes(g) or if you're lucky enough, terabytes(t). This defaults to 32g if total physical memory can be detected, or to 8g if total physical memory cannot be detected. See https://www.jalview.org/help/html/memory.html for more details.\n"
-                    + "\n~Read documentation in Application or visit http://www.jalview.org for description of Features and Annotations file~\n\n");
+                    + "\n~Read documentation in Application or visit https://www.jalview.org for description of Features and Annotations file~\n\n");
   }
 
   private static void startUsageStats(final Desktop desktop)
index 61ee231..c5b90a9 100644 (file)
@@ -565,7 +565,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           }
           if (viewport.cursorMode)
           {
-            alignPanel.getSeqPanel().moveCursor(0, 1);
+            alignPanel.getSeqPanel().moveCursor(0, 1, evt.isShiftDown());
           }
           break;
 
@@ -576,7 +576,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           }
           if (viewport.cursorMode)
           {
-            alignPanel.getSeqPanel().moveCursor(0, -1);
+            alignPanel.getSeqPanel().moveCursor(0, -1,evt.isShiftDown());
           }
 
           break;
@@ -589,7 +589,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           }
           else
           {
-            alignPanel.getSeqPanel().moveCursor(-1, 0);
+            alignPanel.getSeqPanel().moveCursor(-1, 0, evt.isShiftDown());
           }
 
           break;
@@ -601,7 +601,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           }
           else
           {
-            alignPanel.getSeqPanel().moveCursor(1, 0);
+            alignPanel.getSeqPanel().moveCursor(1, 0, evt.isShiftDown());
           }
           break;
 
index 757bb01..8ba3dce 100644 (file)
@@ -256,7 +256,7 @@ public class BlogReader extends JPanel
     chan.setURL(
             jalview.bin.Cache.getDefault("JALVIEW_NEWS_RSS",
                     jalview.bin.Cache.getDefault("www.jalview.org",
-                            "http://www.jalview.org")
+                            "https://www.jalview.org")
                             + "/feeds/desktop/rss"));
     loadLastM();
     _channelModel.addChannel(chan);
index 834d779..e3e3932 100755 (executable)
@@ -355,8 +355,8 @@ public class Preferences extends GPreferences
     startupCheckbox
             .setSelected(Cache.getDefault("SHOW_STARTUP_FILE", true));
     startupFileTextfield.setText(Cache.getDefault("STARTUP_FILE",
-            Cache.getDefault("www.jalview.org", "http://www.jalview.org")
-                    + "/examples/exampleFile_2_3.jar"));
+            Cache.getDefault("www.jalview.org", "https://www.jalview.org")
+                    + "/examples/exampleFile_2_7.jvp"));
 
     /*
      * Set Colours tab defaults
index 163ae25..454a730 100644 (file)
@@ -483,47 +483,80 @@ public class SeqPanel extends JPanel
 
   void moveCursor(int dx, int dy)
   {
-    seqCanvas.cursorX += dx;
-    seqCanvas.cursorY += dy;
-
+    moveCursor(dx, dy,false);
+  }
+  void moveCursor(int dx, int dy, boolean nextWord)
+  {
     HiddenColumns hidden = av.getAlignment().getHiddenColumns();
 
-    if (av.hasHiddenColumns() && !hidden.isVisible(seqCanvas.cursorX))
+    if (nextWord)
     {
-      int original = seqCanvas.cursorX - dx;
       int maxWidth = av.getAlignment().getWidth();
-
-      if (!hidden.isVisible(seqCanvas.cursorX))
-      {
-        int visx = hidden.absoluteToVisibleColumn(seqCanvas.cursorX - dx);
-        int[] region = hidden.getRegionWithEdgeAtRes(visx);
-
-        if (region != null) // just in case
+      int maxHeight=av.getAlignment().getHeight();
+      SequenceI seqAtRow = av.getAlignment().getSequenceAt(seqCanvas.cursorY);
+      // look for next gap or residue
+      boolean isGap = Comparison.isGap(seqAtRow.getCharAt(seqCanvas.cursorX));
+      int p = seqCanvas.cursorX,lastP,r=seqCanvas.cursorY,lastR;
+      do
+      {
+        lastP = p;
+        lastR = r;
+        if (dy != 0)
         {
-          if (dx == 1)
+          r += dy;
+          if (r < 0)
           {
-            // moving right
-            seqCanvas.cursorX = region[1] + 1;
+            r = 0;
           }
-          else if (dx == -1)
+          if (r >= maxHeight)
           {
-            // moving left
-            seqCanvas.cursorX = region[0] - 1;
+            r = maxHeight - 1;
           }
+          seqAtRow = av.getAlignment().getSequenceAt(r);
         }
-        seqCanvas.cursorX = (seqCanvas.cursorX < 0) ? 0 : seqCanvas.cursorX;
-      }
+        p = nextVisible(hidden, maxWidth, p, dx);
+      } while ((dx != 0 ? p != lastP : r != lastR)
+              && isGap == Comparison.isGap(seqAtRow.getCharAt(p)));
+      seqCanvas.cursorX=p;
+      seqCanvas.cursorY=r;
+    } else {
+      int maxWidth = av.getAlignment().getWidth();
+      seqCanvas.cursorX = nextVisible(hidden, maxWidth, seqCanvas.cursorX, dx);
+      seqCanvas.cursorY += dy;
+    }
+    scrollToVisible(false);
+  }
 
-      if (seqCanvas.cursorX >= maxWidth
-              || !hidden.isVisible(seqCanvas.cursorX))
+  private int nextVisible(HiddenColumns hidden,int maxWidth, int original, int dx)
+  {
+    int newCursorX=original+dx;
+    if (av.hasHiddenColumns() && !hidden.isVisible(newCursorX))
+    {
+      int visx = hidden.absoluteToVisibleColumn(newCursorX - dx);
+      int[] region = hidden.getRegionWithEdgeAtRes(visx);
+
+      if (region != null) // just in case
       {
-        seqCanvas.cursorX = original;
+        if (dx == 1)
+        {
+          // moving right
+          newCursorX = region[1] + 1;
+        }
+        else if (dx == -1)
+        {
+          // moving left
+          newCursorX = region[0] - 1;
+        }
       }
     }
-
-    scrollToVisible(false);
+    newCursorX = (newCursorX < 0) ? 0 : newCursorX;
+    if (newCursorX >= maxWidth
+            || !hidden.isVisible(newCursorX))
+    {
+      newCursorX = original;
+    }
+    return newCursorX;
   }
-
   /**
    * Scroll to make the cursor visible in the viewport.
    * 
index e0f28bb..022148a 100644 (file)
@@ -70,7 +70,7 @@ public class JSONFile extends AlignFile implements ComplexAlignFile
 {
   private static String version = new BuildDetails().getVersion();
 
-  private String webstartUrl = "http://www.jalview.org/services/launchApp";
+  private String webstartUrl = "https://www.jalview.org/services/launchApp";
 
   private String application = "Jalview";