. Del
, всегда (то есть, независимо от активной клавиатурной раскладки) печатает точку. Вроде бы, он всегда так и делал. При этом, ни одно другое (из известных мне) приложение так не делает -- на английской раскладке все печатают точку, а на русской - запятую. И это вполне логично, потому что "правильный" десятичный разделитель для русского языка это - запятая (хотя вопрос этот спорный, так как единого предписывающего стандарта не существует). Но стандарты - стандартами, а отличие поведения Far от других приложений - налицо. А вопрос - почему так? Прошу прощения, если вопрос риторический.Какие символы вводят Decimal, Add, Subtract, Multiply, Divide
Numpad и десятичный разделитель
На данный момент Far, при включенном NumLock и нажатии клавиши
Last edited by plastikat on Wed 24 Jul, 2019 15:29, edited 1 time in total.
-
- Posts: 6820
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 528 times
Какие символы вводят Decimal, Add, Subtract, Multiply, Divide
У меня тоже (билд 5443). На 5400 всё нормально.
-
- Posts: 6820
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 528 times
Уменьшить скорость воспроизведения макроса
Похоже на это:
Code: Select all
drkns 23.07.2019 19:23:43 +0100 - build 5433
1. VK_DECIMAL не всегда то же самое, что и '.'.
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Глюки и баги, появившиеся в «ночных сборках»
Раньше было прибито гвоздями, что KEY_ADD, KEY_SUBTRACT, KEY_MULTIPLY, KEY_DIVIDE, KEY_DECIMAL - это
+ - * / .
.Сейчас берётся тот символ, который туда реально приходит от ОС.
В мапе, используемой в KeyNameToKey, нет сопоставленных символов, поэтому получается 0.
Их туда можно добавить конечно, но если у вас будет какая-то хитрая раскладка, в которой символы другие - фар об этом не узнает.
Если вам нужно ввести конкретные символы - надёжнее всего так и делать:
Keys("+ - * / .")
-
- Posts: 6820
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 528 times
Глюки и баги, появившиеся в «ночных сборках»
Макросы должны имитировать реальные нажатия клавиш. Если я нажимаю на Add в редакторе - печатается +, значит и макрос должен печатать +.
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Глюки и баги, появившиеся в «ночных сборках»
Допустим. Что делать с Decimal, который уже сейчас в разных раскладках печатает разное?
-
- Posts: 6820
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 528 times
Глюки и баги, появившиеся в «ночных сборках»
Для полноты картины - 2 неразрешённых тикета на багтрекере:
https://bugs.farmanager.com/view.php?id=2275
https://bugs.farmanager.com/view.php?id=2259
Мне кажется, пока не найдено идеальное решение, надо исходить из типичных случаев, а не экзотических. То есть, у подавляющего большинства пользователей на клавише Add нарисован +, значит да, прибьём этот плюс гвоздями. То же касается и Decimal, который у меня сейчас также приходит нулевым байтом (а на клавише нарисована точка, как, полагаю, у 99% участников данного форума.
Ну и как всегда остаётся возможность добавить настройки - для не-русских раскладок, но умолчания оставить какими они были прежде.
https://bugs.farmanager.com/view.php?id=2275
https://bugs.farmanager.com/view.php?id=2259
Мне кажется, пока не найдено идеальное решение, надо исходить из типичных случаев, а не экзотических. То есть, у подавляющего большинства пользователей на клавише Add нарисован +, значит да, прибьём этот плюс гвоздями. То же касается и Decimal, который у меня сейчас также приходит нулевым байтом (а на клавише нарисована точка, как, полагаю, у 99% участников данного форума.
Ну и как всегда остаётся возможность добавить настройки - для не-русских раскладок, но умолчания оставить какими они были прежде.
Глюки и баги, появившиеся в «ночных сборках»
А не правильнее ли, все-таки, из лейаута как-то брать символ? (возможно OemPeriod/Oemcomma)
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Какие символы вводят Decimal, Add, Subtract, Multiply, Divide
В них как раз всё ок.
Впрочем, как хотите, 5449.
Консольным приложениям такая роскошь недоступна.