繁体   English   中英

如何在vim中关闭双缩进?

[英]How to turn off double indentation in vim?

我正在编写python,javascript,html和其他配置文件,我意识到当我输入换行到未完成的行(即未终止的字符串,仍在字典括号内等)时,我会得到双缩进。

我该如何解决?

蟒蛇

您可以在.vimrc文件中设置一些变量来影响Python的缩进方式:

在打开括号后缩进: let g:pyindent_open_paren = '&sw * 2'

嵌套括号后缩进: let g:pyindent_nested_paren = '&sw'

缩进续行: let g:pyindent_continue = '&sw * 2'

有关更多信息:: :help ft-python-indent

使用Javascript

请参阅$VIMRUNTIME/indent/javascript.vim :它使用cindent执行缩进。 cindent通过cinoptions变量受到许多选项的影响。 其中一些默认设置为&shiftwidth * 2 ,您可能需要重置它们。

您案件的相关选项似乎是+N .vimrc文件中,您应该输入以下内容:

set cinoptions+=+1

即使这似乎已经是默认值。

HTML

再次,请参阅$VIMRUNTIME/indent/html.vim :这将通过自定义表达式执行缩进。 我快速看了一下,它似乎没有在任何地方进行任何双缩进,但我可能错了。 可用的全局变量似乎不相关。

在最坏的情况下,您可能希望自己修改该文件并将其放在~/.vim/indent/

其他文件

通常,每个文件都根据自己的标准缩进,查看$VIMRUNTIME/indent/以了解是否以及如何配置它们。

你确定它实际上是两次缩进吗? 可能只是你的shiftwidth值是缩进长度的两倍。 首先确保将shiftwidth值设置为与缩进长度相同的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM