Ну да))
А в твой код я внес косметические изменения, ибо в девятке результат его действия некрасив - выделение то остается, только теперь от первой скобки до предпоследней буквы редактируемого отрывка)))) Сделал чтобы выделение "покрывало" все от первой до последней скобки

Код AS1/AS2:
function mc_onReleaseHandler():Void
{
if (beginIndex == endIndex)
return;
var newString:String = "[" + txt.text.substring(beginIndex, endIndex) + "]";
txt.replaceText(beginIndex, endIndex, newString);
Selection.setFocus(txt);
Selection.setSelection(beginIndex, endIndex+2);
delete beginIndex;
delete endIndex;
}
Ну в общем, ты молодец, нашел выход)))