view macros.xml @ 2:b3c3217c0cbc draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ragtag commit 5b09d46d1096109a68a41ccd63813469ec8ea675
author iuc
date Fri, 14 Oct 2022 13:35:18 +0000
parents d110a4141898
children
line wrap: on
line source

<macros>
    <token name="@TOOL_VERSION@">2.1.0</token>
    <token name="@VERSION_SUFFIX@">1</token>
    <xml name="xrefs">
      <xrefs>
        <xref type="bio.tools">ragtag</xref>
      </xrefs>
    </xml>
    <xml name="requirements">
        <requirements>
            <requirement type="package" version="@TOOL_VERSION@">ragtag</requirement>
        </requirements>
    </xml>
    <xml name="citations">
        <citations>
            <citation type="doi">10.1186/s13059-019-1829-6</citation>
        </citations>
    </xml>
    <xml name="input_options">
        <param name="reference" type="data" format="fasta" label="Reference FASTA file"/>
        <param name="query" type="data" format="fasta" label="Query FASTA file" />
    </xml>
    <xml name="common_parameters">
        <param argument="-e" type="data" format="txt" optional="true" label="List of reference headers to ignore" 
            help="Use this parameter to provide a single column file listing any reference.fa headers that should 
                be ignored (e.g. chr0/chrUn or alt contigs)"/>
        <param argument="-j" type="data" format="txt" optional="true" label="List of query headers to leave uncorrected" 
            help="use this parameter to provide a single column file listing any query.fa headers that shall not be broken"/>
        <param argument="-f" type="integer" min="0" value="1000" label="Minimum unique single length" 
            help="If an alignment is not entirely unique, at least -f bp of the alignment must be unique to be considered 
                for scaffolding. By default, entirely unique alignments are considered regardless of their length, but 
                this can be disabled with --remove-small. Doing so ensures that only alignments at least -f bp in length 
                are considered for correction"/>
        <param argument="--remove-small" type="boolean" truevalue="--remove-small" 
            falsevalue="" checked="false" label="Remove unique alignments" 
            help="Remove unique alignments shorter than the minimum unique alignment length" />
        <param argument="-q" type="integer" min="0" value="10" label="Minimum mappping quality" 
            help="Mapping quality scores quantify the probability that a read is misplaced" />
        <param argument="-d" type="integer" min="0" value="100000" label="Maximum alignment merge distance" 
            help="For each query sequence, syntenic alignments within -d bp of each other are merged into longer alignments"/>        
        <conditional name="mapping_conditional">
            <param name="mapping_option" type="select" label="Aligner tool">
                <option value="nucmer">Nucmer</option>
                <!--Unimap is not included because according the minimap2 developers, minimap2 backports unimap features https://github.com/lh3/minimap2/releases/tag/v2.19
                <option value="unimap">Unimap</option>
                -->
                <option value="minimap2" selected="true">Minimap2</option>
            </param>
            <when value="nucmer">
                <param name="anchor_mode" type="select" label="Anchoring mode">
                    <option value="--mum">Use anchor matches that are unique in both the reference and query (--mum)</option>
                    <option value="--mumreference">Use anchor matches that are unique in in the reference but not necessarily unique in the query (--mumreference)</option>
                    <option value="--maxmatch" selected="true">Use all anchor matches regardless of their uniqueness (--maxmatch)</option>
                </param>
                <param argument="-l" type="integer" min="0" value="100" label="Minimun length of a single match"/>
                <param argument="-c" type="integer" min="0" value="500" label="Minimum length of a cluster of matches"/>
            </when>
            <when value="minimap2">
                <param argument="--mm2-params" type="select"
                    label="Select a profile of preset options"
                    help="Each profile comes with the preconfigured settings mentioned in parentheses" >
                        <option value="asm5">Asm5: the alignment will not extend to regions with 5% or higher sequence divergence (-k19 -w19 -A1 -B19 -O39,81 -E3,1 -s200 -z200 --min-occ-floor=100)</option>
                        <option value="asm10">Asm10: up to 10% sequence divergence (-k19 -w19 -A1 -B9 -O16,41 -E2,1 -s200 -z200 --min-occ-floor=100)</option>
                        <option value="asm20">Asm20: up to 20% sequence divergence (-k19 -w10 -A1 -B6 -O6,26 -E2,1 -s200 -z200 --min-occ-floor=100)</option>
                </param>
            </when>
        </conditional>
    </xml>
    <token name="@INPUTS@"><![CDATA[
        reference.fa
        query.fa
    ]]></token>
    <token name="@COMMON_PARAMETERS@"><![CDATA[
        --aligner $mode_conditional.advanced_options.mapping_conditional.mapping_option 
        #if $mode_conditional.advanced_options.mapping_conditional.mapping_option == 'nucmer'
            --nucmer-params '$nucmer_params'
        #else
            #if $mode_conditional.advanced_options.mapping_conditional.mm2_params == 'asm5'
                --mm2-params '-k19 -w19 -A1 -B19 -O39,81 -E3,1 -s200 -z200 --min-occ-floor=100'
            #else if $mode_conditional.advanced_options.mapping_conditional.mm2_params == 'asm10'
                --mm2-params '-k19 -w19 -A1 -B9 -O16,41 -E2,1 -s200 -z200 --min-occ-floor=100'
            #else
                --mm2-params '-k19 -w10 -A1 -B6 -O6,26 -E2,1 -s200 -z200 --min-occ-floor=100'
            #end if
        #end if
        #if $mode_conditional.advanced_options.e 
            -e '${mode_conditional.advanced_options.e}'
        #end if
        #if $mode_conditional.advanced_options.j
            -j '${mode_conditional.advanced_options.j}'
        #end if 
        -f $mode_conditional.advanced_options.f 
        --remove-small $mode_conditional.advanced_options.remove_small 
        -q $mode_conditional.advanced_options.q
        -d $mode_conditional.advanced_options.d
    ]]></token>
</macros>