Today's the day

向软件大牛炫耀我会焊单片机,向硬件大牛炫耀我会写 Rails,向软硬件大牛炫耀我生物,向软硬件生物大牛炫耀我会折腾期货 -_-bbb

Nginx + Passenger 也不错
Psych、Syck、YAML 和编码

重新审视 Vim

galeki posted @ 2010年9月24日 07:45 in RoR with tags vim , 9070 阅读

虽然号称使用 Vim 多年,但是实际上一直没有仔细研究过,平常用的也就是 Vim 的基本快捷键而已,虽然经常写 Rails 代码,但是除了自己定义了一个在 erb 文件中输入 <%= %> 代码的快捷键之外,就没有任何其他配置了,插件也只是偶尔用用 NERDCommenter 之类。

最丢人的是,目前还不习惯用 hjkl 移动,因为平常也经常用其他的普通编辑器,所以即使在 Vim 下,每次也都是用着用着就去摸箭头键了,至今没有调整过来。

不过前天看到一篇非常好的 Vim 文章:

Coming Home to Vim / Steve Losh

受其影响,开始重新审视 Vim。

文章中提到的一些 Tips 比较有启发性,比如对于不知不觉去摸箭头键而不使用 hjkl 的问题,可以用下面的配置代码,将箭头键屏蔽:

nnoremap <up> <nop>
nnoremap <down> <nop>
nnoremap <left> <nop>
nnoremap <right> <nop>
inoremap <up> <nop>
inoremap <down> <nop>
inoremap <left> <nop>
inoremap <right> <nop>

这样每次就会被强迫去用 hjkl 了,对于 Vim 初学者来说尤其实用。

此外,对于回到命令模式用的 Esc 太远的问题,除了通过某种方法把无用的 CapsLock 键映射为 Esc 之外,还可以使用“jj”:

inoremap jj <ESC>

因为单词中很少有输入 jj 的情况,所以并不会干扰输入。映射为“,,”也可以,当然也可以使用脚踏板 :)。

此外还知道了一个可以像 TextMate 那样智能打开文件的插件 PeepOpen

虽然要收费,但是效果比 Command-T 之类的要好多了,所以等有了资金就去买一个用。有了这个东西,NERDTree 之类的就不需要了~ :)

最后,就是再定义一些快捷键了,Vim 的快捷键定义语法 nnoremap 和 inoremap 非常直观,一直都想不出应该定义什么真是不应该啊。

Avatar_small
依云 说:
2010年9月24日 08:58

PeepOpen是Mac专用的啊,我还是安心地用Lusty-explorer + mru.vim好了。那几个映射到 <nop> 的键映射很不错,以后一定要给初学者推荐 :-)
BTW,“全局相关文章”里有两篇文章都是我的呵~

Avatar_small
galeki 说:
2010年9月24日 13:47

是啊,PeepOpen 是个外挂程序,所以还支持 Emacs 什么的。
因为都打了 vim 的 tag,所以就自动关联到了一起啦~ :)

Avatar_small
蓝色基因 说:
2010年9月24日 18:17

请问页面下面的 “全局相关文章” 是怎么弄出来的?

Avatar_small
galeki 说:
2010年9月24日 21:22

在工作台的 外观->文章底栏 下面可以找到设置~

Avatar_small
蓝色基因 说:
2010年9月24日 22:07

要是你还是适应不了 hjkl 的按键,我写了一篇关于这个的文章:

http://bluegene8210.is-programmer.com/posts/21509.html

希望能对你有帮助。

Avatar_small
galeki 说:
2010年9月25日 03:24

这个方法也不错,让我想起了格斗游戏~

aobatu 说:
2010年11月17日 05:43

这个模板好漂亮!


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter