开发工具 Vim 中 C 的缩进问题

kenshin54 · 2013年10月21日 · 最后由 luikore 回复于 2013年10月21日 · 2759 次阅读

如图,像这个把返回类型rb_objspace_t *单独写一行的话,用gg=G对整个文件缩进的话,返回类型就会再次缩进,变成

求配置如何让返回类型不要缩进,Google 一圈没搜索到!

吐槽:为啥 Ruby 源代码缩进乱七八糟的,其他编辑器打开都乱了,只有 Emacs 打开缩进没问题。

如果其他编辑器打开就乱了,说明你不是全空格,肯定是空格和 Tab 掺在一起了。

#1 楼 @nightire 这是 github 上拉下来的 Ruby 源码,就是乱的,和我没关系,Textmate, Sublime, Vim 都是乱的,前 2 个我基本不用,所以没有任何配置。

ruby 源码不用自己 gg=G 的,把 tab 长度设成 8 就缩进正常了

ruby 源码的 tab 长度是 8

#3 楼 @luikore #4 楼 @sevk

撇开 Ruby 源码,返回类型单独一行的写法,gg=G 就是会缩进,所以是不该依赖 gg=G 么?!还是有办法配置的?求指教!

Ruby 源码的缩进貌似配置成 set noexpandtab tabstop=8 shiftwidth=4 softtabstop=4 就可以了。

谢谢 @luikore @sevk

#5 楼 @kenshin54 gg=G 是对每行做匹配,如果满足 + 缩进或者 - 缩进的正则,就修改下一行的缩进,这个判断经常不准的,而且太适用于返回类型独起一行的 code style

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