sorry for the late reply, i've been away for almost a month. thanks for your work on this, i'll update the tools and upload to toolshed asap.
On Tue, May 29, 2012 at 3:35 AM, Peter Cock firstname.lastname@example.org:
On Fri, May 25, 2012 at 4:54 PM, Peter Cock email@example.com wrote:
It has taken me a while but I'm how trying to use HMMER3, and do so from within Galaxy.
I've realised that the per sequence and per domain tables from hmmscan and hmmsearch (via the --tblout and --domtblout switches) are NOT tab separated, but space separated to give an eye pleasing column based layout.
However, your wrapper tells Galaxy they are "tabular". As a result, Galaxy treats them like tables with one column, which means all the table operations like filtering on a particular column are not possible. Has this not affected your users?
I ran into some similar problems wrapping other tools giving table based output, and used a wrapper script to make them into tab separated tables for use in Galaxy. e.g. SignalP 3 (spaces), EffectiveT3 (semi-colons).
Would you agree that a wrapper script to reformat the HMMER3 tables into tab-separated tables would be the best solution? Would you accept a code contribution to do this?
I've written a simple HMMER3 table to tabular script in Python, https://github.com/peterjc/picobio/blob/master/hmmer/hmmer_table2tabular.py
Would you prefer to:
(a) amend the XML to call HMMER, and then call the conversion script twice.
(b) turn this into a single wrapper script which calls HMMER3 and then converts the two tables (using a multiple command line call with shell semi-colon separators).
(c) do something else?
I favour the wrapper script option as more flexible in the long run (e.g. for error handling and splitting jobs over multiple machines), and the multiple command approach may lead to overly long command line strings.