
Este é um remaper de teclado de software de plataforma cruzada para Linux, MacOS e Windows. Um breve resumo dos recursos:
Para ver todos os recursos, consulte o guia de configuração.
Você pode encontrar binários pré-criados na página de lançamentos ou ler para obter instruções de construção.
Você pode ver uma lista de problemas conhecidos aqui.
Mostra a funcionalidade de várias camadas (30s, 1,7 MB).
Você pode conferir o simulador on -line para testar a validade da configuração e testar a simulação de entrada.
Imagine se, em vez de pressionar a mudança para digitar letras maiúsculas, tivemos teclados gigantes com teclas separadas para letras minúsculas e maiúsculas. Espero que todos possamos concordar: isso seria uma terrível experiência do usuário!
Uma maneira de pensar em como as teclas de mudança funcionam é que elas mudam sua entrada para outra camada de funcionalidade, onde agora você digita letras e símbolos maiúsculos em vez de letras e números minúsculos.
O que o Kanata permite que você faça é pegar esse conceito de camada alternativa que as teclas de mudança possuem e aplicá -lo a qualquer chave. Você pode personalizar o que essas camadas fazem para atender às suas necessidades e fluxos de trabalho exatos.
A atualmente a execução do Kanata não o inicia em um processo em segundo plano. Você precisará manter a janela que inicia o Kanata funcionando para manter o Kanata ativo. Algumas dicas para executar kanata em segundo plano:
Consulte a página de lançamentos para executáveis e instruções.
Este projeto usa a mais recente cadeia de ferramentas estáveis de ferrugem. Se você instalou o Rust Toolchain usando rustup , por exemplo, usando as instruções do site oficial, poderá obter a mais recente cadeia de ferramentas estável com rustup update stable .
Usando cargo install :
cargo install kanata
# On Linux and macOS, this may not work without `sudo`, see below
kanata --cfg <your_configuration_file>
Construa e corra em Linux:
git clone https://github.com/jtroo/kanata && cd kanata
cargo build # --release optional, not really perf sensitive
# sudo is used because kanata opens /dev/ files
#
# See below if you want to avoid needing sudo:
# https://github.com/jtroo/kanata/wiki/Avoid-using-sudo-on-Linux
sudo target/debug/kanata --cfg <your_configuration_file>
Construa e corra no Windows.
git clone https://github.com/jtroo/kanata; cd kanata
cargo build # --release optional, not really perf sensitive
targetdebugkanata --cfg <your_configuration_file>
Construa e corra -se no macOS:
Para MacOS versão 11 e mais recente: instale o driver Karabiner VirtualHidDevice.
Para ativá -lo:
/Applications/.Karabiner-VirtualHIDDevice-Manager.app/Contents/MacOS/Karabiner-VirtualHIDDevice-Manager activate
Para o MacOS versão 10 ou mais: instale a extensão do kernel Karabiner.
git clone https://github.com/jtroo/kanata && cd kanata
cargo build # --release optional, not really perf sensitive
# sudo is needed to gain permission to intercept the keyboard
sudo target/debug/kanata --cfg <your_configuration_file>
O guia de configuração completo é encontrado aqui.
Os arquivos de configuração de amostra são encontrados em cfg_samples. O arquivo simples.kbd contém um arquivo de configuração básico que, com sorte, é fácil de entender, mas não contém todos os recursos. O kanata.kbd contém um exemplo de todos os recursos com documentação. Os ativos de liberação também possuem um arquivo kanata.kbd que é testado para trabalhar com essa versão. Todos os nomes de chave podem ser encontrados no módulo Keys e você também pode definir seus próprios nomes de chave.
Ao construir a si mesmo ou usar cargo install , você pode adicionar sinalizadores de recursos que permitem a funcionalidade desligada por padrão.
Se você deseja ativar as ações cmd , adicione o sinalizador --features cmd . Por exemplo:
cargo build --release --features cmd
cargo install --features cmd
No Windows, se você deseja compilar um binário que usa o driver de interceptação, adicione o sinalizador --features interception_driver . Por exemplo:
cargo build --release --features interception_driver
cargo install --features interception_driver
Para combinar vários sinalizadores, use um sinalizador único --features e use uma vírgula para separar os recursos. Por exemplo:
cargo build --release --features cmd,interception_driver
cargo install --features cmd,interception_driver
kanata_wintercept.exe )As contribuições são bem -vindas!
A menos que seja explicitamente declarado o contrário, suas contribuições para a Kanata serão feitas sob a licença LGPL-3.0 somente*.
Alguns diretórios são exceções:
Aqui está um documento básico de design de baixo custo de Kanata
komorebi (Windows)Eu queria uma palavra "k", pois isso se relaciona com os teclados. Segundo a Wikipedia, Kanata é uma palavra iroqueiana indígena que significa "vila" ou "assentamento" e é a origem do nome do Canadá.
Há também ppt✧.
TLDR: O QMK aparece, mas para qualquer teclado, não apenas os mecânicos sofisticados.
Eu tenho alguns teclados que executam QMK. O QMK permite que o usuário personalize a funcionalidade do teclado no conteúdo de seu coração.
Um excelente caso de uso do QMK é o seu mapa de habilidades, para que elas se sobreponham às teclas da linha da casa, mas sejam acessíveis em outra camada. Não vou comentar sobre a produtividade, mas acho que isso ajuda muito no conforto do meu teclado.
Por exemplo, essas chaves estão no lado direito do teclado:
7 8 9
u i o
j k l
m , .
Em uma camada, tenho teclas de seta na mesma posição e, em outra camada, tenho um Numpad.
arrows: numpad:
- - - 7 8 9
- ↑ - 4 5 6
← ↓ → 1 2 3
- - - 0 * .
Pode -se acrescentar tantas personalizações quanto se gosta de melhorar o conforto, a velocidade, etc. Pessoalmente, meu principal motivador é o conforto devido a uma lesão repetitiva de tensão no passado.
No entanto, o QMK não funciona em todos os lugares. Na verdade, ele não é executado na maioria dos hardware que você pode obter. Você não pode fazer com que ele seja executado em um teclado laptop ou em qualquer teclado do escritório. Acredito que o conforto e o empoderamento que o QMK fornece devem estar disponíveis para qualquer pessoa com um computador em seu hardware existente, em vez de ter que comprar um teclado mecânico entusiasta (que é reconhecidamente muito bom - eu possuo alguns - mas posso ser caro).
A melhor solução alternativa que encontrei para teclados que não executam QMK foi o Kmonad. Este é um excelente projeto e eu recomendo se você quiser tentar algo semelhante.
A razão para a existência deste projeto é que o Kmonad está escrito em Haskell e não tenho idéia de como começar a contribuir para um projeto Haskell. Do ponto de vista de um estranho, acho que Haskell é uma ótima linguagem, mas eu realmente não consigo entender. E existem alguns problemas pendentes no momento da redação deste artigo que tornam o Kmonad subótimo para meus fluxos de trabalho pessoais.
Este projeto está escrito em ferrugem porque a ferrugem é minha linguagem de programação favorita e o trabalho anterior da incrível caixa de Keyberon existe.
O projeto mais semelhante é o Kmonad, que serviu de inspiração para Kanata. Aqui está um documento de comparação. Outros projetos semelhantes:
#[no_std] destinada ao firmware do tecladoEmbora o Kanata seja a melhor ferramenta para alguns, pode não ser a melhor ferramenta para você. Fico feliz em apresentá -lo a ferramentas que podem atender melhor às suas necessidades. Esta lista também é útil como referência/inspiração para funcionalidade que pode ser adicionada ao kanata.
O autor (JTroo) não aceitará doações monetárias para o trabalho em Kanata. Em vez disso, doe seu tempo e/ou dinheiro para caridade.
Alguns links estão abaixo. Esses links são fornecidos para aprendizado e como leituras interessantes. Eles não são um endosso.