Você usou SetTitleMatchMode
para definir o modo de correspondência de títulos como 2
, o que significa que um título de janela pode conter o WinTitle em qualquer lugar dentro dele para ser compatível. Por isso, ele está tentando encontrar .* TeXnicCenter *.
na barra de título. Você deve remover .*
e *.
(a menos que a barra de título realmente contenha aqueles que, até onde eu sei, não ). Você pode definir o modo de correspondência de títulos como RegEx
se preferir usar a sintaxe regex (e, mesmo assim, o *.
está incorreto, deve ser .*
).
Quanto à classe, tive o mesmo problema com o GraphEdit, que para a janela principal tem uma classe de janela como Afx:1000000:b:10011:6:1070780
com o mesmo padrão, mas números diferentes para cada instância. Eu resolvi usando o modo regex ( SetTitleMatchMode, RegEx
) e um padrão como ^Afx:.+:.:.+:.:.+$
- você pode especificar o número exato de dígitos entre os dois pontos, mas é improvável que você precise para .
(Acabei por simplificar todo o processo usando grupos .)
Então, no seu caso, você usaria um dos seguintes:
SetTitleMatchMode, 2
SetTitleMatchMode, Slow
#IfWinActive, TeXnicCenter
!t::
Send \texttt{{}{}}
return
SetTitleMatchMode, regex
SetTitleMatchMode, Slow
#IfWinActive, .* TeXnicCenter *.
!t::
Send \texttt{{}{}}
return
Aqui está minha recomendação:
SetTitleMatchMode, regex
SetTitleMatchMode, Slow
GroupAdd, TXC, ^.*TeXnicCenter.*$ ahk_class ^Afx:.+:.:.+:.+:.*$
#IfWinExist, ahk_group TXC
!t::
Send \texttt{{}{}}
return
#IfWinExist