Tengo Vim 7 (mejorado) en CentOS 5, y viene con todos los plugins/scripts habituales de Vim listos para funcionar.¿La sangría de Vim Python no funciona?
$ find /usr/share/vim/vim70/ -name \*python\*
/usr/share/vim/vim70/syntax/python.vim
/usr/share/vim/vim70/ftplugin/python.vim
/usr/share/vim/vim70/indent/python.vim
/usr/share/vim/vim70/autoload/pythoncomplete.vim
Me gustaría pensar que cuando se abre un archivo con extensión .py (vim file.py
) que se carga automáticamente estos plugins, pero no estoy seguro de que es el caso. Lo que quiero es:
Presione TAB y reciba cuatro espacios. Sangría automática en la siguiente línea para suites, condicionales, etc.
Esto funciona al establecer explícitamente tabstop, shiftwidth, etc. en mi archivo .vimrc. ¿No es esto para lo que están los archivos Python? ¿Por qué tengo que configurar estas cosas en mi .vimrc
? ¿Cómo obtengo estas características de los complementos de Vim?
.vimrc actual:
syntax on
set hls
set expandtab
set textwidth=0
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set backspace=indent,eol,start
set incsearch
set ignorecase
set ruler
set wildmenu
set smarttab
filetype indent on
filetype on
filetype plugin on
Entonces, para resumir el archivo ../indent/python.vim no es capaz de establecer la tabstop, shiftwidth, etc ... para mí por lo que se debe especificar en el vimrc? ¿Qué sucede si quiero que tabstop sea diferente según el tipo de archivo? ¿Puedo colocar estas configuraciones de vimrc en el archivo indent/python.vim para que solo las carguen para los archivos de Python? – CarpeNoctem
Puede agregar esas configuraciones a indent/python.vim y obtener ese resultado, pero una forma mejor sería agregar configuraciones específicas de tipo de archivo como autocmds que se ejecutarán después de cargar un búfer. (: él au) – abeyer