Mercurial > repos > jjohnson > fgbio_sort_bam
changeset 1:cb58d1961fd3 draft
"planemo upload commit 692ea558cbbefee93859dc2b005fab5ac4970eb8"
author | jjohnson |
---|---|
date | Wed, 24 Feb 2021 13:02:43 +0000 |
parents | 286e35cf3f1c |
children | f8798f04ac47 |
files | fgbio_sort_bam.xml macros.xml macros.xml.bak |
diffstat | 3 files changed, 81 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/fgbio_sort_bam.xml Sun Feb 21 23:41:16 2021 +0000 +++ b/fgbio_sort_bam.xml Wed Feb 24 13:02:43 2021 +0000 @@ -6,17 +6,23 @@ <expand macro="requirements" /> <version_command>fgbio --version</version_command> <command detect_errors="exit_code"><![CDATA[ - fgbio SortBam" + fgbio SortBam --input '$input' - --sort-order=$sort_order + #if $sort_order + --sort-order=$sort_order + #end if --output '$output' ]]></command> <inputs> - <param name="input" type="data" format="bam,sam" label="SAM/BAM to sort"/> + <param name="input" type="data" format="unsorted.bam,bam,sam" label="SAM/BAM to sort"/> <expand macro="sam_sort_order" /> </inputs> <outputs> - <data name="output" format="unsorted.bam" /> + <data name="output" format="unsorted.bam" > + <!-- + <expand macro="sort_order_change_format" /> + --> + </data> </outputs> <help><![CDATA[ **fgbio SortBam**
--- a/macros.xml Sun Feb 21 23:41:16 2021 +0000 +++ b/macros.xml Wed Feb 24 13:02:43 2021 +0000 @@ -17,22 +17,33 @@ </xml> <xml name="sam_sort_order"> <param argument="--sort-order" type="select" optional="true" label="Sort BAM by"> + <option value="TemplateCoordinate">TemplateCoordinate</option> <option value="Coordinate">Coordinate</option> <option value="Queryname">Queryname</option> <option value="Random">Random</option> <option value="RandomQuery">RandomQuery</option> </param> </xml> + + <xml name="sort_order_change_format"> + <change_format> + <when input="sort_order" value="Coordinate" format="bam" /> + <when input="sort_order" value="TemplateCoordinate" format="bam" /> + <when input="sort_order" value="QueryName" format="unsorted.bam" /> + <when input="sort_order" value="Random" format="unsorted.bam" /> + <when input="sort_order" value="RandomQuery" format="unsorted.bam" /> + </change_format> + </xml> <token name="@READ_STRUCTURES_HELP@"><![CDATA[ **Read Structures** Read structures are made up of <number><operator> pairs much like the CIGAR string in BAM files. Four kinds of operators are recognized: - T identifies a template read - B identifies a sample barcode read - M identifies a unique molecular index read - S identifies a set of bases that should be skipped or ignored + - T identifies a template read + - B identifies a sample barcode read + - M identifies a unique molecular index read + - S identifies a set of bases that should be skipped or ignored The last <number><operator> pair may be specified using a + sign instead of number to denote “all remaining bases”. This is useful if, e.g., fastqs have been trimmed and contain reads of varying length. For example to convert a paired-end run with an index read and where the first 5 bases of R1 are a UMI and the second five bases are monotemplate you might specify:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/macros.xml.bak Wed Feb 24 13:02:43 2021 +0000 @@ -0,0 +1,56 @@ +<macros> + <token name="@TOOL_VERSION@">1.3.0</token> + <token name="@VERSION_SUFFIX@">0</token> + <xml name="requirements"> + <requirements> + <requirement type="package" version="@TOOL_VERSION@">fgbio</requirement> + <yield/> + </requirements> + </xml> + <token name="@READ_STRUCTURE_PATTERN@">(([1-9][0-9]*[TBMS])*([+]|[1-9][0-9]*)[TBMS])</token> + <token name="@READ_STRUCTURES_PATTERN@">@READ_STRUCTURE_PATTERN@(\s@READ_STRUCTURE_PATTERN@)*</token> + <xml name="read_structures_validator"> + <validator type="regex" message="">^@READ_STRUCTURES_PATTERN@$</validator> + </xml> + <xml name="sam_tag_validator"> + <validator type="regex" message="">^[A-Za-z][A-Za-z]$</validator> + </xml> + <xml name="sam_sort_order"> + <param argument="--sort-order" type="select" optional="true" label="Sort BAM by"> + <option value="Coordinate">Coordinate</option> + <option value="Queryname">Queryname</option> + <option value="Random">Random</option> + <option value="RandomQuery">RandomQuery</option> + </param> + </xml> + + <token name="@READ_STRUCTURES_HELP@"><![CDATA[ +**Read Structures** + +Read structures are made up of <number><operator> pairs much like the CIGAR string in BAM files. Four kinds of operators are recognized: + + - T identifies a template read + - B identifies a sample barcode read + - M identifies a unique molecular index read + - S identifies a set of bases that should be skipped or ignored + +The last <number><operator> pair may be specified using a + sign instead of number to denote “all remaining bases”. This is useful if, e.g., fastqs have been trimmed and contain reads of varying length. For example to convert a paired-end run with an index read and where the first 5 bases of R1 are a UMI and the second five bases are monotemplate you might specify: + +:: + + --input r1.fq r2.fq i1.fq --read-structures 5M5S+T +T +B + +Alternative if you know your reads are of fixed length you could specify: + +:: + + --input r1.fq r2.fq i1.fq --read-structures 5M5S65T 75T 8B + + +]]></token> + <xml name="citations"> + <citations> + <yield /> + </citations> + </xml> +</macros>