我在编写用于编辑python文件的VIM(7.1.xxx)时遇到了麻烦。 缩进似乎被打破(最佳4个空格)。 我已经按照我通过Google找到的一些教程进行了操作。仍然没有影响:/ 请帮忙。
答案 0 :(得分:61)
我在我的macbook上使用它:
" 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 :(得分:13)
我用:
$ 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
但是我要尝试达人的参赛作品
答案 2 :(得分:9)
一个更简单的选项:只需在/ etc / vim / vimrc文件中取消注释配置的以下部分(最初被注释掉):
if has("autocmd")
filetype plugin indent on
endif
答案 3 :(得分:4)
我在python repo中使用vimrc等等:
http://svn.python.org/projects/python/trunk/Misc/Vim/vimrc
我也添加了
set softtabstop=4
答案 4 :(得分:3)
确保您正在为VIM编辑正确的配置文件。特别是如果您使用的是Windows,那么该文件可以像其他平台一样命名为_vimrc而不是.vimrc。
在vim类型
:help vimrc
并使用
检查_vimrc / .vimrc文件的路径 :echo $HOME
:echo $VIM
确保您只使用一个文件。如果要将配置拆分为较小的块,可以从_vimrc文件中获取其他文件。
:help source
答案 5 :(得分:1)
更高级的python编辑考虑安装simplefold vim插件。它允许您使用正则表达式进行高级代码折叠。我用它来折叠我的类和方法定义,以便更快地进行编辑。
答案 6 :(得分:0)
结合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