View Issue Details

IDProjectCategoryView StatusLast Update
0001242WishesMacropublic2013-02-03 00:34
Reportervladr Assigned Tovskirdin  
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product Version2.0 
Fixed in Version2.0 
Summary0001242: Некорректная работа AKey$
DescriptionСогласно описанию "Оператор $AKey предназначен для вставки во входной буфер клавиши, вызвавшей макрос". На самом деле он вставляет не клавишу, вызвавшую макрос, а букву, на которую макрос повешен - вне зависимости от раскладки/регистра клавиатуры.
Steps To ReproduceЕсли повесить на [HKEY_CURRENT_USER\Software\Far2\KeyMacros\Dialog\a] макрос, состоящий из одного оператора - "AKey$", то во всех диалогах при нажатии соответствующей клавиши будет вставляться маленькая английская "a", хотя должна вставляться a/A/ф/Ф в зависимости от раскладки/регистра клавиатуры.
TagsNo tags attached.
Build1345

Relationships

related to 0001239 closedvskirdin Получение через AKey нажатой клавиши с учетом раскладки клавиатуры 

Activities

vskirdin

2010-01-13 09:27

administrator   bugnote:0004795

надо бы поправить Писание...
Так:

Оператор $AKey предназначен для вставки во входной буфер клавиши, на которую назначен вызывающийся макрос.

?

alexy

2010-01-13 09:37

administrator   bugnote:0004796

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

vskirdin

2010-01-13 14:53

administrator   bugnote:0004799

имеем на борту KEY_EVENT_RECORD
таки щё ви хотите из этой структуры? и по каким правилам?
(hint: 'F1' или 'ё')

alexy

2010-01-13 15:05

administrator   bugnote:0004800

Нужен доп. метод для получения реальной клавиши которую нажали для вызова макроса. Чтоб это нажатие можно было отправить дальше.

vskirdin

2010-01-13 15:18

administrator   bugnote:0004801

ну $AKey как раз, зачем лишнее...

alexy

2010-01-13 15:25

administrator   bugnote:0004802

$Akey не отдаёт оригинальную клавишу. Нажали "Ы", макрос на "s", $Akey вернёт "s" а надо "Ы".

vskirdin

2010-01-13 15:30

administrator   bugnote:0004803

Это я понимаю, потому и готов изменить не писание, а поведение...

Хмм... а че мы мучаемся? - мне достаточно в ответ на $AKey вернуть в "консоль" тот INPUT_RECORD, которым был вызван макрос... и счастье наступит!
Пошел пробовать :-)

alexy

2010-01-13 15:44

administrator   bugnote:0004804

Ну просто может кому то и текущий AKey тоже нужен.

vskirdin

2010-01-14 08:47

administrator   bugnote:0004807

vladr, проверь ка: http://skirda-file.googlecode.com/files/mantis.0001242.1.rar

vladr

2010-01-14 16:27

reporter   bugnote:0004809

Да, спасибо, все работает как надо!

vskirdin

2010-01-14 18:20

administrator   bugnote:0004810

для связанного 1239 аналогично делать?
или... параметр добавить (как возвращать - как назначенная клавиша или как "получилось")?

Kildor

2010-01-15 14:52

reporter   bugnote:0004811

Имхо более правильно через параметр. Не всегда хочется дополнительно обращать внимание на расладку, поэтому лучше обработать эту ситуацию заранее.

vskirdin

2010-01-17 16:15

administrator   bugnote:0004815

ок, тогда так
$AKey - всегда вернет то, что нажали
"V=akey(Mode[,Type])" - вернет как раньше, если второй параметр (а нужен ли?) равен 1. т.е. по умолчанию - вернет то, что нажали

vskirdin

2010-01-17 18:31

administrator   bugnote:0004816

build 1345

Issue History

Date Modified Username Field Change
2010-01-12 20:16 vladr New Issue
2010-01-13 09:27 vskirdin Note Added: 0004795
2010-01-13 09:37 alexy Note Added: 0004796
2010-01-13 14:53 vskirdin Note Added: 0004799
2010-01-13 15:05 alexy Note Added: 0004800
2010-01-13 15:18 vskirdin Note Added: 0004801
2010-01-13 15:25 alexy Note Added: 0004802
2010-01-13 15:30 vskirdin Note Added: 0004803
2010-01-13 15:44 alexy Note Added: 0004804
2010-01-14 08:47 vskirdin Note Added: 0004807
2010-01-14 08:47 vskirdin Status new => assigned
2010-01-14 08:47 vskirdin Assigned To => vskirdin
2010-01-14 08:48 vskirdin Relationship added related to 0001239
2010-01-14 16:27 vladr Note Added: 0004809
2010-01-14 18:20 vskirdin Note Added: 0004810
2010-01-15 14:52 Kildor Note Added: 0004811
2010-01-17 16:15 vskirdin Note Added: 0004815
2010-01-17 18:31 vskirdin Note Added: 0004816
2010-01-17 18:31 vskirdin Status assigned => feedback
2010-04-25 18:18 DrKnS Build => 1345
2010-04-25 18:18 DrKnS Status feedback => closed
2010-04-25 18:18 DrKnS Resolution open => fixed
2010-04-25 18:18 DrKnS Fixed in Version => 2.0
2013-02-03 00:34 alexy Severity minor => feature