Habilitar el resaltado de sintaxis de Vim de forma predeterminada

121

Sé cómo activar y desactivar el resaltado de sintaxis en vim ejecutando esto en el editor:

:syntax on/off

Pero quiero que el resaltado de sintaxis esté habilitado de forma predeterminada, por lo que no tengo que activarlo cada vez que ejecuto vim.

¿Cómo hago esto?

Lilroo
fuente
2
¿Quizás mudarse al Vim Stack Exchange?
QuantumFool

Respuestas:

178

Edite su $HOME/.vimrc(Unix / Linux / OSX) o $HOME/_vimrc(Windows) para incluir la siguiente línea:

syntax on

EDITAR

Si su resaltado de sintaxis no funciona cuando inicia Vim, probablemente no tenga un $HOME/.vimrco $HOME/_vimrc(conocido colectivamente a partir vimrcde ahora). En ese caso, tiene dos opciones:

  • Crea un vacío vimrc.
  • Copie vimrc_example.vimcomo su vimrc(recomendado, gracias @oyenamit). Puede encontrarlo vimrc_example.vimen el directorio de ejecución.

La ubicación del directorio de tiempo de ejecución varía entre los sistemas operativos:

  • En mi sistema (Arch Linux y Mac, gracias @totophe), está en formato /usr/share/vim/vim73.
  • En Windows, está en formato \Program Files\Vim\vim73.
Ilmo Euro
fuente
1
No puedo encontrar .vimrc, estoy usando una Mac con Lion. Puedo encontrar .viminfo
lilroo
7
Si no hay uno, puede crearlo. Simplemente escriba: e ~ / .vimrc a vim, escriba la línea y guarde (: w).
Ilmo Euro
6
@lilroo Si bien esto resuelve su problema, le aconsejo que no cree un vimrc desde cero. En su lugar, obtenga el vimrc de ejemplo de la siguiente ubicación: /Applications/MacVim.app/Contents/Resources/vim/runtime/vimrc_example.vim. Copie este archivo en su $ HOME como .vimrc. Activa muchas cosas básicas automáticamente (sintaxis, resaltado de búsqueda, copia de seguridad, etc.). Luego puede modificarlo según sus necesidades.
oyenamit
3
¿Hay alguna diferencia entre syntax ony syntax enable?
Sonique
4
@Sonique syntax enablemantiene su configuración de color, la syntax onanula ( :help :syn-on).
Ilmo Euro
8

Además, para resaltar el TIPO específico de sintaxis (o lenguaje de programación) en un archivo, puede usar los siguientes comandos, mientras que el archivo ya está abierto en Vim:

:set filetype=php

O atajo:

:se ft=php

Los comandos anteriores cambiarán el resaltado de sintaxis del archivo actual como si se resaltara el código PHP.

Amit Verma
fuente
6

Descomentar la "sintaxis de" en el archivo vimrc.

Mover al directorio,

cd /etc/vim/

vim vimrc

ahora busque "sintaxis" y descomente. Guárdelo y vuelva a abrir el archivo en vim.

Anurag Choudhary
fuente
1
La mejor forma para mi. Tks. Si usted no tiene syntaxsólo tiene que añadir, syntax enable. Entonces source vimrc. Lo tienes de forma permanente para usarlo más tarde
Ender phan
3

Para cualquiera que llegue aquí debido al uso de TurnKeyLinux vim-tinyque no tiene el módulo de sintaxis habilitado, pruebe este artículo para instalarlo por completovim

http://www.turnkeylinux.org/forum/support/20140108/solved-bash-command-not-found-after-replacing-package

tl; dr

# apt-get remove vim-tiny
# apt-get install vim
# hash vim
# vim
Josh Peak
fuente
1
FWIW a partir de la v14.0, puede instalar vim y todo funciona como espera (independientemente de si desinstala vim-tiny o no). Fue un error en la forma en que vim-tiny se configuró para ejecutarse como 'vim'. Ahora actualiza la ruta binaria correctamente ...
Jeremy Davis
1

También descubrí que esta es una de las lecciones en vimtutor.

Para encontrarlo, puede escribir el comando vimtutoren su Terminal (que usé en Mac) y desplazarse hacia abajo para ver si hay una lección llamada CREATE A STARTUP SCRIPT(para mí fue la Lección 7.2), donde describe cómo configurar un vimrcarchivo inicial .

Ben
fuente
Tengo problemas con esto. La ejecución del tutorial ha estado bien, aunque no tengo un conjunto de $ VIMRUNTIME, por lo que no tengo idea de dónde se almacena este vimrc_example.vim.
Nebbles
0

En mi $HOME/.vimrc, cargo un esquema de color (solarizado) y descubrí que necesito colocarlo syntax on después de cargar el complemento. Si es antes de cargar el complemento, no funciona.

" this turns syntax highlighting on by default

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'lifepillar/vim-solarized8'

syntax on
" this does not turn syntax highlighting on by default

syntax on

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'lifepillar/vim-solarized8'
mate
fuente