![Vim python 代码格式化](https://linux22.com/image/1493153/Vim%20python%20%E4%BB%A3%E7%A0%81%E6%A0%BC%E5%BC%8F%E5%8C%96.png)
我正在使用插件自动配对帮助自动关闭括号。
在 vim 中定义字典或列表时,它会自动格式化如下
|
是光标位置
a_dict = {
| # the indent is 8 spaces width, but I already set 4 spaces width indent in .vimrc
}
a_lst = [
|
]
a_lst_with_a_very_loooooooooooong_name = [
|
]
但我希望它像这样格式化代码
lst = [
|
]
我怎样才能做到这一点?
答案1
对于 vim 中的 Python 缩进,我使用这个插件用于 pep8 缩进和文德尔。此插件可与您的插件配合使用,并为您提供所需的功能(至少在我的计算机上)
例子:
lst = [
|
]
abc = {
|
}
您特别需要let g:pymode_indent = 0
.vimrc 中用于 pep8 插件的行。
精通 vim 编程的人可能能够修改您的插件以满足您的需要,但如果您使用 vim 进行 Python 编程,此解决方案可能会为您带来其他好处。
要解决将 8 个空格作为制表符的问题 - 尝试将所有
set tabstop=4
set shiftwidth=4
set expandtab
filetype indent on
在你的 .vimrc 中(这是我所拥有的,它给了我 4 个空格缩进)