Sobre o projeto

keymapper é um reconfigurador de teclas cross-platform e contextual, projetado para redesenhar layouts e atalhos do teclado, seja em todo o sistema ou por aplicativo. Permite que os usuários gerenciem todos os atalhos do teclado em um único arquivo de configuração, alterem ações semelhantes em diferentes aplicativos simultaneamente e compartilhem configurações entre GNU/Linux, Windows, macOS e FreeBSD. A ferramenta suporta o mapeamento direto de caracteres (não apenas teclas físicas), o lançamento de aplicativos via atalhos e o controle de estado por meio de ferramentas externas como keymapperctl. Botões e eventos da roda do mouse também podem ser mapeados. A configuração usa sintaxe simples com expressões de entrada/saída separadas por '>>', suportando modificadores, sequências, timeouts e teclas virtuais para troca de estado. Blocos contextuais permitem mapeamentos condicionais com base no título da janela, classe, caminho do processo, dispositivo ou estado dos modificadores. Funcionalidades avançadas incluem comandos abstratos, processamento em múltiplas etapas, saída ao soltar a tecla, digitação de caracteres, macros e diretivas para ajuste fino do comportamento. A instalação varia por SO: Linux requer configuração systemd e integração opcional com Wayland; macOS precisa do driver Karabiner-Elements; Windows oferece instaladores ou versões portáteis. O serviço executa como daemon privilegiado (keymapperd), enquanto o aplicativo voltado ao usuário (keymapper) lida com configuração e contexto. O controle externo via keymapperctl permite scripting, injeção de keystrokes, alternância de teclas virtuais e consulta de estado. Saída de emergência está disponível via Shift+Escape+K. Os arquivos de configuração são sensíveis a maiúsculas e minúsculas e suportam includes, aliases e filtros regex. Macros integradas permitem geração dinâmica de mapeamentos. Ideal para usuários avançados que buscam personalização profunda sem dependência de plataforma.