VIM中的自动缩进,虽然可以,但自从用了EMACS后……
假设我写了以下的程序:
#include<stdio.h>
int main()
{
printf("hello,world");
printf("world,hello");
}
当然,如果默认一行一行输入,VIM(开启了set cindent)和EMACS都会在printf前面插上制表符(或空格组成的空白)
假设你每一行都没缩进或不整齐的话(一行多一行少,例如上一个printf前面两个制表符而下一个前面四个制表符,再最后一个花括号前面一个制表符)……
如果是EMACS,只要把光标移到当前行,按一下TAB,马上自动调整好,(两个printf前面只一个制表符,而后一个花括号前面取消,即没有)……
如果是VIM……怎么才能有这种效果?
同理(即),如果没事按按tab的话,VIM会努力在当前位置插入制表符,而EMACS却是将当前行的缩进调整(相当于不会插入制表符,仅调整前边的缩进)。
当然,说的是文件名以C后缀的情况下,可能EMACS是以这个为语法基准的。
本人懒人一个,特喜欢EMACS的这种功能,很希望VIM能找出什么命令或设置使之也能这样做……
VIM写C的时候怎么设置才能有EMACS的这种效果?
-
- 帖子: 113
- 注册时间: 2007-09-26 9:00
-
- 帖子: 113
- 注册时间: 2007-09-26 9:00
-
- 帖子: 768
- 注册时间: 2006-09-20 19:56
-
- 帖子: 45
- 注册时间: 2007-01-27 14:11