Hi David. Your mail was too large to come through the mailing list, but I've included your reply to my last email below..
oops - didn't make that deadline
Actually, a little bit of background. Our project (http://www.phytozome.net) has been using Jalview for 6+ years. We branched our local install from v2.0.6 (28/9/2005) and made several in-code modifications, to allow us to pull sequences and alignments directly from our database and expose various tools.
Wow - I like the rearrangements you've made to the calculations menu! The 'run gblocks' option is very intuitive - although it does proliferate alignment windows - my ideal way of including gblocks like services is to create a new alignment view from the results that would exclude phylogenetically uninformative columns.
We are currently bundling up Phytozome for licensing and distribution to academic and commercial users. For licensing purposes (and to benefit from subsequent Jalview development), it is infinitely better if Phytozome works with the unmodified Jalview, so we've been trying to see if we can get the current release to work with our system. One of the first issues we've encountered is trying to reproduce this behavior:
1) go to http://www.phytozome.net/show_cluster.php?method=2355&search=1&searchText=clusterid%3A28761972&detail=1
2) click on Align Family Members -> Load member protein sequences
You'll see it pulls up a Jalview window of the unaligned sequences, and then a window with the sequences aligned. There's a bit going on under the hood (the system first checks our database to see if we have already stored a pre-computed MSA for this gene family, and pulls it out if so and immediately displays it in a second window. If none is found, and the number of sequences is 50 or less, an MSA calculation is automatically launched (via cgi), and the result displayed upon completion.
Ok. I presume you've already managed to implement something that can do the cache-check and CGI submission step already.
We had hoped to reproduce this conditional launching of the MSA calculation via a Groovy script, but you point out that apparently --groovy /SCRIPT /on the Jalview startup fires off a script /before /completion of the initial load, correct? So what would be really useful for us would be the ability to have that commandline script execute subsequent to the initial sequence load.
yes. In fact, this is actually the case (I just checked the code to make sure ). The script is only executed once the alignment is loaded if you have passed in an alignment on the command line. In fact, I've just checked in an example script that will do roughly what you need - see
The remaining problem was that the groovy argument in the currently released versions is only able to execute a script from a local file or from STDIN. In your case, you'd want to specify a script as a URL. So - completely ignoring any security issues (see - http://issues.jalview.org/browse/JAL-899 ) I've tweaked Jalview to enable this functionality, and added in some progress indicators so the user knows what's going on whilst groovy gets its act together (since the script fetch step seems to take ages on my machine .. any suggestions on speeding that step up would be much appreciated). Get the latest code from the development URL or from the git repository at http://source.jalview.org/git/jalview.git
We're also working on getting various coloring behaviors to work in the new Jalview (e.g, when we send up more than one gene family to Jalview at the same time, each family's sequence labels get a distinct color, e.g.)
ah - I guess this is related to this jalview-discuss from Joni Fazo at lbl.gov (http://www.jalview.org/pipermail/jalview-discuss/2011-August/000644.html).
The way this would be traditionally done was by setting a sequence group's 'idColour' property in an annotation file (http://www.jalview.org/help/html/features/annotationsFormat.html) - but you could also script the creation of groups for the currently displayed alignments in groovy. Bear in mind, however, that these colours would be 'per alignment' annotation, so you'd have to reapply them when the alignment completes. Of course, I suspect that ultimately you would prefer an automatic colouring mechanism that gets applied for new alignment windows. If you (or someone in your group) fancies implementing a new 'colour by ID' system for Jalview, I'd be happy to assist.
I hope this helps! The exercise with groovy helped squish a few bugs related to progress bars, so Jalview has benefited already
On 03/08/2011 18:55, David M. Goodstein wrote: