diff bowtie2_wrapper.xml @ 3:ceb6467e276c draft

Uploaded
author devteam
date Mon, 09 Mar 2015 11:58:43 -0400
parents c1ec08cb34f9
children 1fc845afa3ac
line wrap: on
line diff
--- a/bowtie2_wrapper.xml	Fri Dec 12 11:12:27 2014 -0500
+++ b/bowtie2_wrapper.xml	Mon Mar 09 11:58:43 2015 -0400
@@ -1,4 +1,4 @@
-<tool id="bowtie2" name="Bowtie2" version="0.3">
+<tool id="bowtie2" name="Bowtie2" version="0.4">
     <!-- Wrapper compatible with Bowtie version 2.2.4 -->
     <description>- map reads against reference genome</description>
     <version_command>bowtie2 --version</version_command>
@@ -31,13 +31,13 @@
         
         ## Fastq inputs
         #if str( $library.type ) == "single":
-            -U "${input_1}"
+            -U "${library.input_1}"
             #if str( $library.unaligned_file ) == "true":
                 --un $output_unaligned_reads_l
             #end if
         #elif str( $library.type ) == "paired":
-            -1 "${input_1}"
-            -2 "${input_2}"
+            -1 "${library.input_1}"
+            -2 "${library.input_2}"
             #if str( $library.paired_options.paired_options_selector ) == "yes":
                 -I "${library.paired_options.I}"
                 -X "${library.paired_options.X}"
@@ -88,32 +88,34 @@
                 --trim5 "${analysis_type.input_options.trim5}"
                 --trim3 "${analysis_type.input_options.trim3}"
                 ${analysis_type.input_options.qv_encoding}
-                ${analysis_type.input_options.solexa-quals}
-                ${analysis_type.input_options.int-quals}
+                ${analysis_type.input_options.solexa_quals}
+                ${analysis_type.input_options.int_quals}
             #end if
             
             #if str( $analysis_type.alignment_options.alignment_options_selector ) == "yes":
-                -N "${$analysis_type.alignment_options.N}"
-                -L "${$analysis_type.alignment_options.L}"
-                -i "${$analysis_type.alignment_options.i}"
-                --n_ceil "${$analysis_type.alignment_options.n_ceil}"
-                --dpad "${$analysis_type.alignment_options.dpad}"
-                --gbar "${$analysis_type.alignment_options.gbar}"
-                ${analysis_type.alignment_options.ignore-quals}
+                -N "${analysis_type.alignment_options.N}"
+                -L "${analysis_type.alignment_options.L}"
+                -i "${analysis_type.alignment_options.i}"
+                --n-ceil "${analysis_type.alignment_options.n_ceil}"
+                --dpad "${analysis_type.alignment_options.dpad}"
+                --gbar "${analysis_type.alignment_options.gbar}"
+                ${analysis_type.alignment_options.ignore_quals}
                 ${analysis_type.alignment_options.nofw}
                 ${analysis_type.alignment_options.norc}
                 ${analysis_type.alignment_options.no_1mm_upfront}
                 #if str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "end-to-end":
                     --end-to-end
-                    --score-min "${$analysis_type.alignment_options.align_mode.core-min}"
+                    --score-min "${analysis_type.alignment_options.align_mode.score_min_ete}"
                 #elif str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "local":
                     --local
-                    --score-min "${$analysis_type.alignment_options.align_mode.core-min}"
+                    --score-min "${analysis_type.alignment_options.align_mode.score_min_loc}"
                 #end if
             #end if
             
             #if str( $analysis_type.scoring_options.scoring_options_selector ) == "yes":
-                --ma "${analysis_type.scoring_options.ma}"
+                #if ( str( $analysis_type.alignment_options.alignment_options_selector ) == "yes" and str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "local" ):
+                    --ma "${analysis_type.scoring_options.ma}"
+                #end if
                 --mp "${analysis_type.scoring_options.mp}"
                 --np "${analysis_type.scoring_options.np}"
                 --rdg "${analysis_type.scoring_options.rdg_read_open},${analysis_type.scoring_options.rdg_read_extend}"
@@ -132,13 +134,12 @@
             #end if
             
             #if str( $analysis_type.sam_options.sam_options_selector ) == "yes":
-                ${analysis_type.sam_options.no-unal}
-                ${analysis_type.sam_options.omit-sec-seq}
+                ${analysis_type.sam_options.no_unal}
+                ${analysis_type.sam_options.omit_sec_seq}
             #end if
             
             #if str( $analysis_type.other_options.other_options_selector ) == "yes":
-                ${analysis_type.other_options.reorder}
-                ${analysis_type.other_options.non-deterministic}
+                ${analysis_type.other_options.non_deterministic}
                 --seed "${analysis_type.other_options.seed}"
             #end if
         
@@ -148,7 +149,7 @@
         
         ## view/sort and output BAM file
         | samtools view -Su - | samtools sort -o - - > $output
-        
+
         ## rename unaligned sequence files
         #if $library.type == "paired" and $output_unaligned_reads_l and $output_unaligned_reads_r:
             #set left  = str($output_unaligned_reads_l).replace( '.dat', '.1.dat' )
@@ -189,17 +190,17 @@
                     </param>
                     <when value="yes">
                         <param name="I" type="integer" value="0" min="0" label="Set the minimum fragment length for valid paired-end alignments" help="-I/--minins;  E.g. if `-I 60` is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as `-X` is also satisfied).  A 19-bp gap would not be valid in that case.  If trimming options `-3` or `-5` are also used, the `-I` constraint is applied with respect to the untrimmed mates. The larger the difference between `-I` and `-X`, the slower Bowtie 2 will run.  This is because larger differences bewteen `-I` and `-X` require that Bowtie 2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), Bowtie 2 is very efficient. Default=0"/>
-                        <param name="X" type="integer" value="500" min="0" lable="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied).  A 61-bp gap would not be valid in that case.  If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Deafult=500"/>
-                        <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid.  Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. ` --ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriatefor Illumina's Paired-end Sequencing Assay)">
+                        <param name="X" type="integer" value="500" min="0" label="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied).  A 61-bp gap would not be valid in that case.  If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Default=500"/>
+                        <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid.  Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. `--ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriate for Illumina's Paired-end Sequencing Assay)">
                             <option value="--fr" selected="True">--fr</option>
-                            <option value="--rf">--fr</option>
+                            <option value="--rf">--rf</option>
                             <option value="--ff">--ff</option>
                         </param>
                         <param name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" checked="False" label="Disable no-mixed behavior" help="--no-mixed; By default, when `bowtie2` cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates; default=False"/>
                         <param name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" checked="False" label="Disable no-discordant behavior" help="--no-discordant; By default, `bowtie2` looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints (`--fr`/`--rf`/`--ff`, `-I`, `-X`); default=False"/>
-                        <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant.  See also: `Mates can overlap, contain or dovetail each other` in help section below; default=False"/>
-                        <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/>
-                        <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant.  See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/>
+                        <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant. Default=False"/>
+                        <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. Default=False"/>
+                        <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant. Default=False"/>
                     </when>
                     <when value="no">
                         <!-- do nothing -->
@@ -216,17 +217,17 @@
                     </param>
                     <when value="yes">
                         <param name="I" type="integer" value="0" min="0" label="Set the minimum fragment length for valid paired-end alignments" help="-I/--minins;  E.g. if `-I 60` is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as `-X` is also satisfied).  A 19-bp gap would not be valid in that case.  If trimming options `-3` or `-5` are also used, the `-I` constraint is applied with respect to the untrimmed mates. The larger the difference between `-I` and `-X`, the slower Bowtie 2 will run.  This is because larger differences bewteen `-I` and `-X` require that Bowtie 2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), Bowtie 2 is very efficient. Default=0"/>
-                        <param name="X" type="integer" value="500" min="0" lable="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied).  A 61-bp gap would not be valid in that case.  If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Deafult=500"/>
-                        <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid.  Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. ` --ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriatefor Illumina's Paired-end Sequencing Assay)">
+                        <param name="X" type="integer" value="500" min="0" label="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied).  A 61-bp gap would not be valid in that case.  If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Default=500"/>
+                        <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid.  Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. `--ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriate for Illumina's Paired-end Sequencing Assay)">
                             <option value="--fr" selected="True">--fr</option>
-                            <option value="--rf">--fr</option>
+                            <option value="--rf">--rf</option>
                             <option value="--ff">--ff</option>
                         </param>
                         <param name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" checked="False" label="Disable no-mixed behavior" help="--no-mixed; By default, when `bowtie2` cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates; default=False"/>
                         <param name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" checked="False" label="Disable no-discordant behavior" help="--no-discordant; By default, `bowtie2` looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints (`--fr`/`--rf`/`--ff`, `-I`, `-X`); default=False"/>
-                        <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant.  See also: `Mates can overlap, contain or dovetail each other` in help section below; default=False"/>
-                        <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/>
-                        <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant.  See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/>
+                        <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant. Default=False"/>
+                        <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. Default=False"/>
+                        <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant. Default=False"/>
                     </when>
                     <when value="no">
                         <!-- do nothing -->
@@ -294,16 +295,16 @@
                         <option value="no" selected="true">No</option>
                     </param>
                     <when value="yes">
-                        <param name="skip" type="integer" min="0" value="0" lable="Skip (i.e. do not align) the first that many reads or pairs in the input" help="-s/--skip; default=0"/>
-                        <param name="qupto" type="integer" min="-1" value="-1" label="Align the first that many reads or read pairs from the input (after the -s/--skip reads or pairs have been skipped), then stop" help="-u/--qupto; default=-1 (no limit)"/>
+                        <param name="skip" type="integer" min="0" value="0" label="Skip (i.e. do not align) the first that many reads or pairs in the input" help="-s/--skip; default=0"/>
+                        <param name="qupto" type="integer" min="1" value="100000000" label="Align the first that many reads or read pairs from the input (after the -s/--skip reads or pairs have been skipped), then stop" help="-u/--qupto; for default behavior (no limit) leave this value very large"/>
                         <param name="trim5" type="integer" min="0" value="0" label="Trim that many bases from 5' (left) end of each read before alignment" help="-5/--trim5; default=0"/>
                         <param name="trim3" type="integer" min="0" value="0" label="Trim that many bases from 3' (right) end of each read before alignment" help="-3/--trim3; default=0"/>
                         <param name="qv_encoding" type="select" display="radio" label="Select quality score encoding" help="See help below for more details">
-                            <option value="--phred33">Input qualities are ASCII chars equal to the Phred quality plus 33. This is also called the "Phred+33" encoding, which is used by the very latest Illumina pipelines (--phred33)</option>
-                            <option value="--phred64" selected="True">Input qualities are ASCII chars equal to the Phred quality plus 64. This is also called the "Phred+64" encoding (--phred64)</option>
+                            <option value="--phred33" selected="True">Input qualities are ASCII chars equal to the Phred quality plus 33. This is also called the "Phred+33" encoding, which is used by the very latest Illumina pipelines (--phred33)</option>
+                            <option value="--phred64">Input qualities are ASCII chars equal to the Phred quality plus 64. This is also called the "Phred+64" encoding (--phred64)</option>
                         </param>
-                        <param name="solexa-quals" type="boolean" truevalue="--solexa-quals" falsevalue="" checked="False" label="Convert input qualities from Solexa (which can be negative) to Phred (which can't). This scheme was used in older Illumina GA Pipeline versions (prior to 1.3)" help="--solexa-quals; default=False"/>
-                        <param name="int-quals" type="boolean" truevalue="--int-quals" falsevalue="" checked="False" label="Quality values are represented in the read input file as space-separated ASCII integers, e.g., 40 40 30 40..., rather than ASCII characters, e.g., II?I.... Integers are treated as being on the Phred quality scale unless --solexa-quals is also specified" help="--int-quals; default=False"/>
+                        <param name="solexa_quals" type="boolean" truevalue="--solexa-quals" falsevalue="" checked="False" label="Convert input qualities from Solexa (which can be negative) to Phred (which can't). This scheme was used in older Illumina GA Pipeline versions (prior to 1.3)" help="--solexa-quals; default=False"/>
+                        <param name="int_quals" type="boolean" truevalue="--int-quals" falsevalue="" checked="False" label="Quality values are represented in the read input file as space-separated ASCII integers, e.g., 40 40 30 40..., rather than ASCII characters, e.g., II?I.... Integers are treated as being on the Phred quality scale unless --solexa-quals is also specified" help="--int-quals; default=False"/>
                     </when>
                     <when value="no">
                         <!-- do nothing -->
@@ -316,25 +317,25 @@
                     </param>
                     <when value="yes">
                         <param name="N" type="integer" min="0" max="1" value="0" label="Set the number of mismatches to be allowed in a seed alignment during multiseed alignment (see `Multiseed alignment` section of help below)" help="-N; Can be set to 0 or 1. Setting this higher makes alignment slower (often much slower) but increases sensitivity; default=0"/>
-                        <param name="L" type="integer" min="0" value="20" label="Sets the length of the seed substrings to align during multiseed alignment (see `Multiseed alignment` section of help below)" help="-L; Smaller values make alignment slower but more senstive. Default: the `--sensitive` preset is used by default, which sets `-L` to 20 both in `--end-to-end` mode and in `--local` mode"/>
-                        <param name="i" type="text" value="S,1,1.15" size="10" label="Set a function governing the interval between seed substrings to use during multiseed alignment (see `Multiseed alignment` section of help below). Also see description of this option below in the help section" help="-i; Since it's best to use longer intervals for longer reads, this parameter sets the interval as a function of the read length, rather than a single one-size-fits-all number. For instance, specifying `-i S,1,2.5` sets the interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length. See also `Setting function options` below in help section. If the function returns a result less than 1, it is rounded up to 1. Default: the `--sensitive` preset is used by default, which sets `-i` to `S,1,1.15` in `--end-to-end` mode to `-i S,1,0.75` in `--local` mode"/>
-                        <param name="n_ceil" type="text" value="`L,0,0.15" label="Set a function governing the maximum number of ambiguous characters (usually `N`s and/or `.`s) allowed in a read as a function of read length" help="--n-ceil; For instance, specifying `-L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`, where x is the read length.  See also: [setting function options]. Reads exceeding this ceiling are [filtered out]. Default=`L,0,0.15`"/>
-                        <param name="dpad" type="integer" min="0" value="15" lable="Pad dynamic programming problems by that many columns on either side to allow gaps" help="--dpad; default=15"/>
+                        <param name="L" type="integer" min="0" max="32" value="22" label="Sets the length of the seed substrings to align during multiseed alignment (see `Multiseed alignment` section of help below)" help="-L; Smaller values make alignment slower but more sensitive. Default=22"/>
+                        <param name="i" type="text" value="S,1,1.15" size="10" label="Set a function governing the interval between seed substrings to use during multiseed alignment (see `Multiseed alignment` section of help below). Also see description of this option below in the help section" help="-i; Since it's best to use longer intervals for longer reads, this parameter sets the interval as a function of the read length, rather than a single one-size-fits-all number. For instance, specifying `-i S,1,2.5` sets the interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length. If the function returns a result less than 1, it is rounded up to 1. Default=`S,1,1.15`"/>
+                        <param name="n_ceil" type="text" value="L,0,0.15" label="Set a function governing the maximum number of ambiguous characters (usually `N`s and/or `.`s) allowed in a read as a function of read length" help="--n-ceil; For instance, specifying `L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`, where x is the read length. Reads exceeding this ceiling are filtered out. Default=`L,0,0.15`"/>
+                        <param name="dpad" type="integer" min="0" value="15" label="Pad dynamic programming problems by that many columns on either side to allow gaps" help="--dpad; default=15"/>
                         <param name="gbar" type="integer" min="0" value="4" label="Disallow gaps within that many positions of the beginning or end of the read" help="--gbar; default=4"/>
-                        <param name="ignore-quals" type="boolean" truevalue="--ignore-quals" falsevalue="" selected="False" label="When calculating a mismatch penalty, always consider the quality value at the mismatched position to be the highest possible, regardless of the actual value" help="--ignore-quals; input is treated as though all quality values are high; default=False"/>
+                        <param name="ignore_quals" type="boolean" truevalue="--ignore-quals" falsevalue="" selected="False" label="When calculating a mismatch penalty, always consider the quality value at the mismatched position to be the highest possible, regardless of the actual value" help="--ignore-quals; input is treated as though all quality values are high; default=False"/>
                         <param name="nofw" type="boolean" truevalue="--nofw" falsevalue="" selected="False" label="Do not attempt to align unpaired reads to the forward (Watson) reference strand" help="In paired-end mode, `--nofw` and `--norc` pertain to the fragments; i.e. specifying `--nofw` causes `bowtie2` to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand. Default=False"/>
                         <param name="norc" type="boolean" truevalue="--norc" falsevalue="" selected="False" label="Do not attempt to align unpaired reads to the reverse (Crick) reference strand" help="In paired-end mode, `--nofw` and `--norc` pertain to the fragments; i.e. specifying `--nofw` causes `bowtie2` to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand. Default=False"/>
-                        <param name="no_1mm_upfront" type="boolean" truevalue="--no-1mm-upfront" falsevalue="" selected="False" label="Prevent searching for 1-mismatch end-to-end alignments before using the multiseed heuristic (see `Multiseed alignment` section of help baelow)" help="--no-1mm-upfront; By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch end-to-end alignment for the read *before* trying the [multiseed heuristic].  Such alignments can be found very quickly, and many short read alignments have exact or near-exact end-to-end alignments.  However, this can lead to unexpected alignments when the user also sets options governing the [multiseed heuristic], like `-L` and `-N`.  For instance, if the user specifies `-N 0` and `-L` equal to the length of the read, the user will be surprised to find 1-mismatch alignments reported.  This option prevents Bowtie 2 from searching for 1-mismatch end-to-end alignments before using the [multiseed heuristic], which leads to the expected behavior when combined with options such as `-L` and `-N`. This comes at the expense of speed; Default=False"/>
+                        <param name="no_1mm_upfront" type="boolean" truevalue="--no-1mm-upfront" falsevalue="" selected="False" label="Prevent searching for 1-mismatch end-to-end alignments before using the multiseed heuristic (see `Multiseed alignment` section of help below)" help="--no-1mm-upfront; By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch end-to-end alignment for the read *before* trying the multiseed heuristic.  Such alignments can be found very quickly, and many short read alignments have exact or near-exact end-to-end alignments.  However, this can lead to unexpected alignments when the user also sets options governing the multiseed heuristic, like `-L` and `-N`.  For instance, if the user specifies `-N 0` and `-L` equal to the length of the read, the user will be surprised to find 1-mismatch alignments reported.  This option prevents Bowtie 2 from searching for 1-mismatch end-to-end alignments before using the multiseed heuristic, which leads to the expected behavior when combined with options such as `-L` and `-N`. This comes at the expense of speed; Default=False"/>
                         <conditional name="align_mode">
                             <param name="align_mode_selector" type="select" display="radio" label="Select between `--local` and `--end-to-end` alignment modes" help="--local and --end-to-end; see help below for detailed explanation; default=--end-to-end">
                                 <option value="end-to-end" selected="True">End to End (--end-to-end)</option>
                                 <option value="local">Local (--local)</option>
                             </param>
                             <when value="end-to-end">
-                                <param name="score-min" type="text" value="G,20,8" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length.  See also: [setting function options].  The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/>
+                                <param name="score_min_ete" type="text" value="L,-0.6,-0.6" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length. The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/>
                             </when>
                             <when value="local">
-                                <param name="score-min" type="text" value="L,-0.6,-0.6" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length.  See also: [setting function options].  The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/>
+                                <param name="score_min_loc" type="text" value="G,20,8" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length. The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/>
                             </when>
                         </conditional>
                     </when>
@@ -369,10 +370,10 @@
                     <when value="no">
                         <!-- do nothing -->
                     </when>
-                    <when value="-k">
-                        <param name="k" type="integer" min="0" value="1" label="Searches for at most that many distinct, valid alignments for each read" help="-k; see detalied description of this option in the help section below. Note: Bowtie 2 is not designed with large values for `-k` in mind, and when aligning reads to long, repetitive genomes large `-k` can be very, very slow"/>
+                    <when value="k">
+                        <param name="k" type="integer" min="1" value="1" label="Searches for at most that many distinct, valid alignments for each read" help="-k; see detailed description of this option in the help section below. Note: Bowtie 2 is not designed with large values for `-k` in mind, and when aligning reads to long, repetitive genomes large `-k` can be very, very slow"/>
                     </when>
-                    <when value="-a">
+                    <when value="a">
                         <!-- do nothing here; set -a flag on the command line-->
                     </when>
                 </conditional>
@@ -382,7 +383,7 @@
                         <option value="no" selected="true">No</option>
                     </param>
                     <when value="yes">
-                        <param name="D" type="integer" value="15" min="0" label="Attemp that many consecutive seed extension attempts to `fail` before Bowtie 2 moves on, using the alignments found so far" help="-D; A seed extension `fails` if it does not yield a new best or a new second-best alignment.  This limit is automatically adjusted up when -k or -a are specified. Default=15"/>
+                        <param name="D" type="integer" value="15" min="0" label="Attempt that many consecutive seed extension attempts to `fail` before Bowtie 2 moves on, using the alignments found so far" help="-D; A seed extension `fails` if it does not yield a new best or a new second-best alignment.  This limit is automatically adjusted up when -k or -a are specified. Default=15"/>
                         <param name="R" type="integer" value="2" min="0" label="Set the maximum number of times Bowtie 2 will `re-seed` reads with repetitive seeds" help="When `re-seeding`, Bowtie 2 simply chooses a new set of reads (same length, same number of mismatches allowed) at different offsets and searches for more alignments.  A read is considered to have repetitive seeds if the total number of seed hits divided by the number of seeds that aligned at least once is greater than 300.  Default=2"/>
                     </when>
                     <when value="no">
@@ -396,8 +397,8 @@
                         <option value="no" selected="true">No</option>
                     </param>
                     <when value="yes">
-                        <param name="no-unal" type="boolean" truevalue="--no-unal" falsevalue="" label="Suppress SAM records for reads that failed to align" help="--no-unal; Default=False"/>
-                        <param name="omit-sec-seq" type="boolean" truevalue="--omit-sec-seq" falsevalue="" label="Suppress SEQ and QUAL strings for secondary alignments" help="--omit-sec-seq; Default=False"/>
+                        <param name="no_unal" type="boolean" truevalue="--no-unal" falsevalue="" label="Suppress SAM records for reads that failed to align" help="--no-unal; Default=False"/>
+                        <param name="omit_sec_seq" type="boolean" truevalue="--omit-sec-seq" falsevalue="" label="Suppress SEQ and QUAL strings for secondary alignments" help="--omit-sec-seq; Default=False"/>
                     </when>
                     <when value="no">
                         <!-- do nothing -->
@@ -409,9 +410,8 @@
                         <option value="no" selected="true">No</option>
                     </param>
                     <when value="yes">
-                        <param name="reorder" type="boolean" truevalue="--reorder" falsevalue="" label="Guarantee that output SAM records are printed in an order corresponding to the order of the reads in the original input file" help="--reorder; Default=False"/>
                         <param name="seed" type="integer" value="0" min="0" label="Use this number as the seed for pseudo-random number generator" help="--seed; Default=0"/>
-                        <param name="non-deterministic" type="boolean" truevalue="--non-deterministic" falsevalue="" label="Re-initialize the pseudo-random generator for each read using the current time" help="--non-deterministic; see Help below for explanation of this option; default=False"/>
+                        <param name="non_deterministic" type="boolean" truevalue="--non-deterministic" falsevalue="" label="Re-initialize the pseudo-random generator for each read using the current time" help="--non-deterministic; see Help below for explanation of this option; default=False"/>
                     </when>
                     <when value="no">
                         <!-- do nothing -->
@@ -442,7 +442,7 @@
             </actions>
         </data>
         
-        <data format="bam" name="output" label="${tool.name} on ${on_string}: aligned reads in BAM format">
+        <data format="bam" name="output" label="${tool.name} on ${on_string}: aligned reads (sorted BAM)">
           <actions>
             <conditional name="reference_genome.source">
               <when value="indexed">
@@ -461,6 +461,7 @@
             </conditional>
           </actions>
         </data>
+
     </outputs>
 
     <tests>
@@ -541,7 +542,7 @@
             pipelines.
 
     --phred64
-            Input qualities are ASCII chars equal to the [Phred quality] plus 64.  This is
+            Input qualities are ASCII chars equal to the Phred quality plus 64.  This is
             also called the "Phred+64" encoding.
 
     --solexa-quals
@@ -551,7 +552,7 @@
 
     --int-quals
             Quality values are represented in the read input file as space-separated ASCII integers, e.g., `40 40 30 40`..., rather than ASCII characters, e.g., `II?I`....
-            Integers are treated as being on the [Phred quality] scale unless
+            Integers are treated as being on the Phred quality scale unless
             `--solexa-quals` is also specified. Default: off.
                         
 ------
@@ -591,19 +592,19 @@
 **Alignment options**::
 
     -N &lt;int&gt;
-            Sets the number of mismatches to allowed in a seed alignment during [multiseed
-            alignment].  Can be set to 0 or 1. Setting this higher makes alignment slower
+            Sets the number of mismatches to allowed in a seed alignment during multiseed
+            alignment.  Can be set to 0 or 1. Setting this higher makes alignment slower
             (often much slower) but increases sensitivity.  Default: 0.
 
     -L &lt;int&gt;
-            Sets the length of the seed substrings to align during [multiseed alignment].
-            Smaller values make alignment slower but more senstive. Default: the
-            `--sensitive` preset is used by default, which sets `-L` to 20 both in
-            `--end-to-end` mode and in `--local` mode.
+            Sets the length of the seed substrings to align during multiseed alignment.
+            Smaller values make alignment slower but more sensitive. Default: the
+            `--sensitive` preset is used by default, which sets `-L` to 22 in
+            `--end-to-end` mode and to 20 in `--local` mode.
 
     -i &lt;func&gt;
             Sets a function governing the interval between seed substrings to use during
-            [multiseed alignment].  For instance, if the read has 30 characers, and seed
+            multiseed alignment.  For instance, if the read has 30 characers, and seed
             length is 10, and the seed interval is 6, the seeds extracted will be:
 
     Read:      TAGCTACGCTCTACGCTATCATGCATAAAC
@@ -620,7 +621,7 @@
     the interval as a function of the read length, rather than a single
     one-size-fits-all number.  For instance, specifying `-i S,1,2.5` sets the
     interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length.
-    See also: [setting function options]. If the function returns a result less than
+    If the function returns a result less than
     1, it is rounded up to 1. Default: the `--sensitive` preset is used by
     default, which sets `-i` to `S,1,1.15` in `--end-to-end` mode to `-i S,1,0.75`
     in `--local` mode.
@@ -629,8 +630,8 @@
             Sets a function governing the maximum number of ambiguous characters (usually
             `N`s and/or `.`s) allowed in a read as a function of read length.  For instance,
             specifying `-L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`,
-            where x is the read length.  See also: [setting function options].  Reads
-            exceeding this ceiling are [filtered out].  Default: `L,0,0.15`.
+            where x is the read length.  Reads exceeding this ceiling are filtered out.
+            Default: `L,0,0.15`.
 
     --dpad &lt;int&gt;
             "Pads" dynamic programming problems by `&lt;int&gt;` columns on either side to allow
@@ -658,14 +659,14 @@
 
     --no-1mm-upfront
             By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch
-            end-to-end alignment for the read *before* trying the [multiseed heuristic].  Such
+            end-to-end alignment for the read *before* trying the multiseed heuristic.  Such
             alignments can be found very quickly, and many short read alignments have exact or
             near-exact end-to-end alignments.  However, this can lead to unexpected
-            alignments when the user also sets options governing the [multiseed heuristic],
+            alignments when the user also sets options governing the multiseed heuristic,
             like `-L` and `-N`.  For instance, if the user specifies `-N 0` and `-L` equal
             to the length of the read, the user will be surprised to find 1-mismatch alignments
             reported.  This option prevents Bowtie 2 from searching for 1-mismatch end-to-end
-            alignments before using the [multiseed heuristic], which leads to the expected
+            alignments before using the multiseed heuristic, which leads to the expected
             behavior when combined with options such as `-L` and `-N`.  This comes at the
             expense of speed.
 
@@ -721,8 +722,7 @@
             Sets a function governing the minimum alignment score needed for an alignment to
             be considered "valid" (i.e. good enough to report).  This is a function of read
             length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f`
-            to `f(x) = 0 + -0.6 * x`, where `x` is the read length.  See also: [setting
-            function options].  The default in `--end-to-end` mode is `L,-0.6,-0.6` and
+            to `f(x) = 0 + -0.6 * x`, where `x` is the read length.  The default in `--end-to-end` mode is `L,-0.6,-0.6` and
             the default in `--local` mode is `G,20,8`.
                                         
 -----                                        
@@ -840,18 +840,15 @@
     --dovetail
             If the mates "dovetail", that is if one mate alignment extends past the
             beginning of the other such that the wrong mate begins upstream, consider that
-            to be concordant.  See also: [Mates can overlap, contain or dovetail each
-            other].  Default: mates cannot dovetail in a concordant alignment.
+            to be concordant.  Default: mates cannot dovetail in a concordant alignment.
 
     --no-contain
             If one mate alignment contains the other, consider that to be non-concordant.
-            See also: [Mates can overlap, contain or dovetail each other].  Default: a mate
-            can contain the other in a concordant alignment.
+            Default: a mate can contain the other in a concordant alignment.
 
     --no-overlap
             If one mate alignment overlaps the other at all, consider that to be
-            non-concordant.  See also: [Mates can overlap, contain or dovetail each other]. 
-            Default: mates can overlap in a concordant alignment.
+            non-concordant.  Default: mates can overlap in a concordant alignment.
                                 
 ------
 
@@ -866,9 +863,9 @@
     --rg &lt;text&gt;
             Add `&lt;text&gt;` (usually of the form `TAG:VAL`, e.g. `SM:Pool1`) as a field on the
             `@RG` header line.  Note: in order for the `@RG` line to appear, `--rg-id`
-            must also be specified.  This is because the `ID` tag is required by the [SAM
-            Spec][SAM].  Specify `--rg` multiple times to set multiple fields.  See the
-            [SAM Spec][SAM] for details about what fields are legal.
+            must also be specified.  This is because the `ID` tag is required by the SAM
+            Specification.  Specify `--rg` multiple times to set multiple fields.  See the
+            SAM Specification for details about what fields are legal.
 
     --omit-sec-seq
             When printing secondary alignments, Bowtie 2 by default will write out the `SEQ`