Procurando por consistência de atalhos de teclado entre plataformas não conflitantes

10

Eu uso Mac OS X e Arch Linux e, ocasionalmente, faço login no FreeBSD e nos servidores Debian pelo ssh. As minhas ferramentas favoritas são zsh, ssh, tmux, git, vim e irssi. Eu uso o iTerm2 no Mac OS X e o unicode-rxvt no Arch Linux, onde também uso o Xmonad como gerenciador de janelas.

Atualmente, a Ctrl + a + n muda para a próxima janela no tmux, Alt + direita muda para a próxima em irssi, Cmd + direita muda para a próxima guia no iTerm2, Ctrl + w + w muda para o próximo buffer no vim e assim por diante. Basicamente, é apenas uma bagunça e mesmo que alguns deles estejam na memória muscular, a maioria não. Eu estou procurando o que poderia ser um esquema consistente de keybinding.

Na minha opinião, eu acho que o Cmd / Super / Win deve ser usado pelo ambiente de área de trabalho do SO e / ou pelo gerenciador de janelas, o Alt seria o tmux e o Ctrl seria o vim e o irssi. Isso vai da direita para a esquerda no teclado; Cmd, Alt, Ctrl, e de alguma forma hierárquica, OS / DE / WM, multiplexador, editor / cliente do irc.

Por isso, algo assim:

Cmd + Esquerda / + Direita - Área de trabalho de comutação (Xmonad)
Alt + Esquerda + / Direita - Alterna janela do tmux
Ctrl + Esquerda / + Right - Alternar janela irssi / buffer vim

Cmd + 1 - Alterna para o espaço de trabalho 1 (Xmonad)
Alt + 1 - Alterna para a janela tmux 1
Ctrl + 1 - Mudar para a janela irssi 1 / vim buffer 1

Isso seria viável? Se não, quais atalhos de teclado uniformes poderiam ser usados?

ATUALIZADO

Eu tirei uma foto (as cores são horríveis, eu sei) para ilustrar o que eu tinha em mente. Eu uso o Dvorak e substituí o movimento do vim hjkl pelo dhtn - eu escrevo para esquerda / baixo / cima / direita para fazer sentido para aqueles que não usam o vim. Vamos mantê-lo para o iTerm2 em vez de todo o ambiente de trabalho OS X (assim como o Gnome e o KDE). Basicamente se resume a isso:

cmd + esquerda / direita / número para espaços de trabalho no Xmonad (ou qualquer gerenciador de janelas que você gosta)
alt + esquerda / direita / number para windows em tmux
ctrl + alt + left / down / up / right / number para buffers em vim
ctrl + alt + left / right / number para windows em irssi
ctrl + left / down / up / right para home / pg down / pg up / end em vim, irssi e zsh

No OS X ctrl + left / down / up / right já funciona como acima, e alt + left / right move o cursor por palavra em oposição a apenas left / right que o move por caractere.

Isso não seria razoavelmente lógico e intuitivo? Estou faltando alguma coisa (atalhos de teclado conflitantes) ou isso é factível?

    
por totte 16.01.2012 / 21:57

1 resposta

4

Eu tentei montar uma folha de cola ou um cartão de referência. Depois de explorar várias possibilidades acabei fazendo o seguinte:

  1. Mude de um teclado sueco para um inglês (internacional), pois este último (na minha opinião) é superior ao escrever código, assim como ainda é possível digitar åäö por alt + a / + w / + u + a / + o.
  2. Mude de QWERTY para Dvorak porque eu gosto de como as teclas são posicionadas (sem reivindicações científicas aqui) para fins de programação (eu dei uma olhada no "Programmer Dvorak" mas isso foi demais).
  3. Substitua o movimento vim hjkl por dhtn, dD por jJ (mnemônico: "lixo"), K por H e o ctrl + w prefixo por ctrl + o .
  4. Algumas adições menores (e recursos avançados não vinculados para começar fácil) ...

TL; DR - manter os prefixos disponíveis, por exemplo, ctrl + a no tmux, ctrl + o (Dvorak) / ctrl + s (QWERTY) no vim e no irssi. Isso parece ter as menores consequências e ser um pouco compatível com a plataforma.

    
por 18.01.2012 / 11:48