Mercurial > repos > wolma > mimodd
changeset 4:ffee8534a5c4
upgrade to mimodd version 0.1.6
author | Wolfgang Maier |
---|---|
date | Thu, 04 Jun 2015 17:52:04 +0200 |
parents | ba685c655e18 |
children | bdd1995c9e66 |
files | cloudmap.xml convert.xml deletion_predictor.xml snap_caller.xml snp_caller_caller.xml tool_dependencies.xml toolshed_macros.xml vcf_filter.xml |
diffstat | 8 files changed, 114 insertions(+), 63 deletions(-) [+] |
line wrap: on
line diff
--- a/cloudmap.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/cloudmap.xml Thu Jun 04 17:52:04 2015 +0200 @@ -6,13 +6,17 @@ <expand macro="requirements"/> <version_command>mimodd version -q</version_command> <command> - mimodd cloudmap "$ifile" ${run.mode} + mimodd cloudmap "$ifile" ${run.mode} "$sample" - #if $str($run.mode) != "SVD": - "${run.refsample}" + #if $str($run.related_parent_sample): + -r "${run.related_parent_sample}" + #end if + #if $str($run.unrelated_parent_sample): + -u "${run.unrelated_parent_sample}" #end if - "$sample" -o "$ofile" + $run.infer_missing + -o "$ofile" #if $seqdict: -s "$dictfile" @@ -22,20 +26,23 @@ <inputs> <param name="ifile" type="data" format="vcf" label="vcf input file" /> <conditional name="run"> - <param name="mode" type="select" label="CloudMap analysis to prepare data for"> - <option value="SVD">EMS Variant Density Mapping</option> - <option value="VAF">Variant Discovery / Hawaiian Variant Mapping</option> + <param name="mode" type="select" label="Type of CloudMap analysis to prepare data for" help="select Simple Variant Density (SVD) Mapping to generate output for the CloudMap EMS Variant Density Mapping tool or Variant Allele Frequency (VAF) Mapping for output for the CloudMap Variant Discovery or Hawaiian Variant Mapping tools."> + <option value="SVD">Simple Variant Density Mapping</option> + <option value="VAF">Variant Allele Frequency Mapping</option> </param> <when value="SVD"> - <param name="refsample" type="hidden" value="None" /> + <param name="related_parent_sample" type="hidden" value="" /> + <param name="unrelated_parent_sample" type="hidden" value="" /> + <param name="infer_missing" type="hidden" value="" /> </when> <when value="VAF"> - <param name="refsample" type="text" label="name of the reference sample" help="the sample that provides mapping strain variants" /> + <param name="related_parent_sample" type="text" label="name of the related parent sample" help="the sample that provides variants present in your original mutant strain or in an ancestor (like the pre-mutagenesis strain); leave blank if not available" /> + <param name="unrelated_parent_sample" type="text" label="name of the unrelated parent sample" help="the sample that provides variants present in the unrelated mapping strain (or in an ancestor of it) used in the mapping cross; leave blank if not available" /> + <param name="infer_missing" type="boolean" checked="false" truevalue="--infer-missing" falsevalue="" label="Infer alleles for missing parent" help="if variant data for either the related or the unrelated parent strain is not available, the tool can try to infer the alleles present in that parent from the allele spectrum found in the mapping sample. This is an experimental option that will give a benefit only in certain situations. Enable at your own risk." /> </when> </conditional> - <param name="sample" type="text" label="subject sample name" help="the sample to perform CloudMap mapping for" /> + <param name="sample" type="text" label="mapping sample name" help="the sample to perform mutation mapping for" /> <param name="seqdict" type="boolean" checked="true" label="Generate species configuration file for CloudMap" /> - </inputs> <outputs> @@ -50,22 +57,26 @@ **What it does** -The purpose of this tool is to provide compatibility of the MiModD analysis workflow with the external `CloudMap`_ *EMS Variant Density Mapping*, *Variant Discovery Mapping* and *Hawaiian Variant Mapping* tools. - -These tools complement MiModD by providing easily interpreted visualizations of mapping-by-sequencing analysis workflows. +The purpose of this tool is to provide compatibility of the MiModD analysis workflow with the external `CloudMap`_ *EMS Variant Density Mapping*, *Variant Discovery Mapping* and *Hawaiian Variant Mapping* tools. These tools complement MiModD by providing easily interpreted visualizations of mapping-by-sequencing analysis workflows. The tool converts a VCF file as generated by the *Extract Variant Sites* or *VCF Filter* tools to the format expected by the *CloudMap* series of tools. Optionally, it also extracts the chromosome names and sizes and reports them in the *CloudMap* *species configuration file* format. -Such a file is required as input to the current versions of the *CloudMap* *Hawaiian* and *Variant Density* mapping tools, if you are working with a species other than the natively supported ones (i.e., other than *C. elegans* or *A. thaliana*). +Such a file is required as input to the current versions of the *CloudMap* *Hawaiian* and *Variant Density* mapping tools, if you are working with a species other than the natively supported ones (i.e., other than *C. elegans*, *A. thaliana* or *Brachypodium distachyon*). To use the output datasets of the tool with *CloudMap*, you only have to upload them to any public Galaxy server that hosts *CloudMap* like, e.g., the main Galaxy server at https://usegalaxy.org . +**Notes:** + +1) Simple Variant Density (SVD) Mapping mode generates output for use with the CloudMap EMS Variant Density Mapping tool. The aim of SVD analysis is to identify clusters of variants that appear linked to a mutant phenotype selected for during several rounds of outcrossing or backcrossing to a non-mutagenized strain. The "mapping sample" is the out-/backcrossed strain and only its variants are taken into account for the analysis. + .. class:: warningmark EMS Variant Density Mapping is currently limited to *C. elegans* and other species with six chromosomes on the *CloudMap* side. -More information on combining MiModD and CloudMap in mapping-by-sequencing analyses can be found in the `corresponding section of the MiModD User Guide`_. +2) Variant Allele Frequency (VAF) Mapping mode generates output for use with the CloudMap Variant Discovery or Hawaiian Variant Mapping tools. The aim of VAF analysis is to identify clusters of variants with (near) homozygous inheritance in a F2 population obtained from a cross between a mutant strain of interest and an unrelated mapping strain. Here, the "mapping sample" is the pooled F2 population. To analyze inheritance patterns this mode **requires either** a list of variants that could have been inherited through the mapping strain, i.e. the "unrelated parent strain", or through the mutant parent, i.e. through the "related parent strain". If variants are available for both parents, they can be analyzed together for higher mapping accuracy. + +3) More information on combining MiModD and CloudMap in mapping-by-sequencing analyses can be found in the `corresponding section of the MiModD User Guide`_. .. _CloudMap: https://usegalaxy.org/u/gm2123/p/cloudmap .. _corresponding section of the MiModD User Guide: http://mimodd.readthedocs.org/en/latest/cloudmap.html
--- a/convert.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/convert.xml Thu Jun 04 17:52:04 2015 +0200 @@ -6,6 +6,12 @@ <expand macro="requirements"/> <version_command>mimodd version -q</version_command> <command> + #if $str($mode.split_on_rgs) or $str($mode.oformat)=="fastq" or $str($mode.oformat)=="gz": + echo "Your input data is now getting processed by MiModD. The output will be split into several files based on the read groups found in the input.\nThis history item will remain in the busy state until the job is finished.\nAfter the job is showing as finished, Galaxy will start adding the results files to your history one by one.\n\nThis may take a while to complete! \n\nYou should refresh your history to see if new files have arrived.\n\nThis message is for your information only and can be deleted from the history once the job has finished." > $output_split_on_read_groups; + + mkdir converted_data; + #end if + mimodd convert #for $i in $mode.input_list @@ -17,30 +23,37 @@ #if $str($mode.header) != "None": --header "$(mode.header)" #end if - --ofile "$outputname" + + #if $str($outputname) == "None": + --ofile converted_data/read_group + #else + --ofile "$outputname" + #end if --iformat $(mode.iformat) --oformat $(mode.oformat) + ${mode.split_on_rgs} </command> <inputs> <conditional name="mode"> - <param name="iformat" type="select" label="input file format" help="Your choice will update the interface to display further choices appropriate for your type of input data."> + <param name="iformat" type="select" label="input file format" help="Your choice will update the interface to display further choices appropriate for your type of input data."> <option value="fastq">fastq: single-end (one file)</option> <option value="fastq_pe">fastq: paired-end (two files)</option> <option value="gz">gzip compressed fastq: single-end (one file)</option> <option value="gz_pe">gzip compressed fastq: paired-end (two files)</option> <option value="sam">sam</option> <option value="bam">bam</option> - </param> - <when value="fastq"> + </param> + <when value="fastq"> <param name="oformat" type="select" label="output file format"> <option value="sam">sam</option> <option value="bam">bam</option> </param> - <repeat name="input_list" title="fastq input dataset" default="1" min="1"> - <param name="file1" format="fastq" type="data" label="inputfile"/> - </repeat> - <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <repeat name="input_list" title="fastq input dataset" default="1" min="1"> + <param name="file1" format="fastq" type="data" label="inputfile"/> + </repeat> + <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <param name="split_on_rgs" type="hidden" value=""/> </when> <when value="fastq_pe"> <param name="oformat" type="select" label="output file format"> @@ -48,20 +61,22 @@ <option value="bam">bam</option> </param> <repeat name="input_list" title="fastq input datasets" default="1" min="1"> - <param format="fastq" name="file1" type="data" label="inputfile with the first set of reads of paired-end data"/> - <param format="fastq" name="file2" type="data" label="inputfile with the second set of reads of paired-end data"/> + <param format="fastq" name="file1" type="data" label="inputfile with the first set of reads of paired-end data"/> + <param format="fastq" name="file2" type="data" label="inputfile with the second set of reads of paired-end data"/> </repeat> <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <param name="split_on_rgs" type="hidden" value=""/> </when> <when value="gz"> <param name="oformat" type="select" label="output file format"> <option value="sam">sam</option> <option value="bam">bam</option> </param> - <repeat name="input_list" title="fastq.gz input dataset" default="1" min="1"> - <param name="file1" format="data" type="data" label="inputfile"/> - </repeat> - <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <repeat name="input_list" title="fastq.gz input dataset" default="1" min="1"> + <param name="file1" format="data" type="data" label="inputfile"/> + </repeat> + <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <param name="split_on_rgs" type="hidden" value=""/> </when> <when value="gz_pe"> <param name="oformat" type="select" label="output file format"> @@ -69,37 +84,56 @@ <option value="bam">bam</option> </param> <repeat name="input_list" title="fastq.gz input datasets" default="1" min="1"> - <param format="data" name="file1" type="data" label="inputfile with the first set of reads of paired-end data"/> - <param format="data" name="file2" type="data" label="inputfile with the second set of reads of paired-end data"/> - </repeat> - <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <param format="data" name="file1" type="data" label="inputfile with the first set of reads of paired-end data"/> + <param format="data" name="file2" type="data" label="inputfile with the second set of reads of paired-end data"/> + </repeat> + <param name="header" type="data" format="sam" label="Use Header File" help="A SAM file with header information, as generated, for example, by the NGS Run Annotation Tool, that will be used to attach metainformation to the results file."/> + <param name="split_on_rgs" type="hidden" value=""/> </when> <when value="sam"> <param name="oformat" type="select" label="output file format"> <option value="bam">bam</option> + <option value="sam">sam</option> + <option value="fastq">fastq</option> + <option value="gz">gzipped fastq</option> </param> <repeat name="input_list" title="sam input dataset" default="1" min="1" max="1"> - <param name="file1" format="sam" type="data" label="inputfile"/> - </repeat> - <param name="header" type="hidden" value="None"/> + <param name="file1" format="sam" type="data" label="inputfile"/> + </repeat> + <param name="header" type="hidden" value="None"/> + <param name="split_on_rgs" type="boolean" truevalue="--split-on-rgs" falsevalue="" checked="false" label="Split output based on read group IDs" help="If the input file contains reads from different read groups, write them to separate output files; implied automatically for conversions to fastq and gzipped fastq format"/> </when> <when value="bam"> <param name="oformat" type="select" label="output file format"> <option value="sam">sam</option> + <option value="bam">bam</option> + <option value="fastq">fastq</option> + <option value="gz">gzipped fastq</option> </param> <repeat name="input_list" title="bam input dataset" default="1" min="1" max="1"> - <param name="file1" format="bam" type="data" label="inputfile"/> - </repeat> - <param name="header" type="hidden" value="None"/> + <param name="file1" format="bam" type="data" label="inputfile"/> + </repeat> + <param name="header" type="hidden" value="None"/> + <param name="split_on_rgs" type="boolean" truevalue="--split-on-rgs" falsevalue="" checked="false" label="Split output based on read group IDs" help="If the input file contains reads from different read groups, write them to separate output files; implied automatically for conversions to fastq and gzipped fastq format"/> </when> </conditional> </inputs> <outputs> <data name="outputname" format="bam" label="Converted reads from MiModd ${tool.name} on ${on_string}"> - <change_format> - <when input="mode.oformat" value="sam" format="sam" /> - </change_format> + <change_format> + <when input="mode.oformat" value="sam" format="sam" /> + </change_format> + <filter> + (not mode['split_on_rgs'] and mode['oformat'] not in ("fastq", "gz")) + </filter> + </data> + + <data name="output_split_on_read_groups" format="txt" label="MiModD ${tool.name} run on ${on_string}"> + <filter> + (mode['split_on_rgs'] or mode['oformat'] in ("fastq", "gz")) + </filter> + <discover_datasets pattern="__designation_and_ext__" directory="converted_data" visible="true" /> </data> </outputs> @@ -114,7 +148,7 @@ **Notes:** -1) In its standard configuration Galaxy will decompress any .gz files during their upload, so the option to align gzipped fastq input is useful only with customized Galaxy instances or by using linked files as explained in our `recipe for using gzipped fastq files in Galaxy`_ from the `MiModD user guide`_. +1) In its standard configuration Galaxy will decompress any .gz files during their upload, so the option to convert gzipped fastq input is useful only with customized Galaxy instances or by using linked files as explained in our `recipe for using gzipped fastq files in Galaxy`_ from the `MiModD user guide`_. 2) The tool can convert fastq files representing data from paired-end sequencing runs to appropriate SAM/BAM format provided that the mate information is split over two fastq files in corresponding order.
--- a/deletion_predictor.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/deletion_predictor.xml Thu Jun 04 17:52:04 2015 +0200 @@ -19,8 +19,8 @@ <param name="bamfile" type="data" format="bam" label="input BAM file" /> </repeat> <param name="covfile" type="data" format="bcf" label="BCF variant call file to extract coverage from" help="Use the Variant Calling tool to generate this file."/> - <param name="group_by_id" type="boolean" label="group reads based on read group id only" truevalue="-i" falsevalue="" checked="true" help="If selected, reads from different read groups will be treated strictly separate. If turned off, read groups with identical sample names are used together for identifying uncovered regions, but are still treated separately for the prediction of deletions." /> - <param name="include_uncovered" type="boolean" label="include low-coverage regions" truevalue="-u" falsevalue="" checked="true" help="If selected, regions that fulfill the coverage criteria below, but are not statistically significant deletions, will be included in the output." /> + <param name="group_by_id" type="boolean" label="group reads based on read group id only" truevalue="-i" falsevalue="" checked="false" help="If selected, reads from different read groups will be treated strictly separate. If turned off, read groups with identical sample names are used together for identifying uncovered regions, but are still treated separately for the prediction of deletions." /> + <param name="include_uncovered" type="boolean" label="include low-coverage regions" truevalue="-u" falsevalue="" checked="false" help="If selected, regions that fulfill the coverage criteria below, but are not statistically significant deletions, will be included in the output." /> <param name="max_cov" type="integer" value="0" label="maximal coverage allowed inside a low-coverage region (default: 0)" help="The maximal coverage at a site allowed to consider it as part of a low-coverage region" /> <param name="min_size" type="integer" value="100" label="minimal deletion size (default: 100)" help="A low-coverage region must consist of at least this number of consecutive bases below the maximal coverage to consider it in further analyses."/> </inputs>
--- a/snap_caller.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/snap_caller.xml Thu Jun 04 17:52:04 2015 +0200 @@ -31,13 +31,17 @@ #if $str($set.filter_output) != "off": --filter-output $set.filter_output #end if - #if $str($set.sort) != "off": ---sort $set.sort + #if $str($set.sort) == "off": +--no-sort + #end if + #if $str($set.mmatch_notation) != "general": +-X #end if - #if $str($set.mmatch_notation) == "general": --M - #end if ---max-mate-overlap '$set.max_mate_overlap' + #if $set.discard_overlapping_mates: +--discard-overlapping-mates + ## remove ',' (and possibly adjacent whitespace) and replace with ' ' + '#echo ("' '".join($set.discard_overlapping_mates.replace(" ", "").split(',')))#' + #end if --verbose " #end for @@ -144,7 +148,7 @@ <param name="filter_output" type="hidden" value="off"/> <param name="sort" type="hidden" value="0"/> <param name="mmatch_notation" type="hidden" value="general"/> - <param name="max_mate_overlap" type="hidden" value="0" /> + <param name="discard_overlapping_mates" type="hidden" value="" /> </when> ## change settings @@ -154,10 +158,9 @@ <param name="slack" type="float" value="0.3" label="hash table slack size (default: 0.3)" help="Corresponds to the -h option of SNAP index."/> ## paired-end specific options - <param name="sp_min" type="integer" value="100" label="minimum spacing to allow between paired ends (default: 100)" help="Corresponds to the first value of the SNAP option -s."/> - <param name="sp_max" type="integer" value="10000" label="maximum spacing to allow between paired ends (default: 10000)" help="Corresponds to the second value of the SNAP option -s."/> - <param name="max_mate_overlap" type="float" value="0" label="Maximal overlap between the reads in a pair (as a fraction of their combined length; default: 0, no overlap allowed)" help="If the reads of a read pair overlap by more than this fraction of their combined length, they are filtered out" /> - + <param name="sp_min" type="integer" value="100" label="minimum spacing to allow between paired ends (default: 100)" help="Corresponds to the first value of the SNAP option -s. Affects paired-end data only."/> + <param name="sp_max" type="integer" value="10000" label="maximum spacing to allow between paired ends (default: 10000)" help="Corresponds to the second value of the SNAP option -s. Affects paired-end data only."/> + <param name="discard_overlapping_mates" type="text" display="checkboxes" multiple="true" label="discard overlapping read pairs of type" help="Consider overlapping mate pairs of the given orientation type(s) anomalous and discard them; allowed values: RF, FR, FF, RR; multiple types may be specified as a comma-separated list and ALL can be used as a shortcut for discarding all overlapping mate pairs; leave blank to retain all overlapping pairs. Affects paired-end data only." /> <param name="maxdist" type="integer" value="8" label="edit distance (default: 8)" help="maximum edit distance allowed per read or pair (SNAP option -d); higher values allow more divergent alignments to be found, but increase the rate of misalignments."/> <param name="maxhits" type="integer" value="250" label="maximum hits per seed (default: 250)" help="Maximum hits to consider per seed (SNAP option -h); don't use a seed region in the alignment process if it matches more than maxhits regions in the reference genome. Higher values reduce the rate of misalignments, but reduce performance."/> <param name="confdiff" type="integer" value="2" label="confidence threshold (default: 2)" help="Confidence threshold (SNAP option -c); the minimum edit distance difference between two alternate alignments required to reject the poorer alignment as suboptimal; higher values increase the rate of ambiguously aligned reads."/> @@ -225,11 +228,14 @@ Optionally, a SAM header file can also be used to replace existing read-group information in a headered SAM/BAM input file. This can be used to resolve read-group ID conflicts between multiple input files at tool runtime. -4) Currently, you cannot configure aligner-specific options separately for specific input files from within this Galaxy tool. If you need this advanced level of control, you should use the command line tool ``mimodd snap-batch``. +5) The options available under *further parameter settings* can have **big** effects on the alignment quality. You are strongly encouraged to consult the `tool documentation`_ for detailed explanations of the available options. + +6) Currently, you cannot configure aligner-specific options separately for specific input files from within this Galaxy tool. If you need this advanced level of control, you should use the command line tool ``mimodd snap-batch``. .. _Fastq Manipulation category: https://toolshed.g2.bx.psu.edu/repository/browse_repositories_in_category?id=310ff67d4caf6531 .. _recipe for using gzipped fastq files in Galaxy: http://mimodd.readthedocs.org/en/latest/recipes.html#use-gzipped-fastq-files-in-galaxy .. _MiModD user guide: http://mimodd.readthedocs.org/en/latest +.. _tool documentation: http://mimodd.readthedocs.org/en/latest/tool_doc.html#snap </help> </tool>
--- a/snp_caller_caller.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/snp_caller_caller.xml Thu Jun 04 17:52:04 2015 +0200 @@ -25,7 +25,7 @@ <repeat name="list_input" title="Aligned reads input source" default="1" min="1"> <param name="inputfile" type="data" format="bam" label="input file" /> </repeat> - <param name="group_by_id" type="boolean" label="group reads based on read group id only" truevalue="-i" falsevalue="" checked="true" help="If selected, this option ensures that only the read group id (but not the sample name) is considered in grouping reads in the input file(s). If turned off, read groups with identical sample names are automatically pooled and analyzed together even if they come from different NGS runs." /> + <param name="group_by_id" type="boolean" label="group reads based on read group id only" truevalue="-i" falsevalue="" checked="false" help="If selected, this option ensures that only the read group id (but not the sample name) is considered in grouping reads in the input file(s). If turned off, read groups with identical sample names are automatically pooled and analyzed together even if they come from different NGS runs." /> <param name="no_md5_check" type="boolean" label="turn off md5 sum verification" truevalue="-x" falsevalue="" checked="false" help="leave turned on to avoid accidental variant calling against a wrong reference genome version (see the tool help below)." /> <param name="depth" type="integer" value="250" label="maximum per-BAM depth (default: 250)" help="to avoid excessive use of memory"/> </inputs>
--- a/tool_dependencies.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/tool_dependencies.xml Thu Jun 04 17:52:04 2015 +0200 @@ -7,10 +7,10 @@ <repository changeset_revision="1c337560fa56" name="package_python3_zlib_dependent_1_0" owner="wolma" prior_installation_required="True" toolshed="https://toolshed.g2.bx.psu.edu" /> </package> - <package name="mimodd" version="0.1.5.2"> + <package name="mimodd" version="0.1.6"> <install version="1.0"> <actions> - <action type="download_by_url">http://sourceforge.net/projects/mimodd/files/MiModD-0.1.5.2.tar.gz</action> + <action type="download_by_url">http://sourceforge.net/projects/mimodd/files/MiModD-0.1.6.tar.gz</action> <action type="set_environment_for_install"> <repository changeset_revision="1c337560fa56" name="package_python3_zlib_dependent_1_0" owner="wolma" toolshed="https://toolshed.g2.bx.psu.edu"> <package name="python3" version="3.4.1" />
--- a/toolshed_macros.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/toolshed_macros.xml Thu Jun 04 17:52:04 2015 +0200 @@ -1,7 +1,7 @@ <macros> <xml name="requirements"> <requirements> - <requirement type="package" version="0.1.5.2">mimodd</requirement> + <requirement type="package" version="0.1.6">mimodd</requirement> </requirements> </xml> </macros>
--- a/vcf_filter.xml Wed Feb 11 09:26:43 2015 -0500 +++ b/vcf_filter.xml Thu Jun 04 17:52:04 2015 +0200 @@ -41,7 +41,7 @@ #end if #if $vfilter: --vfilter - ## remove ',' (and possibly adjacent whitespace) and replace with ' ' + ## remove ',' and replace with ' ' "#echo ('" "'.join($vfilter.split(',')))#" #end if $vartype