分页: 1 / 1
vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 17:58
由 heefan
google了N多网页关于VIM格式化C++代码,统一说是gg=G
为毛我也gg=G却说 Not an Editor Command?
赐教

Re: vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 18:12
由 adam8157
你是vi 还是vim?
默认的vim是vim-tiny, 很多功能没有
Re: vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 18:35
由 heefan
应该就是纯正的VIM吧
代码: 全选
$ vim --version
VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Apr 16 2010 12:47:47)
Included patches: 1-330
Compiled by buildd@
Re: vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 18:40
由 JiangHui
你是怎么输的?
Not an Editor Command 这种提示应该是冒号后面输命令才有的
Re: vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 18:46
由 adam8157
当成命令了啊 - -!
Re: vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 20:04
由 heefan
の。。。我错了,当成命令了~~~
对了,如果格式化城 GNU风格的代码啊? 就像eclipse里边有几种风格代码一样。
这种格式化似乎只是格式化一下缩进(indent)~
Re: vim格式化C++代码 gg=G无效
发表于 : 2010-10-11 20:39
由 adam8157
heefan 写了:の。。。我错了,当成命令了~~~
对了,如果格式化城 GNU风格的代码啊? 就像eclipse里边有几种风格代码一样。
这种格式化似乎只是格式化一下缩进(indent)~
:set equalprg=indent
意思是用indent程序处理等号命令, indent默认是gnu风格.
我建议不要改, 代码风格应该自己主动养成, =适用于修改代码或者粘贴别处代码后整理缩进.
另外, gg是文件首, G是文件尾, 所以gg=G是整理全部代码. 可以==整理当行, 加行数整理多行, 可以={或者=i{整理一个代码块.
这里又体现出不用indent的好处了, 如果用indent, 单纯格式化代码块会丢统一的行首缩进, 而且选中的如果不是内部完整的代码块, 会出错, 把出错的输出贴到了代码里....弊端很多
Re: vim格式化C++代码 gg=G无效
发表于 : 2010-12-03 16:07
由 Fermat618
直接 indent 文件名 不就好了。