As is, alphabet_aliases = "AaBb" would treat a and B as equivalent. My understanding of the documentation is that alphabet_aliases = "AaBb" should imply the two equivalence pairs A/a and B/b but not a/B.
Additionally, it might be nice to explicitly specify in the documentation that you need specify only one ordering for each equivalence pair (i.e., alphabet_aliases = "AB" is equivalent to alphabet_aliases = "ABBA").
Unless I'm mistaken, I believe
i+=1
should bei+=2
in two places:https://github.com/jeffdaily/parasail/blob/600fb26151ff19899ee39a214972dcf2b9b11ed7/src/traceback.c#L43-L50
https://github.com/jeffdaily/parasail/blob/600fb26151ff19899ee39a214972dcf2b9b11ed7/src/cigar_template.c#L172-L179
As is,
alphabet_aliases = "AaBb"
would treata
andB
as equivalent. My understanding of the documentation is thatalphabet_aliases = "AaBb"
should imply the two equivalence pairsA
/a
andB
/b
but nota
/B
.Additionally, it might be nice to explicitly specify in the documentation that you need specify only one ordering for each equivalence pair (i.e.,
alphabet_aliases = "AB"
is equivalent toalphabet_aliases = "ABBA"
).Happy to submit a PR if that would help.