2

好的,所以我一直在尝试 Vim(标准控制台版本;我的操作系统是 Linux Mint 13),我想摆脱必须使用 Escape 键来更改模式。最好,我想交换 Capslock 和 Escape 键,但据我所知,这在 Vim 本身内是不可能的。我发现的大多数“解决方案”都涉及在全局级别(使用xmodmap或其他)更改密钥,但我真的不想要那样。如果只有在 Vim中交换 Capslock 和 Escape 的简单方法,请告诉我。

我听说的另一个常见的事情是使用“Ctrl-[”作为 Escape 的等价物。但是,因为我使用的是具有不同布局的德语键盘,所以这不是一个选择。所以,我想我会noremap <C-ü> <Esc>在 Vim 中使用(德语键盘上的“ü”键与美国键盘上的“[”键在同一个位置),但这也不起作用。我假设那是因为“ü”不是 ASCII 字符。有没有办法让这些选项中的任何一个起作用?

更新:嗯,这很奇怪。在进行了更多实验之后,似乎“Ctrl-ü”确实有效。我不确定发生了什么——也许我在尝试不同的事情时弄乱了一些与编码相关的设置?如果没有重新映射大写锁定的好的解决方案,我想我会坚持使用“Ctrl-ü”。

4

3 回答 3

1

所以,是的,最终我决定使用它,<C-ü>因为它不会与其他任何东西发生冲突,而且它与<C-[>美国键盘上的相同。

但是,因为我已经厌倦了使用德语键盘布局进行编程(例如,要获得“{”,你需要输入“Alt Gr-7”),我将我的键盘切换到美国国际,本质上就 Vim 而言,具有类似的效果。如果您想养成触摸打字的习惯,这也会有所帮助;您实际上无法查看键盘,因为键未标记为“正确”;-)

于 2012-08-28T15:45:04.797 回答
0

很多人使用jk

inoremap jk <Esc>

你也可以简单地做<C-c>

于 2012-08-23T19:10:03.250 回答
0

这是另一种可能对您有用的选择!它涉及更改与 VIM 相关的键盘文件。我在这个 youtube 视频上找到了这个建议

$ cd /usr/share/X11/xkb/symbols/
sudo vim pc

要编辑 capslock 键以进行转义,请将 capslock 行更改为如下所示:

key <CAPS> { [ Escape ] }; 

:wq# 写入和关闭文件

注销并重新登录机器,它应该被更新!

于 2017-09-10T01:50:13.600 回答