Скрипт AutoHotkey для отправки фунта (£) при двойном нажатии Shift + 3 - PullRequest
3 голосов
/ 02 мая 2010

Я пытаюсь создать скрипт, который посылает фунт вместо доллара, когда вы удерживаете Shift и дважды быстро нажимаете 4.

Кто-нибудь видел какой-нибудь код, который делает подобные вещи?

EDIT: Хорошо, я видел некоторую документацию и смог получить ее, обнаружив двойной сдвиг + 3 нажатия, как это:

Shift & 4::
if (A_PriorHotkey <> "Shift & 4" or A_TimeSincePriorHotkey > 400)
{
    KeyWait, 4
    return
}
Send, £
return

Но по какой-то причине не могу заставить его отправить $. Есть идеи?

Ответы [ 4 ]

3 голосов
/ 24 августа 2010

Я получил ожидаемую функциональность, работающую в конце концов:

Shift & 4::
if (A_PriorHotkey <> "Shift & 4" or A_TimeSincePriorHotkey > 800)
{
    Send, {$}
    return
}
Send, {BS}
Send, £
return

Обычно, когда вы нажимаете Shift + 4, печатается доллар. Если вы по-прежнему удерживаете Shift и снова нажимаете 4, нажимается клавиша возврата и печатается символ £.

0 голосов
/ 02 декабря 2011

Раньше я делал это сложным образом, пока не понял, что решение очень простое:

: *: $$ :: £

Просто дважды нажмите знак $, чтобы получить £ (или €)

B.t.w. Я сделал то же самое для ", просто нажмите" дважды, чтобы получить "

: *: '' :: "{Space}

{пробел} требуется для меня, потому что "печатается только после того, как я нажму пробел. (Настройка голландского языка).

0 голосов
/ 11 мая 2010

Это работает?

Shift & 4::
KeyWait, 4  ; waits for '4' to be released
KeyWait, 4, D T.4   ; waits 400ms for 4 to be pressed again
Send %  ErrorLevel ? "{$}" : "{BS}{£}"
    ; if ErrorLevel=1 (4 not pressed) will send $ else will send {BS}£
return
0 голосов
/ 02 мая 2010

Как и в http://www.autohotkey.com/docs/KeyList.htm#SpecialKeys,, вы должны указать имя ключа в "".

 KeyWait, "3"
...