Область Автодополнение (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:

Область Автодополнение (AutoCompletion)

Post by NightRoman »

Импортнул макросы из Фар 2 с помощью скриптов, что тут выкладывались. Запускаю Фар 3, получаю кучу ошибок типа такой:

Code: Select all

╔══ Error parsing macro Common\CtrlBS ══╗
║ Line 1, Pos 6:                        ║
║ Unrecognized keyword 'AutoCompletion' ║
╟───────────────────────────────────────╢
║ "$If (AutoCompletion)"                ║
║       ↑                               ║
╟───────────────────────────────────────╢
║                { OK }                 ║
╚═══════════════════════════════════════╝
Что поменялось? Название области AutoCompletion? Или что-то еще не так?
User avatar
Skirda
Posts: 3475
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 8 times

Re: вопросы по Far 3.0

Post by Skirda »

NightRoman wrote:Что поменялось? Название области AutoCompletion? Или что-то еще не так?
changelog почитай
We are the Borg. You will be assimilated.
So Say We All!
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: вопросы по Far 3.0

Post by NightRoman »

Skirda wrote:changelog почитай
Ясно.. Не очень хорошо, имхо, предложение с флагом на Мантисе было лучше, кажется. Теперь (мне) везде придется писать if (Shell.AutoCompletion || Dialog.AutoCompletion) вместо if (AutoCompletion), таких макросов у меня пара десятков, а таких, где надо при этом знать, диалог или нет - кажется, ни одного.

Может, еще подумать насчет флага, а то как-то слишком лихо значительное изменение ввели, не обсудили нигде (кроме мантиса, 2 участника). Надо бы оценить каких юз-кейсов больше. Если уже сделано, конечно, то ОК. Но импорт макросов из 2 в 3 еще более усложнился.
User avatar
Skirda
Posts: 3475
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 8 times

Re: вопросы по Far 3.0

Post by Skirda »

NightRoman wrote:предложение с флагом на Мантисе было лучше
обсуждаемо.
We are the Borg. You will be assimilated.
So Say We All!
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: вопросы по Far 3.0

Post by NightRoman »

Skirda wrote:
NightRoman wrote:предложение с флагом на Мантисе было лучше
обсуждаемо.
Ну так я уже "обсудил" :) У меня 12 макросов, которые усложнились. Ни одного не упростилось. Новый подход мне был не нужен. Я не против доработок, которые новые возможности предоставляют для новых юз-кейсов. Но старые-то лучше не усложнять (те, что для строки редактора, им все равно диалог это или шелл).

Юз-кейс у меня впрочем один. Первое, что приходится делать, это убирать дополнение

Code: Select all

$If (Dialog.AutoCompletion || Shell.AutoCompletion)
	Esc
$End
Это стало сложнее, была одна проверка.

Потом, когда дополнение убрано, можно, кстати и проверить, диалог или шелл, так что решение-то было и раньше, пусть и несовершенное. А вообще, AutoCompletion в целом - это боль в ... для макросов. Фича знатная, слов нет. Но с макросами как-то неуклюже получается. Самое смешное, что область есть, а макросов для этой области либо нет, либо почти нет. Так теперь еще 2 таких области появилось.
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: вопросы по Far 3.0

Post by SUSim »

зато логичнее... меня автокомплит в диалогах устраивает, а вот в комстоке часто сбивает с толку, когда файлы в качестве параметра подставляешь по привычке а срабатывает автоподстановка (типа пишу fc жму CtrlEnter и стрелками на автомате пытаюсь выбрать второй файл, а получаю что стрелками я бегаю по авто списку дополнения а не по панели)...
у себя пока заменил $If (AutoCompletion) Esc $End на $If (Shell.AutoCompletion) Esc $End, пока вроде всё норм... если мои сотрудники выскажут притензии отпишусь!
SimSU ··· ·· -- ··· ··-
Maximus5
Posts: 3295
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 10 times
Contact:

Re: вопросы по Far 3.0

Post by Maximus5 »

Области-то разные. Почему бы по разному не назвать?
Вот у меня ShiftEnter запускает команду в новой вкладке. Для панелей.
А вот в диалоге - ShiftEnter нафиг не нужен.

С другой стороны, может быть добавить (оставить) булевский флаг AutoCompletion для страждущих? А Shell.AutoCompletion и Dialog.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: вопросы по Far 3.0

Post by NightRoman »

Maximus5 wrote:Области-то разные. Почему бы по разному не назвать?
А по мне - это области одинаковые. Как диалог запущенный из панелей или из редактора или вьюера -- это область Dialog, а не Shell.Dialog, Editor.Dialog, Viewer.Dialog.
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: вопросы по Far 3.0

Post by NightRoman »

Maximus5 wrote:Вот у меня ShiftEnter запускает команду в новой вкладке. Для панелей. А вот в диалоге - ShiftEnter нафиг не нужен.
Хорошо. А макрос сам для какой области определен? Для 2-х (Shell и Shell.AutoComplete) или один в Common?
Maximus5
Posts: 3295
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 10 times
Contact:

Re: вопросы по Far 3.0

Post by Maximus5 »

для 3-х :-P
Shell, QSearch, Shell.AutoComplete
зачем мне в других областях мусорить??

и диалог - это действительно диалог.
а дополнение - это нечто прозрачное и мешающее макросам
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: вопросы по Far 3.0

Post by NightRoman »

Maximus5 wrote:для 3-х :-P Shell, QSearch, Shell.AutoComplete зачем мне в других областях мусорить??
Еще и Tree можно добавить тогда. В таких случаях я пишу один в Common с проверками, чтобы не дублировать код. Ну это дело вкуса.
Maximus5 wrote:а дополнение - это нечто прозрачное и мешающее макросам
Об том и речь. Теперь мешается двумя сущностями, а не одной. Для всех макросов ориентированных на редактирование в строке редактора (диалог или шелл, а может еще что будет со временем?). Таких у меня много. Тебя может флаг и устроил бы, потребность только щас появилась, никто не просил, значит, было более-менее нормально. Вместо нового флага для нового виша ломаем то, что было, и делаем еще менее удобным. По мне это странно.
nh
Posts: 42
Joined: Fri 23 Dec, 2011 06:51

Re: вопросы по Far 3.0

Post by nh »

SUSim wrote:типа пишу fc жму CtrlEnter и стрелками на автомате пытаюсь выбрать второй файл, а получаю что стрелками я бегаю по авто списку дополнения а не по панели
Тоже постоянно маюсь с этой проблемой. В Far3 такого не будет? А в Far2 это как-то нельзя настроить?
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Re: Область Автодополнение (AutoCompletion)

Post by Max Rusov »

А Shell.AutoCompletion вообще работает? У меня всегда возвращается Dialog.AutoCompletion.
Far Manager v3.0 build 2350
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Область Автодополнение (AutoCompletion)

Post by SUSim »

Common макрос msgbox("",macroarea) возвращает Dialog.AutoCompletion хоть из диалога хоть из комстроки (при активном автодополнении конечно).
3.0 build 2350 x86 + XPx32 SP3
SimSU ··· ·· -- ··· ··-
User avatar
Skirda
Posts: 3475
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 8 times

Re: Область Автодополнение (AutoCompletion)

Post by Skirda »

починил (build 2352)
We are the Borg. You will be assimilated.
So Say We All!
Post Reply

Return to “Обсуждение макросов”