免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 969 | 回复: 0
打印 上一主题 下一主题

Vim实用技术 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-12 22:37 |只看该作者 |倒序浏览
空格、制表符和缩进
  对于编写代码,缩进是最基本的概念之一。至于缩进是使用空格还是制表符(Tab),或者缩进是否正好使用一个制表符来表示,很多程序员,特别是Windows开发出身的程序员,很容易混淆。幸好,Vim对于这些概念有非常完整的支持,足以应付各种复杂的情况。以下是相关的主要Vim选项:

  • shiftwidth(缩进的空格数);
  • tabstop(制表符的宽度);
  • expandtab(是否在缩进和遇到Tab键时使用空格替代;使用noexpandtab取消设置);
  • softtabstop(软制表符宽度,设置为非零数值后使用Tab键和Backspace时光标移动的格数等于该数值,但实际插入的字符仍受tabstop和expandtab控制);
  • autoindent(自动缩进,即每行的缩进值与上一行相等;使用noautoindent取消设置);
  • cindent(使用C语言的缩进方式,根据特殊字符如"{"、"}"、":"和语句是否结束等信息自动调整缩进;在编辑C/C++等类型文件时会自动设定;使用nocindent取消设置);
  • cinoptions(C语言缩进的具体方式,请参考":help cinoptions-values");
  • paste(粘贴模式,会取消所有上述选项的影响来保证后面的操作--通常是从剪贴板粘贴代码--保持原有代码的风格;使用nopaste取消设置)。

  下面给出一些常用的组合:

  • shiftwidth=4 tabstop=4:很多Windows出身的程序员会习惯这样的设置,让缩进等于制表符宽度。
  • shiftwidth=4 tabstop=8:很多Unix程序员的设置,仍使用较常用的4格缩进,但制表符宽度为标准的8。
  • cinoptions=>4,n-2,{2,^-2,:2,=2,g0,h2,p5,t0,+2,(0,u0,w1,m1 shiftwidth=2 tabstop=8:标准的GNU编码风格的设置,对Vim缺省的C缩进风格作了很多微调,比如,if语句下的"{"、"}"要在"if"后缩进两格,但函数定义部分"{"、"}"仍和函数名一行对齐。开源软件经常使用该种缩进风格。

  在编辑代码时一个很有用的命令是调整代码缩进,可以很方便地增加(或减少)若干级缩进,并自动根据选项设定使用正确的空格或制表符。只需要使用"V"选中你要调整的代码行,然后键入"")即可增加(或减少)一级缩进;在键入"")之前键入数字则可以指定增加(或减少)的缩进级数。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/70744/showart_973554.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP