texto Espacios de sangrado automático con C en vim?




vim descargar (6)

Me he echado a perder un poco usando Eclipse y Java. Empecé a usar vim para hacer la codificación C en un entorno Linux, ¿hay alguna manera de hacer que vim haga automáticamente el espaciado correcto para los bloques?

Entonces, después de tipear a {la próxima línea tendrá 2 espacios sangrados, y un retorno en esa línea lo mantendrá en la misma sangría, y a} retrocederá 2 espacios?


Escribí todo sobre las pestañas en vim , lo que da algunas cosas interesantes sobre las que no preguntaste. Para aplicar sangrías automáticamente, use:

:set cindent

Para aplicar sangría a dos espacios (en lugar de una sola pestaña de ocho espacios, el valor predeterminado de vim):

:set shiftwidth=2

Para evitar que vim convierta ocho espacios en pestañas:

:set expandtab

Si alguna vez desea cambiar la sangría de un bloque de texto, use <y>. Usualmente uso esto junto con el modo de selección de bloque (v, seleccione un bloque de texto, <o>).

(Intentaría convencerte de que no uses sangrías de dos espacios, ya que a mí (y a la mayoría de las personas) les resulta difícil leer, pero eso es otra discusión).


Tratar:

establecer sw = 2

establecer ts = 2

establecer smartindent


Estos dos comandos deberían hacerlo:

:set autoindent
:set cindent

Para obtener puntos de bonificación, colóquelos en un archivo llamado .vimrc ubicado en su directorio de inicio en Linux


Creo que la mejor respuesta se explica en realidad en el vim wikia:

http://vim.wikia.com/wiki/Indenting_source_code

Tenga en cuenta que desaconseja el uso de "set autoindent". La mejor característica de todo lo que encuentro en esta explicación es que puede establecer configuraciones por archivo, lo que es especialmente útil si programa en Python y C ++, por ejemplo, ya que quiere 4 espacios para pestañas en el primero y 2 para espacios en este último.


Muchas de las funciones de vim (como autoindent y cindent ) están desactivadas por defecto. Para ver realmente lo que vim puede hacer por usted, necesita un ~/.vimrc decente.

Un buen $VIMRUNTIME/vimrc_example.vim está en $VIMRUNTIME/vimrc_example.vim . Si quieres probarlo, usa

:source $VIMRUNTIME/vimrc_example.vim

cuando en vim.

De hecho, te sugiero copiar los contenidos a tu ~/.vimrc ya que está bien comentado, y un buen lugar para comenzar a aprender a usar vim. Puedes hacer esto por

:e $VIMRUNTIME/vimrc_example.vim
:w! ~/.vimrc

Esto sobrescribirá tu ~/.vimrc actual, pero si todo lo que tienes allí es la configuración de sangrado sugerida por Davr, no me cansaría, ya que el vimrc de ejemplo también se encargará de eso. Para obtener una guía completa del ejemplo y lo que hace por usted, consulte :help vimrc-intro .








vi