Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat(novas funcionalidades): Movimento do Cursor na Homerow e Executável Portátil no Windows #20

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

GabrielCoelho
Copy link

Movimentação do Cursor na Homerow

• modifier: ALTGR
• keys: H, T, N, C
• previousChar: ħ, ŧ, , ç

Objetivo
Visando evitar a Síndrome do Tunel do Carpo (CTS), sem sair da Home Row podemos acessar, nos teclados UNIX, as setas (movimentação do cursor) de modo mais fácil do que viajar o dedo mindinho, ou toda a mão para utilizá-las. Basta unir o modificador ALTGR + H | T | N | C para mover para ←↓→↑ (direita, baixo, esquerda e cima) respectivamente.

Comentário
Poderia utilizar a home row na mesma configuração do VIM, mas não facilitaria para boa parte das pessoas, então decidi manter o mesmo padrão das setas (T Invertido), em caracteres que não são tão utilizados no dia-a-dia.

Executável Portátil no Windows

• file: pkl.exe
• modifiers: somente o SHIFT

Objetivo
Estou cursando ADS na faculdade e os computadores que utilizamos são com usuário sem acesso a instalar quaisquer programas. Mesmo tentando argumentar com os professores e o coordenador sobre a possibilidade de instalarem um layout de teclado alternativo, a resposta foi negativa. Assim, buscando por soluções, encontrei este projeto de Teclado Portátil. Alterei apenas o necessário do teclado DVORAK para o BRDK e testei em uma máquina com Windows 11.

Comentário
Embora seja algo paliativo, ainda não consegui inserir todo o potencial e praticidade que o BRDK traz com seus modificadores. No caso, o aplicativo, por padrão, só permite o uso do SHIFT. Pretendo, ainda, mexer um pouco mais para fazer esta praticidade virar realidade.

Agradecimento

Queria deixar o meu sincero agradecimentos aos mantenedores deste projeto, em especial ao Nando por ter tido a ideia. No início deste ano, devido ao meu trabalho ser direto no computador com o uso extensivo do teclado, e digitando no Qwerty com apenas 3 dedos da mão esquerda e dois da mão direita, dores profundas no pulso ao fim do dia eram recorrentes. Depois de alongamentos, me deparei com o teclado-br aqui no Github e me forcei a aprender a escrever em outro layout, e com todos os dedos, utilizando verdadeiramente a Home Row.

As dores, antes constantes, sumiram, e em 3 meses eu consegui voltar a digitar bem chegando na média dos 50wpm(meu pico em qwerty era 104wpm, e 6 meses com o BRDK estou em 94wpm).

GabrielCoelho and others added 4 commits July 31, 2023 10:00
Inserted, under a modifier/layer, arrow movements so you can navigate through the files, or lines and webpages without moving your hand of the home row

- Movimentação do cursor via "Home Row" em uma das camadas/modificadores para reduzir as dores nos punhos, sobretudo da mão direita.
Fiz, também, a alteração no arquivo para teclado unix, já testado em
casa. Não obstante, alterei a informação do README bem como o tipo do
arquivo.
Em caso de utilização em um computador Windows sem acesso aos direitos
de administrador (Computadores de Escola, Faculdade, Empresas...) você
poderá rodar o `pkl.exe` para utilizar o layout BRDK, de modo simples,
isto é, apenas as teclas comuns e com o SHIFT (ALT, ALTGR não retornarão
caracter algum), e sem precisar instalar.
@nandoflorestan
Copy link
Owner

Olá Gabriel,

Legal o trabalho que você fez – mas o movimento do cursor dessa forma recai em questões de gosto pessoal.

Para mim pessoalmente, eu acho que acordes são as coisas mais difíceis de se fazer num teclado de computador, principalmente um que não seja ergonômico (usando o polegar para mais teclas que somente o espaço). Neste caso, eu não sei como você consegue segurar o AltGr e usar as teclas principais. Tudo com a mão direita? Super difícil. Passando a esquerda por baixo para segurar o AltGr? Mais difícil ainda.

Esta alteração inclusive conflita com outras que estou precisando fazer para meu próprio uso. Em primeiro lugar, o n com til é super importante para quem escreve em espanhol, não dá para piorar esse caso de uso tão importante. Em segundo lugar, aqui na Polônia eu não consigo comprar um teclado ABNT2, então pretendo fazer alterações ao layout para que as duas teclas adicionais do ABNT2 não sejam obrigatórias. O esquema atual para conseguir um cê cedilha sem a tecla adicional é muito ruim, requer 3 keystrokes. Com mais algumas alterações, na verdade estou criando um layout que terá um nome novo.

A real solução seria um layout de teclado modal; a versão para Windows atualmente alterna entre QWERTY e Dvorak dependendo do Caps Lock; quero conseguir a mesma coisa no Linux.

De outra parte, eu mesmo nunca vou usar o Brasileiro Nativo (acho o Dvorak claramente superior), por isso estou querendo que alguém assuma este repositório e eu vou criar outro apenas para o Dvorak. Porém, eu quero que ambos os repositórios tenham links de um para o outro, para que todos esses drivers continuem fáceis de encontrar.

O teclado portátil é uma ideia legal, mas eu só posso me comprometer a dar manutenção naquilo que eu mesmo uso, e eu não tenho caso de uso para ele. De todas as pessoas envolvidas neste projeto, o único contribuidor duradouro sou eu mesmo, e estou cansado dessa solidão.

Aceito sugestões em quaisquer dos assuntos acima, principalmente no sentido de reduzir a minha responsabilidade neste projeto.

@GabrielCoelho
Copy link
Author

Olá Nando,

Fico feliz com a resposta!

No caso dos cursores, realmente não foi a solução mais prática que encontrei - talvez para o meu estilo de uso, sim, mas não para o repositório geral em si. Uso, normalmente, o polegar da mão direita e a própria mão direita para mover o cursor da maneira que pensei. Talvez se movesse do AltGR para o Alt esquerdo fique mais prático, mas ainda assim perderíamos os caracteres ħŧç, sobretudo o cedilha com o caso que você comentou.

Quanto ao brasileiro nativo, eu nunca o testei, tendo partido do qwerty direto para o dvorak-br em todos os sistemas que utilizo.

Ainda sobre movimentação do cursor

Eu tenho aprendido VimMotions e tem me fascinado cada dia mais. Claro que nem todos os sistemas e/ou aplicativos suportam de modo nativo. Mas talvez se usasse algo parecido com a idéia principal do Vim Motions no Qwerty e aplicar na homerow do DvorakBR, movendo uma "casa" para a direita, seria possível.

Combinação Ação esperada Tecla original no QWERTY para o Movimento no Vim
Alt + h ← (cursor para esquerda) h
Alt + t ↓ (cursor para baixo) j
Alt + n ↑ (cursor para cima) k
Alt + s → (cursor para direita) l

Sobre o Portátil

Ainda estou desenvolvendo mais em cima do layout dele, pois são alguns anos de faculdade e nem sempre poderei levar meu notebook para as aulas. Ainda assim, pode ser uma boa solução para quem necessite de algo portátil para trabalhos e similares em outros computadores.


Conte comigo para tirar essa solidão aí, amei o projeto e no que puder ajudar, o farei!
Tenha um ótimo fim de semana.

@nandoflorestan
Copy link
Owner

Gabriel,

Great minds think alike. Estou usando o Helix, um editor parecido com o Vim.

Eu já estou desenvolvendo um novo teclado Dvorak, num repositório novo. Começando com Linux (XKB). Terá 8 camadas (o BRDK tem 4), uma delas para navegação, usando as teclas que você falou: Alt + HTNS.

O Alt direito continua sendo usado para caracteres raros; o Alt esquerdo ativará a camada de navegação. A minha principal influência é este vídeo deste camarada russo: https://www.youtube.com/watch?v=92pRAQeRIak

As teclas Escape e CapsLock trocam de lugar.

Pretendo deprecar este repositório "teclado-br", não vou mais manter o Brasileiro Nativo. Posso linkar para o repositório de quem o quiser manter. Acho que você deveria colocar o teu trabalho num repositório teu e terei prazer em linkar também.

Acho que antes do fim de semana já poderás ver o meu novo repo.

@GabrielCoelho
Copy link
Author

Olá Nando,

Farei um repositório sim baseado no BRDK (com o Windows Portátil). Fico no aguardo deste novo repositório com 8 camadas.

