Hi list,

I've been working on a single Galaxy tool for a while now, and I'm running into all sorts of difficulties that can probably all be fixed using Cheetah.

However I've been trying several ways of utilizing the (enormous) powers of Cheetah but so far I'm not successful. I'll try to ask my questions as clear as possible, please let me know if anything is unclear. 

In my tool I use the following input parameter:
-----------------------
  <param name="report_options" type="select" multiple="True" display="checkboxes">
<option value="overview">phyla distribution</option>
<option value="phyladend">phyla dendograms</option>
<option value="heatmap">heatmap</option>
<option value="dendogram">dendogram</option>
<option value="pca">principal component analysis</option>
<option value="mds">multi dimensional scaling</option>
  </param>
-----------------------

Each of these options corresponds to a function in my R script, thus I want to do an if-else if-else to execute these functions that the user selected (note that multiple="True"). 
Now the problem is, I also use R Sweave (sweaving R output (text/graphics) into LaTeX) to generate a nice looking PDF report, and since that's not a 'real' programming/ scripting language, I can't for instance split the string (as I used to do in R) and check for the boxes a user selected, so my questions are:

I planned on using Cheetah to include sections of Sweave LaTeX code for each box checked by the user, perfectly doable with an #if-#elif you'd think, however since the $report_options contains a comma-separated single string, I would need to split (or use regular expressions) to be able to do such an #if-#elif like:

#if "heatmap" in $report_options.split(",")
results in: "NotFound: cannot find 'split' while searching for 'split'"

-----------------------
Questions:

Q: How can I use this string with Cheetah, or is the low-level Python object (i.e. a list) also available (that is used to generate this string)?

Q: You can use a <filter> for the <output> parameters, which doesn't work with $report_options in this case, so how to use the <filter> with 'multiple_select="True"'?

Q: While trying out some Cheetah functionality (as explained in the Cheetah manual), I've came across a number of 'things' in the Cheetah documentation that aren't supported in Galaxy tool XML files. Is there some documentation available showing what is possible and what isn't?

Q: Followup from previous question, where within the sections of my tool XML file can I actually use Cheetah? This of course has to do with the order in which a tool is executed. 
-----------------------


Any help or pointers / examples are greatly appreciated!

Some links:
- Cheetah Manual: http://www.cheetahtemplate.org/docs/users_guide_html/users_guide.html
_ Excellent post about Cheetah on the mailing list: http://gmod.827538.n3.nabble.com/Bitten-by-a-Cheetah-long-td2760688.html

Regards,

Marcel

De inhoud van dit bericht is vertrouwelijk en alleen bestemd voor de geadresseerde(n). Anderen dan de geadresseerde(n) mogen geen gebruik maken van dit bericht, het niet openbaar maken of op enige wijze verspreiden of vermenigvuldigen. Het UMCG kan niet aansprakelijk gesteld worden voor een incomplete aankomst of vertraging van dit verzonden bericht.

The contents of this message are confidential and only intended for the eyes of the addressee(s). Others than the addressee(s) are not allowed to use this message, to make it public or to distribute or multiply this message in any way. The UMCG cannot be held responsible for incomplete reception or delay of this transferred message.