esl-alirev - Man Page

reverse complement a multiple alignment


esl-alirev [options] msafile


esl-alirev reads the multiple alignment in msafile and outputs its reverse complement to stdout.

An example of where you might need to do this is when you've downloaded a chunk of multiway genomic alignment from one of the genome browsers, but your RNA of interest is on the opposite strand.

Any per-column and per-residue annotation lines are reversed as well, including Stockholm format and old SELEX format annotations. Annotations that Easel recognizes as secondary structure annotation (a consensus structure line, individual secondary structure lines) will be "reverse complemented" to preserve proper bracketing orders: for example, ...<<<...>>> is reverse complemented to <<<...>>>..., not simply reversed to >>>...<<<..., which would be wrong.

If msafile is - (a single dash), alignment input is read from stdin.

By default the output alignment is written in the same format as the input alignment. See the --outformat option to use a different output format.

Because the alignment is parsed into Easel's digital internal representation, the output alignment may differ in certain details from the original alignment; these details should be inconsequential but may catch your eye. One is that if you have a reference annotation line, Easel's output will put consensus residues in upper case, nonconsensus (inserted) residues in lower case. Another is that the headers for some formats, such as Clustal format, are written with an arbitrary version number - so you may find yourself revcomping an alignment in "MUSCLE (3.7) multiple sequence alignment" format and it could come out claiming to be a "CLUSTAL 2.1 multiple sequence alignment", just because Easel writes all of its Clustal format alignment files with that header.

The msafile must contain nucleic acid sequences (DNA or RNA). The alphabet will be autodetected by default. See the --dna or --rna options to assert an alphabet.



Print brief help;  includes version number and summary of all options, including expert options.

--informat <s>

Assert that input msafile is in alignment format <s>, bypassing format autodetection. Common choices for <s> include: stockholm, a2m, afa, psiblast, clustal, phylip. For more information, and for codes for some less common formats, see main documentation. The string <s> is case-insensitive (a2m or A2M both work).

--outformat <s>

Write the output alignment in alignment format <s>. Common choices for <s> include: stockholm, a2m, afa, psiblast, clustal, phylip. The string <s> is case-insensitive (a2m or A2M both work). Default is to use same format as the input msafile.


Assert that the msafile contains DNA sequences.


Assert that the msafile contains RNA sequences.

See Also



Nov 2020 Easel 0.48 Easel Manual