89

我无法设置 Vim (7.1.xxx) 来编辑 Python 文件 (*.py)。缩进似乎被破坏了(最佳 4 个空格)。我遵循了一些通过 Google 找到的教程。仍然没有效果:/请帮助。

4

7 回答 7

79

我在我的 macbook 上使用它:

" configure expanding of tabs for various file types
au BufRead,BufNewFile *.py set expandtab
au BufRead,BufNewFile *.c set expandtab
au BufRead,BufNewFile *.h set expandtab
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

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

于 2008-09-15T17:53:33.083 回答
15

我用:

$ 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

但是我要试试达人的词条

于 2012-08-06T15:01:33.240 回答
13

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

    if has("autocmd")
      filetype plugin indent on
    endif
于 2017-06-03T02:05:02.140 回答
5

我在 python 存储库中使用 vimrc 等:

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

我也补充

set softtabstop=4

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

于 2009-12-08T18:37:41.153 回答
3

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

在 vim 类型中

:help vimrc

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

:echo $HOME

:echo $VIM

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

:help source

于 2008-09-15T20:50:36.170 回答
1

结合 Daren 和 Thanos 提出的解决方案,我们有一个很好的 .vimrc 文件。

-----
" 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
set smartindent
set smarttab
set expandtab
set number

" 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

于 2020-02-13T10:25:27.757 回答
0

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

于 2008-09-15T23:42:29.143 回答