Вроде разобрался, но там из истории не очень понятно почему флаг 4 работает только для $= и не работает для $~ (хоть и понятно, что там сложнее логика получается)…
У меня проблема: в ahk.coder не работают некоторые правила из Blocks: вроде
Code: Select all
$~.Read([Characters])
.Read($[Characters])
потому что планируемое употребление таких правил это написать "obj." и получить список (автодополнений) для всех методов (.Read(), .Write(), .Close()…), а оно не срабатывает, потому что перед аббревиатурой нет символа-разделителя.
Если сделать точку символом-разделителем, то можно отрезать у аббревиатур точку и они в принципе будут работать (если написать "obj.r", но у этого подхода есть и нежелательный побочный эффект: все остальные команды на букву r - тоже будут тоже появляться в списке автодополнения.
Использование regexp'а ограничено только для точных аббревиатур, а мне этот подход не нравится (от пользователя требуется запоминать правила).