Индицировать привязку шортката к нативной команде Фара.

Вам не хватает чего-то в Far? Вы считаете, что вашу идею стоит услышать? Пишите сюда.
User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Thu 10 Aug, 2017 19:19

Latest post of the previous page:

Макросы в очередной раз обновлены.

Те два макроса из группы макросов, которые в предыдущих вариантах непосредственно обеспечивали переходы между меню "Исполнить макрос", теперь преобразованы в один. Это сделано для существенного облегчения последующего конструирования аналогичных макросов. Вероятно, данное обновление этого блока макросов завершающее.

Теперь это уже не прототипы, а один из тех блоков, из которых предполагается составить комплект макросов макрообласти Shell, индицирующих (демонстрирующих) нативные (внутренние) команды Far, а также ключи (хоткеи и шорткаты), на которые такие команды не назначены.

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sun 20 Aug, 2017 17:36

Макрос-справку о задействовании ключей в области Shell (т.е. в панелях ) нативными командами Far дополнил диалогами, информирующими о том, какая именно команда вызывается ключом. Большинство команд из этого же диалога могут быть инициированы.

Дополнение: Исправленный, дополненный и рефакторизованный.
Attachments
[({dot_[(J_справкаОзадействованииКлавишИихСочетанийНативнымиКомандамиВпанеляхFar[20170917](sToLpПоCapushonИzg)she.lua
(104.44 KiB) Downloaded 13 times
Last edited by sToLp on Sun 17 Sep, 2017 08:10, edited 3 times in total.

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Thu 24 Aug, 2017 16:59

Помаленьку составляю Макрос-справку о задействовании ключей нативными командами Far в макрообласти Editor (то бишь во внутреннем редакторе).

Согласно "Помощи по Фару в редакторе": "Alt-серые клав.курсора — Пометка вертикального блока". Однако каждый из этих ключей по mf.key(mf.waitkey(0,1)) почему-то распознаётся просто как "Alt".
А вот "Ctrl-Alt-серые клавиши" распознаются верно.

Подскажите, пожалуйста, в чём может быть дело?

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

Индицировать привязку шортката к нативной команде Фара.

Post by John Doe » Thu 24 Aug, 2017 19:29

Серые это обычные.
Ведь Alt+Numpad служит для ввода символов по их коду.

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Thu 24 Aug, 2017 20:36

John Doe wrote:
Thu 24 Aug, 2017 19:29
Серые это обычные.
Ведь Alt+Numpad служит для ввода символов по их коду.
Благодарю Вас за пояснение!

А то я по инерции под термином "серые" понимал "недоступные в определённых ситуациях" или "засеренные", т.е. "отключённые". Клавиатуры то нынче по большей части либо чёрные, либо белые сплошняком. С серыми когда то клавишами уже и забылись...

Теперь вроде бы увидел, что там, где в "Помощи" указаны именно "серые клавиши", то имеются ввиду "только серые клавиши", без Numpad`овских. И Вы доходчиво объяснили почему так.

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

Индицировать привязку шортката к нативной команде Фара.

Post by John Doe » Thu 24 Aug, 2017 21:01

Сам когда-то напоролся, и меня на этом же форуме просветили)

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sat 26 Aug, 2017 17:46

(т.е. во внутреннем редакторе) нативными командами Far. Вызываемые диалоги информируют о том, какая именно команда вызывается ключом. Большинство команд из этого же диалога могут быть инициированы.

Касательно применения ключей в редакторе кроме прочего необходимо учитывать следующее:

'Alt-Код символа' на дополнительной клавиатуре вставляет в редактируемую строку символ с указанным кодом (0-65535).

Касательно шортката CtrlShift0 в редакторе в системах от Vista и выше см. здесь.
Attachments
[({dot_[(J_справкаОзадействованииКлавишИихСочетанийНативнымиКомандамиВредактореFar(sToLpПоCapushonИzg)edi.lua
(56.06 KiB) Downloaded 27 times

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sun 27 Aug, 2017 14:09

о задействовании ключей (хоткеев и шорткатов) в макрообласти Viewer (внутренней программе просмотра) нативными командами Far.

Вызываемые диалоги информируют о том, какая именно команда вызывается ключом. Большинство команд из этого же диалога могут быть инициированы.
Attachments
[({dot_[(J_справкаОзадействованииКлавишИихСочетанийНативнымиКомандамиВпросмотрщикеFar(sToLpПоCapushonИzg)edi.lua
(35.08 KiB) Downloaded 31 times

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Thu 14 Sep, 2017 21:34

Макрос-справка о задействовании ключей в области Shell существенно обновлена.

А этому посту прилагается блок макросов, эмулирующих НАТИВНЫЕ команды Far, назначенные на ключи сборного диапазона клавиш в макрообласти Shell: "Esc BS Ins Del Home End PgUp PgDn Enter Space Up Down Left Right", применяемые со штатными модификаторами и их сочетаниями. С возможностью переходов по кругу вызываемых ими меню в группах данного диапазона, соответствующих модификаторам.
Опыт показал, что этот вариант справочных макросов может быть удобен при обращении с макросами, назначенными на одинаковые ключи.
Attachments
navi.7z
(10.39 KiB) Downloaded 14 times

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sun 17 Sep, 2017 16:03

Продолжая разбираться с ключами, задействованными под внутренние команды Far`а, натолкнулся на непонятный пока для себя момент с ключом Esc во взаимодействии его с традиционными модификаторами Ctrl, Alt, Shift и их сочетаниями.

В Win10 в "голый" Far 3.0.5032 x86 Esc с модификаторами, за исключением ShiftEsc, не пробиваются вовсе. А вот тот же Far, работающий в из-под ConEmu, эти ключи воспринимает. Но как!

ShiftEsc по mf.key(mf.waitkey(0,1)) опознаётся нормально, а вот остальные модификаторы, нажатые с Esc, опознаются Far`ом как "чистые" модификаторы/сочетания без Esc.

Code: Select all

CtrlEsc		Ctrl 
RCtrlEsc	RCtrl 

AltEsc		Alt 
RAltEsc 	RAlt 

CtrlAltEsc	CtrlAlt 
RCtrlAltEsc	RCtrlAlt 
CtrlRAltEsc	CtrlRAlt 
RCtrlRAltEsc	RCtrlRAlt 

CtrlShiftEsc	CtrlShift 
RCtrlShiftEsc	RCtrlShift 

AltShiftEsc	AltShift 
RAltShiftEsc	CtrlRAltShift — Ctrl ещё прилепился, дополнительная аномалия? 

CtrlAltShiftEsc 	CtrlAltShift 
RCtrlAltShiftEsc 	RCtrlAltShift 
CtrlRAltShiftEsc 	CtrlRAltShift 
RCtrlRAltShiftEsc 	RCtrlRAltShift
Вот я пока и не понимаю, как это лучше отразить в справке о задействовании ключей. Если написать, что они не заняты, то получается, что их, якобы, можно применить в макросах. Может что посоветуете?

Smitis
Posts: 1489
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 14 times
Been thanked: 24 times
Contact:

Индицировать привязку шортката к нативной команде Фара.

Post by Smitis » Sun 17 Sep, 2017 16:22

sToLp wrote:
Sun 17 Sep, 2017 16:03
Продолжая разбираться с ключами, задействованными под внутренние команды Far`а, натолкнулся на непонятный пока для себя момент с ключом Esc во взаимодействии его с традиционными модификаторами Ctrl, Alt, Shift и их сочетаниями.
CtrlEsc - открытие меню "Пуск"
CtrlShiftEsc - диспетчер задач
AltEsc, AltShiftEsc - переключение задач, но не совсем так, как AltTab
А что-то могли ещё добавить в десятке.
Last edited by Smitis on Sun 17 Sep, 2017 16:23, edited 1 time in total.
Разум когда-нибудь победит.

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

Индицировать привязку шортката к нативной команде Фара.

Post by John Doe » Sun 17 Sep, 2017 16:24

sToLp wrote:
Sun 17 Sep, 2017 16:03
В Win10 в "голый" Far 3.0.5032 x86 Esc с модификаторами, за исключением ShiftEsc, не пробиваются вовсе. А вот тот же Far, работающий в из-под ConEmu, эти ключи воспринимает. Но как!
Попробуйте с этим скриптом viewtopic.php?f=60&t=8481
Желательно без ConEmu.

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sun 17 Sep, 2017 16:53

John Doe wrote:
Sun 17 Sep, 2017 16:24
Попробуйте с этим скриптом viewtopic.php?f=60&t=8481
Желательно без ConEmu.
Этот скрипт установлен. Виноват, забыл об этом указать.

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sun 17 Sep, 2017 17:10

Smitis wrote:
Sun 17 Sep, 2017 16:22
CtrlEsc - открытие меню "Пуск"
CtrlShiftEsc - диспетчер задач
AltEsc, AltShiftEsc - переключение задач, но не совсем так, как AltTab
А что-то могли ещё добавить в десятке.
Да, они и срабатывают. До "голого" Far не доходят. Невзирая на XKeys. А вот ConEmu их как то перехватывает, но, увы, не вполне.

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

Индицировать привязку шортката к нативной команде Фара.

Post by John Doe » Sun 17 Sep, 2017 17:54

sToLp wrote:
Sun 17 Sep, 2017 16:03
Если написать, что они не заняты, то получается, что их, якобы, можно применить в макросах. Может что посоветуете?
"Недоступны"

User avatar
sToLp
Posts: 763
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 56 times
Been thanked: 5 times

Индицировать привязку шортката к нативной команде Фара.

Post by sToLp » Sun 17 Sep, 2017 18:03

John Doe wrote:
Sun 17 Sep, 2017 17:54
sToLp wrote:
Sun 17 Sep, 2017 16:03
Если написать, что они не заняты, то получается, что их, якобы, можно применить в макросах. Может что посоветуете?
"Недоступны"
Да, пожалуй, Вы правы. Получается, что именно недоступны для Far. Спасибо за подсказку.

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

Индицировать привязку шортката к нативной команде Фара.

Post by John Doe » Wed 27 Sep, 2017 08:19

Лучше собрать все макросы в одном посте.
И даже в одном макросе.
Посмотрел код, и рекомендую переписать таким образом.

Code: Select all

local cmds = {
  Viewer = {
    F1 = "Помощь - FAR\nПрограмма просмотра: клавиши управления",
    F2 = "Перенос строк (включён, выключен)",
    F3 = "Выход (NumPad5,F3,F10,Esc)",
  },
  --...
}

Macro {
  area="Common";  key="CtrlAltShift. CtrlAltJ";
  description="Справка о занятости клавиши / сочетания нативной командой Фара (sToLp по Capushon и zg)  CtrlAltShift.";
  action=function()
    local oldstate = mf.flock(0,0)
    local s = far.SaveScreen()
    far.Message(" Нажмите клавишу / сочетание ... ","","")
    local key = mf.waitkey()
    far.RestoreScreen(s)
    local area = Area.Current
    local msg = cmds[area][key]
    local title = area..": "..key
    if msg then
      local res = far.Message("вызывается внутренняя команда Far:\n\n"..msg,title,"Выполнить;Отменить")
      if res==1 then
        Keys(key)
      end
    else
      far.Message("Данный ключ не привязан к внутренней команде Far",title)
    end
    mf.flock(0,oldstate)
  end;
}
P.S.
Также хочу обратить ваше внимание, на существование аналогичного списка в поставке PowerShellFar: search.php?keywords=Show-KeyMap
(Сейчас его в поставке нет, вероятно потому что автору надоело обновлять вручную)
Last edited by John Doe on Wed 27 Sep, 2017 08:32, edited 1 time in total.

Post Reply

Return to “Предложения и идеи”