Автодополнение в диалогах

Хотите говорить о Far и не знаете, куда обратиться?
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: автодополнение в диалогах

Post by DrKnS »

Latest post of the previous page:

NightRoman wrote:У меня глюки или нет? Мне казалось (но уже не уверен), что "пропускание макросов" вроде работало, начиная с какой-то версии, а теперь не работает опять.

Если поломалось, можно починить?
А если и не работало, можно попросить?
У меня вот всё работает.
Про отсутствие телепатов и культуру багорепортёрства напоминать или не надо?
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

Я ж говорю, что не уверен уже, что работало. ОК, ясно, работало. Или даже работает, но проблемы у меня. Описываю.

Дополнение в комстроке. На F9 у меня навешен TabExpansion через меню модуля PSF. Когда жму F9 при открытом списке дополнения, ничего не происходит, список дополнения все еще открыт и никакой TabExpansion не запустился, как и было когда-то в начале появления фичи.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

В догонку - проверил, в диалогах вроде все нормально, тот же мой F9-TabExpansion закрывает список и вызывает, что требуется. Значит, в комстроке только что-то отвалилось\поменялось\или-у-меня-чего.
Last edited by NightRoman on Thu 08 Apr, 2010 14:19, edited 1 time in total.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: автодополнение в диалогах

Post by DrKnS »

NightRoman wrote:На F9 у меня навешен TabExpansion через меню модуля PSF
Я про телепатов, кажется, уже говорил?

Как именно навешан? Текст макроса в студию.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

Такой макрос в области Common:
$If (Shell||Info||QView||Tree) F11 $If (Menu.Select("PowerShellFar", 2) > 0) Enter 7 $End $End
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

Либо такой макрос F9 тоже не идет в панелях, где "1" - это хоткей PSF
F11 1 7

Но я заметил вот что. Если тот же макрос повесить, скажем, временно на F7 в Shell, то работает.
UPD: see below.
Last edited by NightRoman on Thu 08 Apr, 2010 16:08, edited 2 times in total.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: автодополнение в диалогах

Post by DrKnS »

NightRoman wrote:Такой макрос в области Common:
$If (Shell||Info||QView||Tree) F11 $If (Menu.Select("PowerShellFar", 2) > 0) Enter 7 $End $End
1. И с какого бодуна ему работать, если у комплита своя отдельная макрообласть и в твоём $If() она не упомянута?
2. Мне очень интересно, как оно у тебя работало в диалогах, если диалоговая область тоже не упомянута? :)
User avatar
lordmuzer
Posts: 533
Joined: Mon 12 Nov, 2007 22:05
Location: Киев
Has thanked: 20 times
Contact:

Re: автодополнение в диалогах

Post by lordmuzer »

в списке дополнения странно работает фильтр по Ctrl+Alt+F.
если ввести недопустимый фильтр (при котором не должно быть строк в списке), сам список не очищается, но ведет себя так будто бы он пустой)
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

DrKnS wrote:
NightRoman wrote: 1. И с какого бодуна ему работать, если у комплита своя отдельная макрообласть и в твоём $If() она не упомянута?
2. Мне очень интересно, как оно у тебя работало в диалогах, если диалоговая область тоже не упомянута? :)
Понятно....
1) так значит все-таки ввели для комплита свою область? (зря, по-моему, но ввели, так ввели)
2) в диалоге другой макрос, конечно
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

Не. Что-то там не так.

Вот щас добавил в шелл такой Ф9 и удалил Ф9 из коммон:
F11 1 7
и оно работает прямо из области комплита.
*) Как оно работает в шелл, если у комплита отдельная область?
*) А раз оно работает в шелл, то почему не работает мой оригинальный макрос из коммон у которого в условии шелл указан?
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

Вобщем в таком виде макрос в Коммон работает
$If (Shell||Info||QView||Tree||AutoCompletion) F11 $If (Menu.Select("PowerShellFar", 2) > 0) Enter 7 $End $End

Спасибо за наводку на AutoCompletion для области Коммон.

Проблема решена, но смотри мое предыдущее сообщение. Что-то тут не чисто как-то все равно. Для Коммон надо упоминать AutoCompletion особо, а макрос чисто для Шелл запускается из AutoCompletion области без проблем.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

И кроме того получается, что для Коммон макроса
$If (Shell||Info||QView||Tree||AutoCompletion) F11 $If (Menu.Select("PowerShellFar", 2) > 0) Enter 7 $End $End
он должен запускаться и из диалогов, в момент когда там открыт AutoCompletion, так? А это не то, что в оригинале хотелось бы (Shell||Info||QView||Tree, то есть без диалогов).
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: автодополнение в диалогах

Post by DrKnS »

так значит все-таки ввели для комплита свою область?
Ну да, ввели. Причём ещё до "пропускания макросов".
Как оно работает в шелл, если у комплита отдельная область?
Сам же говоришь - "пропускание". Комплит не находит у себя макроса на ф9 и отдает кнопку дальше, дальше там шелл, шел находит у себя на ф9 макрос и исполняет его.
А раз оно работает в шелл, то почему не работает мой оригинальный макрос из коммон у которого в условии шелл указан?
Потому что макрос в коммон. А значит, исполняется где попало. "Где попало" сейчас - комплит. Макрос стартует, твой if проверяет область, видит комплит и макрос, как и просили, завершается.
Что-то тут не чисто как-то все равно.
Нет, всё предельно прозрачно.
он должен запускаться и из диалогов, в момент когда там открыт AutoCompletion, так?
Да.
А это не то, что в оригинале хотелось бы
допиши в начало $if(autocompletion) esc $end, дальше по тексту.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

Спасибо за подробные пояснения, честно. Теперь прозрачно. А без них было непрозрачно, и мы оба потратили время на разборки. Ну и еще какое-то время на доработку макросов положу у себя.

Покажите кто-нибудь хоть один реально полезный макрос для области автокомплита. Ради чего усложнение всего остального произошло с добавлением новой области? Я лично совсем не против, если польза есть, но пока ее не видно, все это просто противоречит здравому смыслу - усложнять остальное ради чего-то одного, что на деле не используется.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: автодополнение в диалогах

Post by DrKnS »

Покажите кто-нибудь хоть один реально полезный макрос для области автокомплита. Ради чего усложнение всего остального произошло с добавлением новой области?
Суть даже не в "полезных макросах". Комплит в любом случае имел бы область, отличающуюся от той, откуда его вызвали, т.к. не менять область чревато хаосом: панель и меню - совсем разные объекты, с совсем разной реакцией на одни и те же клавиши. Т. е. не ввели бы - была бы там область Menu и тебе её всё равно пришлось бы отдельно обрабатывать в макросах.
А т. к. это весьма специфичное меню с нестандатрным поведением - то и область отдельная.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: автодополнение в диалогах

Post by NightRoman »

DrKnS
Да это понятно. Но для меня эта область видится как "внутренняя" для Фара, а не для внешнего мира. Если макросы в этой области не планируются, то открывать ее наружу - только усложнять жизнь для остальных макросов.

Ну теперь, когда ты мне все втолковал, я конечно макросы все подбил, и все ОК стало. Я так и не понял, зачем это вообще нужно было делать. Но если это технологически нужная область, то все, я соглашаюсь - надо, значит надо. Только думаю, я далеко не последний "багрепортер" по этой теме, готовьтесь :).
Post Reply

Return to “Обсуждение Far Manager”