如何正确设置Vim自动注册以编辑Python文件?

如何正确设置Vim自动注册以编辑Python文件?

How do I set up Vim autoindentation properly for editing Python files?

我设置Vim(7.1.xxx)来编辑Python文件(* .py)时遇到了麻烦。
缩进似乎被打破(最佳4个空格)。
我已经按照我通过Google找到的一些教程进行了操作。 仍然没有影响:/
请帮忙。


我在我的macbook上使用它:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
" configure expanding of tabs for various file types
au BufRead,BufNewFile *.py set expandtab
au BufRead,BufNewFile *.c set noexpandtab
au BufRead,BufNewFile *.h set noexpandtab
au BufRead,BufNewFile Makefile* set noexpandtab

"
--------------------------------------------------------------------------------
" configure editor with tabs and nice stuff...
"
--------------------------------------------------------------------------------
set expandtab          " enter spaces when tab is pressed
set textwidth=120      "
break lines when line length increases
set tabstop=4          " use 4 spaces to represent tab
set softtabstop=4
set shiftwidth=4       "
number of spaces to use for auto indent
set autoindent         " copy indent from current line when starting a new line

"
make backspaces more powerfull
set backspace=indent,eol,start

set ruler                          " show line and column number
syntax on              "
syntax highlighting
set showcmd            " show (partial) command in status line

(编辑为仅显示与缩进/制表符相关的内容)


我用:

1
2
3
4
5
6
7
8
9
10
11
$ cat ~/.vimrc
syntax on
set showmatch
set ts=4
set sts=4
set sw=4
set autoindent
set smartindent
set smarttab
set expandtab
set number

但是我要尝试达人的参赛作品


一个更简单的选项:只需在/ etc / vim / vimrc文件中取消注释配置的以下部分(最初被注释掉):

1
2
3
    if has("autocmd")
      filetype plugin indent on
    endif

我在python repo中使用vimrc等等:

http://svn.python.org/projects/python/trunk/Misc/Vim/vimrc

我还补充道

1
set softtabstop=4

我在这里有我的旧配置,我正在更新


确保您正在为VIM编辑正确的配置文件。特别是如果你使用的是Windows,那么文件可以在其他平台上命名为_vimrc而不是.vimrc。

在vim类型

:help vimrc

并检查您的_vimrc / .vimrc文件的路径

:echo $HOME

:echo $VIM

确保您只使用一个文件。如果要将配置拆分为较小的块,可以从_vimrc文件中获取其他文件。

:help source


对于更高级的python编辑,请考虑安装simplefold vim插件。它允许您使用正则表达式进行高级代码折叠。我用它来折叠我的类和方法定义,以加快编辑速度。


推荐阅读