侏儒键盘快捷键<Super>
是和绑定的奇怪混合<Alt>
。例如,
Switch applications Super+Tab
Switch system controls Ctrl+Alt+Tab
Switch system controls directly Ctrl+Alt+Esc
问题:
如何将所有快捷键转换为单个前缀键?
我的解决方案2
在所有键绑定中替换<Alt>
为<Super>
dconf
:
wmkb=/org/gnome/desktop/wm/keybindings/
for key in $(dconf list ${wmkb}); do
dconf write ${wmkb}${key} $(dconf read ${wmkb}${key}|sed 's/<Alt>/<Super>/g')
done
答案1
我认为,键盘快捷键的设计是为了适应用户的临时工作量。虽然许多应用程序以各种组合使用Alt、Ctrl和Shift,但很少有应用程序使用Super(Windows) 键。
然而,Windows 使用了许多类似的约定:+ 是窗口切换器,++ 打开任务管理器,并且据称,++切换窗口Windows的Tab“Ctrl总在最前面”属性(另见ShiftEscCtrlAltEsc键盘快捷键表在 Wikipedia 上)。虽然与 GNOME 的快捷键不同,但 Windows 以更易于理解的方式使用相同的键,以便 Windows 用户在过渡到 Linux 期间不必学习新的组合键。
例如,每个人都知道Ctrl++是什么,但并不是每个人都以相同的方式使用它;例如,它会在 Linux 中将您注销,而不是在 Windows NT 内核中的安全面板中注销Alt。Delete
但是,如果您希望从根本上使它们都使用其中一个(Super或Alt),那么您使用的方法就是改变这种情况的一种有效方法。dconf
还有一个同样有效的 GUI 方法。
不过需要澄清的是:不是一团糟。每个快捷键可能都经过精心挑选,以代表一个特定操作而不是另一个操作。使用特定的前缀键执行许多操作就像选择用fn笔记本电脑和特定键盘上的键更改哪些键一样,以及模式切换 ( AltGr) 和其他修饰键等功能(另请参阅Mode_switch 修饰符有什么用处?在 Unix 和 Linux 上)。