LOCUSPOCUS(1)

✨ LOCUSPOCUS ✨

okay bestie, welcome to locuspocus β€” it's a little command in the User Commands corner of your manual, and what it does is calculate locus coordinates for the given gene annotation. that's it, that's the whole job, and it does it gorgeously πŸ’…


🌸 SYNOPSIS 🌸

locuspocus [options] gff3file1 [gff3file2 gff3file3 ...]

so you hand it one GFF3 file, or like… a whole stack of them, and it goes to work. no cap. ✨


πŸ’– DESCRIPTION πŸ’–

she's got options, and we're gonna go through every single one, because knowing your flags is the whole vibe check 🫢

🌈 Basic options 🌈

the little starter pack, the bare necessities, the get-you-going trio:

  • -d, --debug β€” prints detailed debugging messages straight to your terminal (that's standard error, for the record) so you can see exactly what she's thinking πŸ‘€
  • -h, --help β€” prints this help message and then exits, like a polite queen πŸŽ€
  • -v, --version β€” prints the version number and exits. short, sweet, iconic ⭐

πŸ¦‹ iLocus parsing πŸ¦‹

this is where it gets juicy. interval loci, iLoci, the whole thing:

  • -l, --delta: INT β€” when parsing interval loci, use the following delta to extend gene loci and include potential regulatory regions; the default is 500
  • -s, --skipends β€” when enumerating interval loci, exclude unannotated (and presumably incomplete) iLoci at either end of the sequence πŸ™ˆ
  • -e, --endsonly β€” report only incomplete iLocus fragments at the unannotated ends of sequences. this is literally the complement of --skipends, so it's giving opposite-day energy πŸ’€
  • -y, --skipiiloci β€” do not report intergenic iLoci. that's it, she's skipping them, periodt βœ‹

πŸŽ€ Refinement options πŸŽ€

for when you want her to be picky about things:

  • -r, --refine β€” by default genes are grouped in the same iLocus if they have any overlap; refine mode allows for a more nuanced handling of overlapping genes. so like, she stops just mashing them together 🫢
  • -c, --cds β€” use CDS rather than UTRs for determining gene overlap; this implies refine mode. no take-backs, it comes as a package deal ✨
  • -m, --minoverlap: INT β€” the minimum number of nucleotides two genes must overlap to be grouped in the same iLocus; the default is 1

πŸ‘‘ Output options πŸ‘‘

how she presents her work, because presentation is everything:

  • -n, --namefmt: STR β€” provide a printf-style format string to override the default ID format for newly created loci. the default is 'locus%lu' (so: locus1, locus2, etc) for loci, and 'iLocus%lu' (so: iLocus1, iLocus2, etc) for interval loci. important bestie: the format string should include a single %lu specifier to be filled in with a long unsigned integer value πŸ’…
  • -i, --ilens: FILE β€” create a file with the lengths of each intergenic iLocus
  • -g, --genemap: FILE β€” print a mapping from each gene annotation to its corresponding locus to the given file
  • -o, --outfile: FILE β€” name of file to which results will be written; the default is the terminal (standard output), which is lowkey the classic move
  • -T, --retainids β€” retain original feature IDs from input files. > ⚠️ heads up: conflicts will arise if the input contains duplicated ID values. you've been warned, babe 😭
  • -t, --transmap: FILE β€” print a mapping from each transcript annotation to its corresponding locus to the given file
  • -V, --verbose β€” include all locus subfeatures (genes, RNAs, etc) in the GFF3 output; the default includes only locus features. so this one is the yapper, she says everything πŸ—£οΈ

πŸ“ Input options πŸ“

what you feed her, and how:

  • -f, --filter: TYPE β€” a comma-separated list of feature types to use in constructing loci/iLoci; the default is 'gene'
  • -p, --parent: CT:PT β€” if a feature of type $CT exists without a parent, create a parent for this feature with type $PT. for example, mRNA:gene will create a gene feature as a parent for any top-level mRNA feature. you can specify this option multiple times, stack them up, go off πŸ’œ
  • -u, --pseudo β€” correct erroneously labeled pseudogenes. she's fixing the mistakes, gently, with love 🧚

okay so that's the whole manual, start to finish, nothing skipped. this is locuspocus version 0.15.1, dated January 2016, and honestly? she's aged like fine wine 🍷✨ go forth and annotate, bestie, you've got this πŸ’–πŸ¦‹πŸŒΈ