寻找无冲突的跨平台键绑定一致性


11

我使用Mac OS X和Arch Linux,偶尔通过ssh登录到FreeBSD和Debian服务器。我最喜欢的工具是zsh,ssh,tmux,git,vim和irssi。我在Mac OS X上使用iTerm2,在Arch Linux上使用unicode-rxvt,在这里我也使用Xmonad作为窗口管理器。

当前Ctrl + a + n移至tmux中的下一个窗口,Alt + right移至irssi中的下一个窗口,Cmd + right移至iTerm2中的下一个选项卡,Ctrl + w + w移至vim中的下一个缓冲区,依此类推。基本上,这只是一团糟,即使其中一些位于大多数人的肌肉记忆中也没有。我正在寻找一种可能是一致的键绑定方案。

在我看来,我认为OS桌面环境和/或窗口管理器应使用Cmd / Super / Win,Alt是tmux,Ctrl是vim和irssi。那是键盘上从右到左的顺序;Cmd,Alt,Ctrl,以及某种程度上分层的OS / DE / WM,多路复用器,编辑器/ irc客户端。

因此,如下所示:

Cmd +左/ +右 -切换工作区(Xmonad)
Alt +左​​+ /右 -切换tmux窗口
Ctrl +左/ +右 -切换irssi窗口/ vim缓冲区

Cmd + 1-切换到工作区1(Xmonad)
Alt + 1-切换到tmux窗口1
Ctrl + 1-切换到irssi窗口1 / vim缓冲区1

这可行吗?如果没有,可以使用什么统一的键绑定?


更新后,

我画了一张画(我知道这些颜色太可怕了)以说明我的想法。我使用Dvorak,并用dhtn替换了vim hjkl运动-我将向左/向下/上/右书写,以使那些不使用vim的人有意义。让我们将其保留在iTerm2上,而不是整个OS X桌面环境(以及Gnome和KDE)。基本上可以归结为:

cmd +向左/向右/ Xmonad中的工作区编号(或您喜欢的任何窗口管理器)
alt +向左/向右/ tmux中的窗口编号
ctrl + alt +向左/向下/向上/向右/编号用于vim中的缓冲区
ctrl + alt +左​​/右/ irssi中的窗口
ctrl +左/下/上/右用于home / pg下/ pg上/结束vim,irssi和zsh

在此处输入图片说明 在OS X中,按ctrl + left / down / up / right可以像上面那样工作,并且alt + left / right可以按单词移动光标,而不是只按left / right可以按字符移动光标。

这不是很合逻辑和直观吗?我是否缺少某些内容(键绑定冲突)还是可行的?


gh,祝你好运...那是通往天堂的道路,那就是……
Rook 2012年

Answers:


5

我尝试将备忘单或参考卡放在一起。在探索了各种可能性之后,我最终做了以下工作:

  1. 从瑞典语键盘切换到英语(国际语),这是因为后者(在我看来)在编写代码时比较优越,并且仍然能够通过alt + a / + w / + u + a / + o来键入åäö。
  2. 从QWERTY切换到Dvorak,因为我喜欢出于编程目的如何定位键(此处没有科学依据)(看过“ Programmer Dvorak”,但实在太多了)。
  3. 将vim hjkl运动替换为dhtn,将dD替换为jJ(助记符:“垃圾”),将K替换为H,并将ctrl + w前缀替换为ctrl + o
  4. 一些次要的补充(以及解除绑定的高级功能开始容易)...

TL; DR-坚持使用可用的前缀,例如tmux中的ctrl + a,vim和irssi中的ctrl + o(Dvorak)/ ctrl + s(QWERTY)。这似乎产生的影响最小,并且对跨平台友好。

vim dvorak参考卡

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.