так значит все-таки ввели для комплита свою область?
Ну да, ввели. Причём ещё до "пропускания макросов".
Как оно работает в шелл, если у комплита отдельная область?
Сам же говоришь - "пропускание". Комплит не находит у себя макроса на ф9 и отдает кнопку дальше, дальше там шелл, шел находит у себя на ф9 макрос и исполняет его.
А раз оно работает в шелл, то почему не работает мой оригинальный макрос из коммон у которого в условии шелл указан?
Потому что макрос в коммон. А значит, исполняется где попало. "Где попало" сейчас - комплит. Макрос стартует, твой if проверяет область, видит комплит и макрос, как и просили, завершается.
Что-то тут не чисто как-то все равно.
Нет, всё предельно прозрачно.
он должен запускаться и из диалогов, в момент когда там открыт AutoCompletion, так?
Да.
А это не то, что в оригинале хотелось бы
допиши в начало $if(autocompletion) esc $end, дальше по тексту.