Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Здесь обсуждается всё, что касается макросов.
Post Reply
SMT
Posts: 12
Joined: Tue 05 Mar, 2013 19:27

Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by SMT » Tue 05 Mar, 2013 19:32

При установке этого файла теряется возможность быстро переходить на панели к файлу, который начинается с 'R'

Предлагаю исправить стандартный макрос, чтобы Alt-R делал XLat, когда в командной строке что-то есть и работал как поиск файла на 'R', если строка пуста:

Code: Select all

Macro {
  area="Editor Dialog Search"; key="AltR"; description="Use hotkey <Alt-R> to perform XLat function."; flags="DisableOutput"; action = function()
Keys('xlat')
  end;
}

Macro {
  area="Shell"; key="AltR"; description="Use hotkey <Alt-R> to perform XLat function."; flags="DisableOutput|NotEmptyCommandLine"; action = function()
Keys('xlat')
  end;
}

SMT
Posts: 12
Joined: Tue 05 Mar, 2013 19:27

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by SMT » Fri 08 Mar, 2013 03:14

в первом макросе из "area" надо исключить "Search"

Shmuel
Posts: 5900
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 23 times
Been thanked: 223 times

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by Shmuel » Fri 08 Mar, 2013 10:34

SMT wrote:в первом макросе из "area" надо исключить "Search"
И тем самым исключить функциональность макроса в области Search. :(

SMT
Posts: 12
Joined: Tue 05 Mar, 2013 19:27

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by SMT » Wed 27 Mar, 2013 19:31

всё верно. если ты через alt нашёл файл hello, то вряд ли в том же каталоге есть файл руддщ, который ты хотел найти вместо hello.
если же ты начал писать руддщ вместо hello, то поиск ничего не найдёт и Alt-R нажимать бесполезно - в поле ввода нет строки для конвертации.

если область Search не исключить, то при поиске файла, содержащего "R", надо отпускать Alt, что не всегда удобно.

Smitis
Posts: 1593
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 18 times
Been thanked: 36 times

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by Smitis » Wed 27 Mar, 2013 21:11

SMT
Почему бы просто не заменить AltR на нужную себе комбинацию, не мешающую поиску?
Разум когда-нибудь победит.

User avatar
Wave
Posts: 1771
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 4 times
Been thanked: 16 times

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by Wave » Wed 27 Mar, 2013 21:28

Но ведь SMT в данном случае прав, если человек уже начал набирать в быстром поиске в неверной раскладке, то просто не будет ничего набираться в лучшем случае, в худшем будет неверный результат.

У меня в каталоге есть файлы «copy.jpg», «phar.zip» и «задание.doc». Я начинаю набирать «сщзнюозп» и получаю в быстром поиске «з» и курсор установленный на «задание.doc». Потом делаю «Alt+R» и получаю в быстром поиске «p» и курсор установленный на «phar.zip». Т.е. абсолютно бесполезный в данной алгоритмике функционал.
Пользуюсь ФАРом больше 20 лет © собирательный.

Smitis
Posts: 1593
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 18 times
Been thanked: 36 times

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by Smitis » Wed 27 Mar, 2013 21:32

Ну, вам видней. Я-то себе все эти alt-буква давно отключил.
Разум когда-нибудь победит.

User avatar
Wave
Posts: 1771
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 4 times
Been thanked: 16 times

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by Wave » Wed 27 Mar, 2013 21:33

В лучшем случае стоит доработать макрос примерно так (синтаксис м.б. надо поправить):
if Area.Shell and (AKey == "AltR") and ([ком-строка пустая]) then Keys("Akey") exit() end
как-то так.
Пользуюсь ФАРом больше 20 лет © собирательный.

User avatar
John Doe
Бюрократ
Posts: 12467
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 200 times

Re: Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by John Doe » Thu 28 Mar, 2013 13:32

Wave

Code: Select all

Macro { description="XLat function";
  area="Common"; key="ShiftBS"; 
  condition=function()
    return not (Area.Search or Area.Shell and CmdLine.Empty)
  end;
  action = function()
    Keys('xlat')
  end;
}
Назначать макрос на AltR тоже считаю неудачной идеей, кстати в дистрибутиве есть ShiftBS.lua, кто может объяснить в каких случаях его действие отличается от простого вызова xlat?

User avatar
John Doe
Бюрократ
Posts: 12467
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 200 times

Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by John Doe » Wed 17 Dec, 2014 15:08

Предлагается в папке Addons\XLat\Russian 4 файла (AltR.lua, Apps.lua, CtrlR.lua, CtrlShiftX.lua) заменить одним:
XLat.lua wrote:

Code: Select all

Macro { description="Converts selection (or last word) using XLat function";
  area="Dialog Editor Shell QView Tree Info";
  key="ShiftBS";--CtrlShiftX --AltR --Apps --CtrlR
  condition = function() return Area.Dialog or Area.Editor or not CmdLine.Empty end;
  action = function()
    Keys"XLat"
  end;
}
Edit: собственно макрос на ShiftBS и так присутствует в папке Addons\Macros, поэтому предлагаю просто удалить макросы из Addons\XLat\Russian, заменив их ссылкой на макрос в соответствующей папке.

Edit 2: Улучшение макросов из поставки фара
Last edited by John Doe on Sat 10 Nov, 2018 17:02, edited 1 time in total.

User avatar
Skirda
Posts: 3474
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 3 times

Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by Skirda » Wed 17 Dec, 2014 15:14

John Doe wrote:Предлагается в папке Addons\XLat\Russian 4 файла (AltR.lua, Apps.lua, CtrlR.lua, CtrlShiftX.lua) заменить одним:
Что это даст кроме одного файла вместо нескольких?
Правильно я понимаю, что вместо копи-паста файла юзеру предлагается исправить твой вариант, скопировать в нужный каталог и пользоваться?
We are the Borg. You will be assimilated.
So Say We All!

User avatar
John Doe
Бюрократ
Posts: 12467
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 200 times

Ошибка в FAR3\Addons\XLat\Russian\AltR.lua

Post by John Doe » Wed 17 Dec, 2014 15:17

Skirda wrote: Что это даст кроме одного файла вместо нескольких?
Во-первых сам макрос исправлен.
Skirda wrote: Правильно я понимаю, что вместо копи-паста файла юзеру предлагается исправить твой вариант, скопировать в нужный каталог и пользоваться?
Скопировать, исправить (при необходимости), и пользоваться.
Способ идентичен для всех макросов в Addons, разве нет?

Post Reply

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