Использование различных сопоставлений для заглавных и строчных букв одной и той же клавиши

Использование различных сопоставлений для заглавных и строчных букв одной и той же клавиши

Я пытаюсь использовать AutoHotkey для сопоставления некоторых комбинаций клавиш таким образом, чтобы они учитывали верхний и нижний регистр, но не могу заставить это работать. Например: Я хочу:

AppsKey + L печатает «a» AppsKey + Shift + L печатает «b»

Мои неудачные попытки:

A. Обе комбинации дают только «b» («+», по-видимому, является символом сдвига):

AppsKey & l::Send a
AppsKey & +l::Send b

B. Не компилируется и выдает ошибку «неверная горячая клавиша»:

AppsKey & l::Send a
AppsKey & Shift & l::Send b

C. Не компилируется и выдает «ошибку дублирования горячих клавиш» (что вполне объяснимо, поскольку определения горячих клавиш, по-видимому, нечувствительны к регистру):

AppsKey & l::Send a
AppsKey & L::Send b

Возможен ли такой тип сопоставления в AutoHotkey? Что мне не хватает, чтобы это заработало?

решение1

На основе моей работы по этому вопросуЗамените [ на { и ] на } с помощью AutoHotkey, я бы использовал следующую логику:

AppsKey & l::
    if(GetKeyState("Shift"))
        SendInput, b
    else
        SendInput, a
    return

Связанный контент