我的.vimrc
文件有问题:
我写的python代码是正确的。但我有压痕问题。
当我把is放入我的.vimrc文件中时:
" indentation python
au BufNewFile,BufRead *.py
\ set tabstop=4
\ set softtabstop=4
\ set shiftwidth=4
\ set textwidth=79
\ set expandtab
\ set ts=4
\ set sw=4
\ set ai
\ set autoindent
\ set fileformat=unix
\ set expandtab ts=4 sw=4 ai
但是一旦python文件打开,如果我运行set expandtab ts=4 sw=4 ai
当选择代码并点击S-=
时,vim将正确地开始缩进。
有什么想法吗?在
这在Vim中不是有效的语法。
\
只取消换行符,它不允许您链接命令(您有|
来执行)。您所写的内容相当于(截断为选项的一个子集):这显然没有意义,因为
set
不是一个有效的选项。在所以你可以选择
^{pr2}$(使它成为一个具有多个设置的
set
命令),或者您可以这样做(使其成为多个
set
命令)。在但是,这是一种不好的做法,因为选项将全局设置;例如,如果先加载JavaScript文件,然后加载Python文件,然后返回JavaScript缓冲区,它将具有Python设置。您应该更喜欢使用
setlocal
。在另外,使用
FileType python
而不是BufNewFile,BufRead *.py
通常是有意义的——在Python的例子中可能不是特别的,但是有些语言可以有多个扩展。在最后,这允许您通过将依赖于语言的设置放在
.vim/after/ftplugin/python.py
中来清理.vimrc
。您不需要autocmd
,只需编写您的setlocal
,并确保您的设置将针对python
文件类型的每个缓冲区执行。在因此,我最后的建议是:
或相当于
相关问题 更多 >
编程相关推荐