View Issue Details

IDProjectCategoryView StatusLast Update
0003303Wishes.PluginsLuaMacro / Macro Browserpublic2016-11-14 11:48
ReporterJohnDoeAssigned Toshmuel 
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Platformx86OSWindowsOS VersionXP SP3
Product Version3.0 
Target VersionFixed in Version 
Summary0003303: far.Menu: клавиши для BreakKeys
DescriptionПредлагаю принимать в качестве BreakKeys принятые в фаре обозначения клавиш, такие как CtrlAltEnter.
В InputRecord они легко переводятся через FarNameToInputRecord.

Как мне видится, можно внедрить это предложение сохранив совместимость со станой нотацией.

Ещё одно предложение: возможность указывать несколько клавиш, через пробел.
При возврате из Menu в BreakKey записывается реально нажатая
(Это используются мной на практике, через функцию-враппер)
Additional InformationВ тикете 0003134 предлагаются альтернативные улучшения
Имхо мои предложения последовательнее и значительно проще.
TagsNo tags attached.

Activities

shmuel

2016-10-22 19:56

developer   bugnote:0014947

Первая часть предложения реализована в билде 591 LuaFAR - можно проверять.
Насчёт второй части: пока не уверен, что буду делать.

JohnDoe

2016-10-25 17:48

updater   bugnote:0014954

Спасибо, буду первую часть внедрять.
Кстати, не стоит ли предпочесть именно этот стандарт наименования клавиш, описав только его в мануале? (оставить и старый, для совместимости)

И ещё, для элементов предусмотрено поле AccelKey, которое тоже было бы логично указывать строкой

shmuel

2016-10-25 19:02

developer   bugnote:0014955

Насчёт документации - я на данный момент консервативен, а дальше - видно будет.
Насчёт AccelKey - сделано в билде 592 LuaFAR.

shmuel

2016-11-13 19:16

developer   bugnote:0015006

LuaFAR 594: BreakKeys можно задавать строкой.

JohnDoe

2016-11-13 20:25

updater   bugnote:0015007

shmuel wrote

LuaFAR 594: BreakKeys можно задавать строкой.
Удобная возможность!
А несколько клавиш но в таблице планируется?
{{BreakKey="Ins CtrlF1"}}

shmuel

2016-11-13 20:37

developer   bugnote:0015008

JohnDoe wrote

А несколько клавиш но в таблице планируется?

Я думал об этом, но пришёл к выводу, что это ничего практически не добавит к тому, что сейчас есть, а документацию усложнит (боюсь, что описание far.Menu уже неудобоваримо).

Оригинальный вариант с отдельными таблицами имеет преимущество включения в эти таблицы специфических полей, например "action", "filename" и т.п., что позволяет упростить обработку возвращаемого значения. Вариант, добавленный в билде 594, упрощает код в тех случаях, когда эти специальные поля не употребляются. А тот вариант, о котором вы сейчас спросили, является фактически разновидностью "варианта 594", усложнит документацию, не добавляя функциональности.

JohnDoe

2016-11-13 20:43

updater   bugnote:0015009

shmuel wrote

Оригинальный вариант с отдельными таблицами имеет преимущество включения в эти таблицы специфических полей, например "action", "filename" и т.п.
Именно так.
Но и тут возможность перечисления нескольких клавиш способна упростить жизнь, поскольку часто нужны пары типа "Up Num8", "PgUp Num9"

shmuel

2016-11-13 20:55

developer   bugnote:0015010

Согласен, но мне кажется где-то нужно остановиться. Иначе для понимания статьи-описания far.Menu нужен будет уровень кандидата наук.

В качестве примера "перенасыщенной" функции (по моей вине) можете глянуть описание gsub в библиотеке lrexlib. far.Menu ещё до этого не дошла, и мне бы не хотелось.

JohnDoe

2016-11-14 11:09

updater   bugnote:0015015

Last edited: 2016-11-14 11:11

View 2 revisions

Согласен что перенасыщенность вредит (хотя far.Menu до lrexlib.gsub ещё очень далеко)

В защиту своей идеи скажу, что дополнение в документации потребовалось бы минимальное (в одну строку), и выглядело бы органично, ведь сейчас документация ссылается на макросы, а там возможность указывать несколько клавиш обычна.

P.S.
Настаивать не намерен, если это всё то можно закрывать тикет.

shmuel

2016-11-14 11:48

developer   bugnote:0015016

JohnDoe wrote

Настаивать не намерен, если это всё то можно закрывать тикет.

Согласен, что ваше предложение имеет смысл, но мне, честно говоря, уже надоело возиться с этой функцией. Поэтому закрываю.

Issue History

Date Modified Username Field Change
2016-09-12 21:23 JohnDoe New Issue
2016-10-22 19:56 shmuel Note Added: 0014947
2016-10-25 17:48 JohnDoe Note Added: 0014954
2016-10-25 19:02 shmuel Note Added: 0014955
2016-11-13 19:16 shmuel Note Added: 0015006
2016-11-13 19:16 shmuel Assigned To => shmuel
2016-11-13 19:16 shmuel Status new => feedback
2016-11-13 20:25 JohnDoe Note Added: 0015007
2016-11-13 20:25 JohnDoe Status feedback => assigned
2016-11-13 20:37 shmuel Note Added: 0015008
2016-11-13 20:43 JohnDoe Note Added: 0015009
2016-11-13 20:55 shmuel Note Added: 0015010
2016-11-14 11:09 JohnDoe Note Added: 0015015
2016-11-14 11:11 JohnDoe Note Edited: 0015015 View Revisions
2016-11-14 11:48 shmuel Note Added: 0015016
2016-11-14 11:48 shmuel Status assigned => closed
2016-11-14 11:48 shmuel Resolution open => fixed