Faça o OSX ouvir uma sequência específica de chaves e execute [qualquer coisa]

0

Este é o caso de uso.

Eu uso aText, um expansor de texto. Ele tem uma tecla de atalho para mostrar uma lista de expansões de texto salvas. Eu quero remover a necessidade de pressionar manualmente esta tecla de atalho. Portanto, preciso que meu sistema operacional veja meu teclado e acione essa tecla automaticamente quando uma sequência específica for encontrada.

  1. Minha tecla de atalho para mostrar a lista de expansões de texto das expansões é CMD + SHIFT + S

  2. Todos os meus atalhos de expansão começam com ;;

  3. Quando eu escrevo ou pressiono ;; , quero que meu SO envie CMD + SHIFT + S para o sistema e, assim, acione a lista de expansores.

Isso é possível de alguma forma?

    
por Jonathan Winger-Lang 03.02.2015 / 11:46

1 resposta

0

Ok, então depois de alguns ajustes eu tenho um truque para fazer funcionar para mim e funciona um pouco assim.

1) Eu baixei um keylogger de código aberto, e modifiquei para não registrar nada, apenas escute.

...  
char * currentKey = convertKeyCode(keyCode);  
char * target = ";";  
if( currentKey == previousKey && currentKey == target ){
...

2) Quando ele vê que eu pressionei as duas chaves que eu escolho ele vai invocar um script de maçã como este

...
system("echo \"tell application \\"System Events\\" to keystroke \\"S\\" using {command down, shift down}\" | osascript");
...

Qual é a chave que tenho em aText.

Isso funciona muito bem, mas esperarei soluções mais simples antes de definir a pergunta como respondida.

    
por 03.02.2015 / 12:56