分类: Python/Ruby
2012-06-20 14:38:49
摘自 Vim 手册:
选项:
1. tabstop:表示一个 tab 显示出来是多少个空格,默认 8
2. softtabstop:在编辑的时候(比如按退格或 tab 键)一个 tab 是多少个空格(有点不好理解。。。我也没完全弄明白)
3. expandtab/noexpandtab:将 tab 扩展/不扩展成空格
4. shiftwidth:每一级缩进是多少个空格
5. smarttab:根据文件中其他地方的缩进空格个数来确定一个 tab 是多少个空格
命令:
:[range]retab [new_tabstop]:应用新的 tabstop 值,替换所有的 tab,如果设置了expandtab,还会把文件中 tab 都替换成空格。
几种常见用法:
1. 保留 tab。让 tabstop 保持默认,将 softtabstop 和 shiftwidth 设为 4,并设置 noexpandtab。这样文件中本来有 tab 的话会保留,新增的缩进处也会使用 tab。
2. 全部用空格。将 tabstop 和 shiftwidth 设置成相同的值,如 4,并设置 expandtab。这样新增的缩进会用空格,你按下 tab 键,出来的也全是空格。如果文件里本来就有 tab 的话,可以再用一次 :retab 命令,将所有 tab 扩展成空格,这样就完美了。
我一般在 .vimrc 中这样设置:
set smarttab
VIM分屏快捷键:
CTRL-W s 或 :split 将窗口分割成两部分。
:split {file} 分隔窗口并在其中一个编辑 {file}
:vsplit 同上,但垂直分割
CTRL-W j 跳转到下方窗口
CTRL-W k 跳转到上方窗口
CTRL-W W 移动光标至上方窗口(好像是光标在窗口之间一次切换)
CTRL-W r 向下旋转窗口
CTRL-W R 向上旋转窗口
CTRL-W x 将当前窗口与下一个窗口对调 (eXchange)
CTRL-W = 使所有窗口等高
CTRL-W - 减少当前窗口高度(对上下分屏才有用)
CTRL-W + 增加当前窗口高度(对上下分屏才有用)
因为这两天写的code是瘦高型的,所以选择了垂直分屏(vsplit命令),但是在网上一直木有找到调整左右分屏大小的命令,想了一下,感觉应该是使用“<”和“>”这2个键,试了一下,果然是的,呵呵!
CTRL-W 再按 “<”(其实是shifth和<一起按)会将当前光标所在的窗口的右边线左移,不多说了,试试看吧。