开发工具 vim 求助

shangrenzhidao · 2014年01月16日 · 最后由 neutralevil 回复于 2014年01月20日 · 7307 次阅读

大家好,我由于手比较小,使用 Vim 的时候经常按 esc,够起来费劲,有没有一种方法,把 esc 键的功能设置成连按两次 j?新手无知,希望前辈多多指导。

少年用 Emacs 吧

换一把 HHKB 的键盘(或者至少也是 Sun 的键盘布局)或者使用键盘 remap 软件。

@shangrenzhidao

~~map jj <Esc>~~
imap jj <Esc>
cmap jj <Esc>

我都是用中指

#1 楼 @wcp1231 alias vim="emacs" 不客气 :D

#1 楼 @wcp1231 #5 楼 @_samqiu 不想卷入这种争论中,这个是一个永久的课题。

编辑器之战即将拉开序幕 .....

手小不适合写代码啊 或者说你写写手就会变大了。。

万一在某些地方确实要输入两个 j 怎么办 - -!

建议

  1. ctrl 和 capslock 互换
  2. 不用 esc,用 ctrl + c 来退出 insert mode

#10 楼 @MrPasserby 按慢点就可以输入的了

个人更喜欢 jk 而且只要 inoremap jk <esc> 一行就够的了,normal 和 view mode 是不需要 map esc 的

Ctrl +[ 谁用谁知道

#1 楼 @wcp1231 #5 楼 @_samqiu

就 emacs,ctrl 按的更加疼 如果用 emacs 把 ctrl 与 capslock 互换 还不如直接把 capslock 改成 esc,原 esc 不变,继续用 vim

http://vim.wikia.com/wiki/Map_caps_lock_to_escape_in_XWindows

#7 楼 @shangrenzhidao #8 楼 @song940 #14 楼 @cxh116 哈哈哈哈哈~个人习惯不同嘛,何必在意

Vim 党中指按 Escape 路过……

#10 楼 @MrPasserby 速度变慢点就好了

#15 楼 @wcp1231 没有在意,这绝对是一个国际问题~

Ctrl-C + 1,小拇指就是这么摁废的。

#20 楼 @cassvin 这也是一个矛盾,我通常不用小拇指。指法很不对。

匿名 #22 2014年01月16日

VIM 最潇洒的动作就是左手一甩,切换模式的时候了……

caps lock 映射成 ctrl , 然后 ctrl + c, 试试就知道多爽了。

#22 楼 @francis_tm 我的手必须要离开原位,太小。

换个适合自己的键盘。

#25 楼 @Rei 我看成 个合适自己的键盘 = = 。。。。 让我想起了 Stackoverflow 的创始人自己造了键盘,不知道开卖了没

#27 楼 @wcp1231 第一批已经卖完了,第二批 1 月 23 日开卖

#29 楼 @lulalala 这个确实有用啊 233

#28 楼 @Rei 😱 有木有评测啊。。

如果真想输入 jj 呢。。。。都不靠谱吧 用了 vim 这么久,早已习惯

#7 楼 @shangrenzhidao 其实我是 IDE 党,是来挑起战争的。

等下我再去别的地方发 alias emacs="vim"

#9 楼 @iBachue 手指太长需要垫手托的飘过

不知道 vim 能不能识别电钢琴的踏板发出的信号

emacs 是给八抓鱼专用的。感觉连按两键有点太费手了。

HHKB 不解释

@huacnlee Markdown 删除线好像不起作用

Ctrl +[ 谁用谁知道 + ctrl 和 capslock 互换

我现在的映射方案: 单独按 capslock,当作 esc 单独按 enter,仍然是 enter capslock 或 enter 与其他键组合按,当作 control

#12 楼 @bcho 似乎定义两行,这样: inoremap jk inoremap kj 会更方便

#42 楼 @neutralevil 敲多了烧进 muscle memory 之后就不会按错的了

#43 楼 @bcho 这个跟手大小无关,事实是 esc 确实麻烦,手指需要移动的位置比较大。所以最好将其限制在二十六个字母组合之间。我用的是 jk 组合键,也是网上很多人都推荐的一种用法。具体配置如下: 在~/.vimrc 中添加inoremap jk <esc>即可。

#44 楼 @xautjzd mac 上没有找到啊?

#45 楼 @shangrenzhidao ???什么没找到

#47 楼 @shangrenzhidao 需要你自己添加,自己在你的 vimrc 中配置inoremap jk <esc>即可。mac 中没有.vimrc 文件?

#47 楼 @shangrenzhidao 打开 VIM 后,使用命令:e $MYVIMRC编辑.vimrc,不用专门去找

少年你多大 手是的多小。。。

要不试试用 Ctrl+C?

map jj <esc> <cr> 你试试这个

一直大拇指,玩星际留下的后遗症

默认的 ctrl + [ 为什么不用?

#51 楼 @Shadow 没有同龄 的女生大。

装根假指吧

#50 楼 @shangrenzhidao 我错了,刚才专门试了一下,原来如果.vimrc不存在,$MYVIMRC这个变量是不起作用的。那你只有自己在$HOME目录建一个.vimrc文件了

#54 楼 @sallon88 你用什么系统?如果是 OS X,那就很方便,使用 KeyRemap4MacBook 这个牛 X 软件可以达到目的。唯一需要注意的是,根据这个软件的说法,caps lock这个键有特殊之处,需要安装另一个叫 PCKeyboradHack 的工具来修改。作为一个有洁癖的人,实在不想单为了这个目的再装一个会驻留内存的东西。后来我发现,在 System Preferences 中交换caps lockcontrol的位置后,在 KeyRemap4MacBook 中修改 Control_L 的行为即可。

#60 楼 @neutralevil 噢,多谢,我用的是Ubuntu, 看了下貌似没有什么替代品,我也交换了 caps_lock 和 control, 这样按左 control 毫无压力,但是想按右 control 的时候好纠结

常年把 Esc 和 CapsLock 键互换的路过,这个在 Linux 和 OSX 下很容易,但是 windows 下不太完美

#61 楼 @sallon88 Linux 下面可以看看 xcape: https://github.com/alols/xcape 不过我最近没用 Linux,还没试过效果。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号