AutoHotKey: чтение двух символов подчеркивания - PullRequest
0 голосов
/ 25 сентября 2018

Одна часть моего скрипта AutoHotKey должна распознавать, если набрано __.

Следуя документации AutoHotKey , я попытался:

~__::
  tooltip,hi world
return

и получил эту ошибку:

Line Text: ~__::
Error: Invalid hotkey.

это не показывает ошибок,но работает только для одного подчеркивания:

~_::
  tooltip,hi world
return

это не показывает ошибок, но просто очищает __:

:*:__:: 
  tooltip,hi world
return

это показывает ошибку Error: Invalid hotkey.:

~:*:__:: 
  tooltip,hi world
return

это не показывает ошибок, но ничего не делает (Doku: Executehotstring ):

:X:~__::
  tooltip,hi world
return

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

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

2 блока кода функционально эквивалентны, и для 2 альтернатив в каждом блоке b0 предотвращаетавтоматический возврат, т. е. введенные подчеркивания не удаляются.

;:*?:__:: ;deletes the underscores
:b0*?:__:: ;does not delete the underscores
SoundBeep
return

;note: the X option requires AHK v1.1.28+
;:X*?:__::SoundBeep ;deletes the underscores
;:Xb0*?:__::SoundBeep ;does not delete the underscores
0 голосов
/ 25 сентября 2018

Этот AutoHotKey распознает, если набрано __:

countUnderscore :=0
~_::
     countUnderscore++
     if(countUnderscore == 2){
        tooltip, %countUnderscore% = countUnderscore
        countUnderscore := 0
      }
return
...