您好,匿名用户
随意问技术百科期待您的加入

Vim如何配置Python的缩进?

0 投票

我的.vimrc里设置的是关于C++(.cpp)的缩进:

set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent

这样写C++程序时缩进就舒服多了。
但是我现在想用Python(.py)写程序,缩进没有C++方便,比如冒号的下一行就不能自动缩进一个Tab
想请教一下如何配置才能让Vim的缩进适合PythonC++?谢谢!

用户头像 提问 2013年 12月30日 @ Morgana 上等兵 (251 威望)
分享到:

1个回答

0 投票
 
最佳答案

略显复杂些的配置

"自动缩进
set autoindent
"类似C语言风格的缩进
set cindent
"智能缩进:每一行都和前一行有相同的缩进量,
"同时这种缩进形式能正确的识别出花括号,当遇到右花括号(}),
"则取消缩进形式。此外还增加了识别C语言关键字的功能。
"如果一行是以#开头的(比如宏),那么这种格式将会被特殊对待而不采用缩进格式
set smartindent
"For Python Programmers
autocmd FileType python set textwidth=79 " PEP-8 Friendly

"把输入的tab自动转换成空格,Python用户必用~
set expandtab 
"一个tab键占据4个空格
set tabstop=4
"一开始,插入的就是4个空格,此时一旦你再按下一次tab,这次的四个空格就会和上次的四个空格组合起来变成一个制表符
set softtabstop=4
"每一级自动缩进的空格数
set shiftwidth=4
"根据文件类型设定缩进,覆盖掉默认的~
autocmd FileType python setlocal tabstop=4 shiftwidth=4 softtabstop=4 textwidth=79

另外即使配置如此 ,Python的缩进也并不是很理想。

比较好的选择是再使用一个插件 hynek/vim-python-pep8-indent

用户头像 回复 2014年 1月5日 @ Yorick 上等兵 (278 威望)
选中 2013年 9月7日 @Morgana
提一个问题:

相关问题

0 投票
1 回复 33 阅读
用户头像 提问 2013年 9月7日 @ 爹妈罩我去战斗 上等兵 (131 威望)
0 投票
1 回复 39 阅读
用户头像 提问 2012年 12月1日 @ Ryze 上等兵 (293 威望)
0 投票
1 回复 12 阅读
用户头像 提问 2014年 3月30日 @ Heimerdinger 上等兵 (311 威望)
0 投票
1 回复 19 阅读
用户头像 提问 2014年 4月3日 @ Alistar 上等兵 (326 威望)
0 投票
1 回复 41 阅读
用户头像 提问 2012年 12月1日 @ Lee Sin 上等兵 (347 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...