当我使用gg=G
重新注册文件时,我注意到右括号或括号的缩进与开始行的缩进不匹配。例如(由> ...显示前导制表符)带圆括号和括号的Vim缩进级别
if settings.DEBUG:
>...urlpatterns += patterns('',
>...>...url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
>...>...>...'document_root': settings.MEDIA_ROOT,
>...>...}),
>...)
我想修复缩进包含此的文件中。对于Python我有softtabstop
设置为4,shiftwidth
设置为4和expandtab
设置。当我做了gg=G
它导致以下内容:
if settings.DEBUG:
urlpatterns += patterns('',
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.MEDIA_ROOT,
}),
)
这里有两个问题。首先,右括号与它们的开始括号的空格级别不匹配,它们缩进与括号内的代码相同的级别。这在第二行中的(
以及其最后一行中的匹配)
以及第三行中的{
以及第五行中匹配的}
中可见。我喜欢它,所以右括号与前括号相同。
我的第二个问题是,左括号后的缩进是新块的缩进的两倍,甚至是开放后的缩进{
。我在想这可能是Python的文件类型缩进的一部分,但我想知道如何停止,因此所有的缩进都是4。
我有一个偷偷摸摸的怀疑,你有一些cindent规则在这里和你一起玩。你在用cindent吗?你可以将你的整个vimrc粘贴到某个地方吗? –
我的〜/ .vimrc是http://pastebin.ca/2149343 我也有我的〜/ vim的/文件类型插件/ python.vim: 'SETLOCAL STS = 4 SW = 4 expandtab' –
尽管我的本意主要是为了让我的python代码正常工作,我想知道在哪里导致右括号与封闭块放在同一个缩进的当前配置,因为我想在全局范围内进行更改。 –