En mi trabajo, debo seguir el estilo de la casa para la sangría, que es la siguiente:
- 2 espacios al codificar html y ruby
- pestañas al codificar javascript, con tabwidth = 4 recomendado
¿Cuál es la mejor manera de especificar diferentes preferencias de espacios en blanco por tipo de archivo?
vim
whitespace
preferences
nelstrom
fuente
fuente
Respuestas:
Hay muchas maneras, pero aquí hay una manera simple y fácil de entender. agregue estas líneas a su
~/.vimrc
:fuente
La respuesta de Peter es bastante directa, pero desafortunadamente las opciones no son correctas. En su lugar, debe usar las siguientes opciones:
También tenga en cuenta:
:set list
.:retab!
comando.fuente
expandtab
más?sts=2
+1 a la respuesta de Peter, pero Vim también proporciona otra solución. Si desea hacer algo más complicado que uno solo
setlocal
, como configurar un montón de opciones, comandos y asignaciones a la vez, la función del complemento de tipo de archivo de vim viene al rescate.Debe tener
filetype plugin on
ofiletype plugin indent on
en su.vimrc
, y luego crear un complemento para, por ejemplo, ruby que pueda crear~/.vim/ftplugin/ruby.vim
. Técnicamente se puede utilizar cualquier comando te gusta aquí, para ejecutarse cuando se carga un archivo de Ruby, pero los más recomendados sonsetlocal
,map <buffer>
,command -buffer
, y las funciones que definen. Mucha más información está en la Guía del usuario; si está bastante familiarizado con las secuencias de comandos vim, vaya a:help 41.11
, de lo contrario, lea:help usr_40
y:help usr_41
.fuente
También hay un buen script vim: DetectIndent que intenta detectar la sangría de un archivo que abre. Es muy útil si trabaja con muchos archivos con diferentes estilos de codificación.
Yo uso un autocomando en mi .vimrc :
fuente
Para insertar caracteres de espacio cada vez que se presiona la tecla tab, configure la opción 'expandtab':
El siguiente paso es controlar el número de caracteres de espacio que se insertarán cuando se presione la tecla de tabulación, configure la opción 'tabulación'. Por ejemplo, para insertar 2 espacios para una pestaña, use:
ref: http://vim.wikia.com/wiki/Converting_tabs_to_spaces
fuente