Следующая/предыдущая вырожденная позиция
Макрос позволяет переходить к следующей либо предыдущей вырожденной позиции в нуклеотидной последовательности. По умолчанию использует клавиши CtrlN и CtrlShiftN
macro Descr = "Next or previous redundant position"
Key = "CtrlShiftN CtrlN"
Area = "Editor.'*.aln' Editor.'*.dna' Editor.'*.fasta'"
{{
BM.add();
%key = Key(#AKey);
$while(Editor.RealPos>1)
$if (%key == "RCtrlN" || %key == "CtrlN")
%delta=1;
$else
%delta=-1;
$end
Editor.Pos(1,5,Editor.Pos(0,5)+%delta);
%curChar=ucase(substr(Editor.Value,Editor.RealPos-1,1));
$if(%curChar!="A" && %curChar!="T" && %curChar!="G" && %curChar!="C" )
$exit
$end
$end
}}