uvviewsoft wrote:можно вклиниться. плагин вызывается по событию on_nnnnnn. можете в install.inf прописать это событие с приритетом.
Но тогда сразу две очевидные проблемы:
1. Нужно заранее знать, по каким событиям вызывается целевой плагин. И значит, система получится заточенной на конкретный набор плагинов, а любой новый плагин (или существенное изменение в перехватываемом плагине) пройдёт мимо неё.
2. В моём текущем представлении последовательность действий должна быть такой: сначала отрабатывает мой обработчик (как более приоритетный) и переводит "маркерное выделение" в обычное, потом начинает работать сторонний обработчик - и на этом всё. Обратное преобразование выделения в "маркерное" после работы стороннего плагина я не предполагаю, ведь этот плагин может и выделение сбросить, и текст существенно перелопатить. Поэтому до этого плагина не просто выделение преобразуется, но ещё и маркеры удаляются.
А перехватываемые события происходят независимо от того, установлен в редакторе тот сторонний плагин или нет. И если нет, то моя система каждый раз будет понапрасну проделывать свои манипуляции с выделениями. И не просто понапрасну, а ещё и терять свои выделения!
Похоже, остаётся два варианта: или делать систему, заточенную сугубо под используемый мной набор плагинов и только самому ей пользоваться, или предусмотреть явную команду преобразования в обычное выделение и вызывать её вручную по необходимости.