No meu dia a dia estou sempre digitando <kbd>Keyboard Character</kbd>
e gostaria de configurar uma macro no Ubuntu para entrar automaticamente <kbd> </kbd>
.
Eu gostaria de atribuí-lo para dizer Shift+ Control+ Kou qualquer combinação de caracteres de controle de teclado que não esteja atribuída e já seja usada pelo Ubuntu.
Na época dos programas MS-DOS TSR (Terminate and Stay Resident) isso era possível. Certamente deve estar no Ubuntu também?
Preciso escrever um daemon para fazer isso?
Encontrei outras perguntas sem respostas:Como posso atribuir macros às teclas do meu teclado no Ubuntu, semelhante às macros do teclado Razer no Windows?,o que é um bom gravador de macro de mouse/teclado?
Encontrei uma pergunta semelhante com uma resposta:Posso usar atalhos de teclado para implementar macros de texto?. No entanto, essa pergunta estipulava que a resposta não poderia ser AutoKey
.
Responder1
Pesquisei no Google e encontrei um programa chamado AutoKey (Autokey - utilitário Linux para teclas de atalho de substituição de texto) perto do topo da lista.
Em vez de uma tecla de atalho usando Ctrl+ Shift+ Koptei por atribuir a abreviatura kz
que é automaticamente expandida para <kbd></kbd>+
.
É simplesmente instalado usando:
sudo apt install autokey-gtk
Ele é instalado no Launcher e a tela é bem simples de usar:
Responder2
O que também pode ser feito é usar xdotool
with type
flag, assim:
bash -c ' sleep 0.5; xdotool getactivewindow type "<kbd></kbd>"'
Vá para Configurações do sistema-> Teclado-> Atalhos -> Personalizado e vincule esse comando a qualquer atalho de teclado desejado. Eu escolhi CtrlSuperK. O que acontece aqui é que damos ao usuário um atraso de 0,5 segundos para liberar o atalho do teclado e, em seguida, xdotool
digitamos as tags de marcação das teclas como se você estivesse fazendo isso sozinho no teclado. Abordagem muito fácil e simples. Na verdade, estou acostumado agora a colocar as 3 chaves acima.
Observe que xdotool
ele não vem com o Ubuntu por padrão, então você terá que instalá-lo viasudo apt-get install xdotool
Responder3
Se você tem umcomporarquivo você pode usá-lo como um utilitário de inserção de texto para pobres.
Você pode usar alguns dos modificadores no X. Aparentementevocê pode usar Shift
como modificador:
! Ctrl Shift <k> : "<kbd></kbd>"
Mas isso não funciona, pelo menos na minha máquina.
Nem isso funciona (omitido Shift
, maiúsculo K
):
! Ctrl <K> : "<kbd></kbd>"
No entanto, você pode usar Ctrl
e Ctrl
+ Alt
:
! Ctrl Alt <k> : "<kbd></kbd>"
! Ctrl <k> : "<kbd></kbd>"
Posicionando o cursor corretamente
Os mapeamentos acima colocarão o cursor após a string ( |
indica o cursor):
<kbd></kbd>|
Acho que não pode haver uma solução de uso geral para colocar o cursor dentro da tag; para isso, você precisaria usar uma ferramenta adequada à finalidade. Mas você pode colocar o cursor dentro da tag em determinados aplicativos.
Eu uso gnome-terminal
com o Bash, que usa atalhos de teclado readline (semelhante ao Emacs). Ctrl-b
é o atalho de teclado para retroceder um caractere. No meu terminal posso digitar Ctrl+v b
e obter o caractere de controle ^B
(U+0002 (Início do Texto)). Então digite seis destes caracteres no final da string:
! Ctrl Alt <k> : "<kbd></kbd>^B^B^B^B^B^B"
O cursor será colocado dentro da tagsevocê está dentro de um aplicativo que interpreta ^B
corretamente (por exemplo, terminais e Emacs):
<kbd>|</kbd>
Usando a tecla de composição
É claro que você pode usar a tecla de composição ( <Multi_key>
) para conseguir a mesma coisa. Por exemplo, use t
(“tag”) e k
(“teclado”):
<Multi_key> <t> <k> : "<kbd></kbd>^B^B^B^B^B^B"