Latest post of the previous page:
Для того, чтобы запомнить привязку макроса к левым контролам. Мне _лично_ различие между CtrlKey и LCtrlKey не нужно, но в принципе - задача легко решается...2useven10 wrote:А зачем нужны новые флажки?
Latest post of the previous page:
Для того, чтобы запомнить привязку макроса к левым контролам. Мне _лично_ различие между CtrlKey и LCtrlKey не нужно, но в принципе - задача легко решается...2useven10 wrote:А зачем нужны новые флажки?
Понятное дело, что если клавиша-модификатор нажимается, то она либо левая, либо правая; я и не предлагаю ввести какую-то ещё нейтральную. Речь идёт о привязке макросов к комбинациям с клавишами-модификаторами. Тут-то и было бы удобно иметь нейтральную привязку (binding), которая бы срабатывала и для левых, и для правых, если для них не прописаны специализированные собственные привязки. Нечто вроде наследования и перегрузки.2useven10 wrote:нет нейтральных модификаторов, то что без R - левый (shift это отдельная история)
Обобщённые модификаторы существуют только в спецификациях макросов.Smitis wrote:В 3078 произошло разделение модификаторов на точные и обобщённые. InputRecordToName по прежнему возвращает для левых модификаторов Ctrl Alt Shift без L.
Да, но InputRecordToName существует, что бы получать символьное представление клавиш в тех же макросах. В результате получается несоответствие названий.Shmuel wrote:Обобщённые модификаторы существуют только в спецификациях макросов.
Функция far.InputRecordToName не возвращает обобщённые модификаторы. Просто она представляет LCtrl в виде Ctrl и LAlt в виде Alt.
Действительно, есть несоответствие. Но реально, если учитывать эту особенность функции, оно не мешает. Я не хочу изменять поведение функции, чтобы не ломать существующие скрипты. А второй параметр, на мой взгляд, только внесёт путаницу.Smitis wrote:Да, но InputRecordToName существует, что бы получать символьное представление клавиш в тех же макросах. В результате получается несоответствие названий.
Есть несоответствие между тем, как представлена клавиша, заданная "снаружи", и "внутри" макроса.Shmuel wrote:Действительно, есть несоответствие. Но реально, если учитывать эту особенность функции, оно не мешает.
Лучше раз поломать, чем всю жизнь путаться.Shmuel wrote:Я не хочу изменять поведение функции, чтобы не ломать существующие скрипты.
И это правильно - не надо это менять.John Doe wrote:- Но akey(1) возвращает Ctrl или RCtrl
Ну так, вроде, если привязка без регэкспов - то все осталось по прежнему, просто Ctrl работает на обоих контролах. А регэкспы, это все-таки экзотика.John Doe wrote:Были уже споры о том как правильно, а как нет, но автор остался при своём мнении
Так второй параметр уже есть.Shmuel wrote:А второй параметр, на мой взгляд, только внесёт путаницу.
Регэкспы экзотика потому, что в 99% случаев они не нужны. Обычно макрос привязан к одной клавише.John Doe wrote:Регэкспы экзотика только для того, кто ещё не умеет их использовать