Vou assistir o vídeo, e já recomendo um outro também: https://youtu.be/lZUBuKImw7s?si=sb9LZbUEC8-uEGqu é um app próprio para os teclados da Dygma, podendo customizar o quanto a pessoa quiser, os teclados, inclusive, tem leds individuais para, ao entrar em uma determinada camada, as teclas brilhem de cor diferente... enfim, isso seria interessante de ter (ainda que de modo simples) para permitir que as pessoas alterem, sem conhecimento prévio, o comportamento do teclado delas.

@nandoflorestan
Copy link
Owner

Gabriel,

Meu repo novo é https://github.com/nandoflorestan/nandvorak/
Aguardo a URL do teu.

Eu vi o vídeo, mas aquilo é ampliar muito o escopo do projeto, tudo de uma vez só. Eu gostaria primeiro de esgotar as possibilidades usando apenas o xkb – o que mais podemos fazer?

@GabrielCoelho
Copy link
Author

Nando, desculpe a demora.
https://github.com/GabrielCoelho/motiondvorakbr

Este será o repositório em que manterei algumas atualizações para a ideia de movimentação com dvorak brasileiro.

Uma coisa que vi na documentação do xkb, quando iniciei a ideia da movimentação perto da homerow, era a de Movimentação do cursor do mouse. Mas esse eu não consegui aplicar e deixei de lado às vezes seria interessante de incluir nas futuras atualizações.

@nandoflorestan
Copy link
Owner

nandoflorestan commented Oct 20, 2023

Gabriel,

Linkei desde meu projeto novo.

Mas se permite uma crítica, embora eu goste de IJKL para movimento, há outras forças que me levam a preferir JKL; (HTNS no Dvorak):

Primeiro, é mais fiel às Vim keys que são HJKL. Só não adotei este sistema porque ele é um pouco deslocado para a esquerda. O meu esquema fica diretamente sob a mão.
A letra I, que no Dvorak é C, precisa ter o cedilha. No teu teclado são necessárias 3 teclas para se obter um ç – isso é demasiado. Pergunto-me quanto texto em português você experimentou digitar nele até agora...

A minha opinião sobre certas escolhas evolui ao longo de meses e mesmo anos...

Mouse keys eu experimentei aqui e a experiência foi tão ruim que removi completamente. Se você conseguir experimentar, verá que é inútil. E por isso você nunca vê um teclado com mouse keys...

@nandoflorestan
Copy link
Owner

Só porque falei mal de mouse keys, hoje um amigo me mostrou como ele absolutamente não precisa mais de mouse, usando o teclado.

Pode desconsiderar o que eu disse antes a respeito...

@GabrielCoelho
Copy link
Author

Opa Nando, quero sim mudar para o uso como no VIM (hjkl), mas acabei fazendo o upload no repositório do modo que havia mandado aqui na PR.

Como meus teclados são no padrão ABNT2, o ç é simples de usar com base no BRDK presente neste repositório.

Estou, nesse momento, testando uma outra configuração mantendo o HJKL mas na disposição que estão no dvorak (ao qual não estou me adaptando muito bem). Mas é isso, precisarei testar diversos modos de navegação para chegar num que fique bom e prático de usar - tendo em vista que o lalt ou o supr que está no seu novo modelo, não funcionou muito bem comigo.

@nandoflorestan
Copy link
Owner

nandoflorestan commented Oct 24, 2023

Gabriel,

Desde que você testou o meu, fiz muitas mudanças. Não tem mais 5 layers, voltou a ter só 4 e com isso a compatibilidade voltou. Fiz caber toda a navegação na mão direita. O uso da Compose key liberou espaço no teclado.

A maioria dos problemas de adaptação são só questão de insistência. Como tenho usado o editor Helix, que é inspirado no Kakoune, que é uma evolução do Vim, também tenho usado HJKL da maneira como caem no Dvorak (mas só dentro do Helix). Não me causam dificuldade, até porque o movimento vertical ficou na esquerda e o movimento horizontal ficou na direita um pouco enviesada mas sem confusão.

Em casa você tem algum teclado programável tipo Ergodox?

@GabrielCoelho
Copy link
Author

Boa tarde Nando,

Bom saber, vou testar o novo layout agora mesmo.
Os meus teclados são todos normais. Estou querendo, muito, comprar um teclado dividido, ainda que row-staggered (embora esteja apaixonado pelos columnar staggered - mesmo não tendo utilizado nenhum).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants