我用十个手指打字,所以我在插入模式下在 Vim 中使用Alt+ H( J, K, L) 快捷方式来移动光标,这非常酷:) 我想重新映射 X (Gnome) 中的箭头键以在所有 X 中使用这些快捷方式应用
所以如果我按Alt+K它应该像向上箭头一样工作。
对于自我折磨 :) 你可以在你的 .gvimrc 中包含这些行
inoremap <Left> <NOP>
inoremap <Right> <NOP>
inoremap <Up> <NOP>
inoremap <Down> <NOP>
inoremap <A-h> <Left>
inoremap <A-j> <Down>
inoremap <A-k> <Up>
inoremap <A-l> <Right>
Run Code Online (Sandbox Code Playgroud)
不完全是你所要求的,但几乎......
\n\n您可以使用该xmodmap命令重新映射 X 键盘设置。您可以通过运行查看当前设置xmodmap -pke
每个键码(与键盘上每个键关联的值)最多可以附加 8 个键符号(本质上是输出)。它们如下:
\n\n所以目前我的“h”键看起来像:
\n\nh H h H h 行程 H 行程
\n\n其中 HStrike 键符号生成 \xc4\xa6。
\n\n除非您使用 Alt-Gr 输入非 ASCII 字符,否则您可以使用 Alt-Gr 重新映射 h、j、k 和 l 来执行您想要的操作。这将是:
\n\nxmodmap -e \'keycode 43 = h H h H Left Hstroke\'\nxmodmap -e \'keycode 44 = j J j J Up J\'\nxmodmap -e \'keycode 45 = k K k K Down ampersand\'\nxmodmap -e \'keycode 46 = l L l L Right Lstroke\'\nRun Code Online (Sandbox Code Playgroud)\n\n当然,带有移位条目的 Alt-Gr 并不是绝对必要的,我只是保留已经存在的值。xev您可以通过从终端运行命令来查找键码值。xev显示 X 事件,因此您可以按某个键并查找有关它的信息。
要使此设置永久生效,您可以将以下内容添加到主目录中的 .Xmodmap
\n\nkeycode 43 = h H h H Left Hstroke\nkeycode 44 = j J j J Up J\nkeycode 45 = k K k K Down ampersand\nkeycode 46 = l L l L Right Lstroke\nRun Code Online (Sandbox Code Playgroud)\n\n在使用 hjkl 时,按 Alt-Gr 当然不如按 Alt 好,但我认为您可能很难让 Alt 正常工作,因为它用于菜单访问。您可以使用此答案中的信息以及 Fraekkert 提到的工具来绑定(例如 Alt-Shift-h),这可能更适合您。
\n\n还可能值得注意的是,您可以使用 .bashrc 在 bash(或您使用的任何 shell)中设置 vi 模式set -o vi。这为您在编辑命令行和历史记录时提供了类似 vi 的行为。我不相信这会查看你的 .vimrc,所以不要指望你的按键重新映射能够工作。
| 归档时间: |
|
| 查看次数: |
2423 次 |
| 最近记录: |