2011-04-04 13 views
19

¿Hay alguna manera de decirle a Vim que no resalte una palabra una vez? Por ejemplo, en "la contraseña es abc123", no quiero agregar abc123 a la lista de palabras, pero aún así no me gustaría el gran rectángulo rojo a su alrededor.Ignora un "error ortográfico" en Vim

Aclaración: Estoy buscando un comando que haga que el corrector ortográfico ignore la palabra actual (o la última falta de ortografía).

+0

Las buenas contraseñas y los errores de ortografía comparten un carácter incómodo: no se encuentran en los diccionarios. Quizás puedas instrumentalizar el resaltado de sintaxis para esto? ': help spell-syntax' http://vimdoc.sourceforge.net/htmldoc/spell.html#spell-syntax – Boldewyn

+0

@Boldewyn: Es una buena idea que resuelve parte del problema. Todavía me gustaría poder tener, p. nombres extranjeros y abreviaturas en un texto fluido, sin embargo. – Tim

Respuesta

23

Cuando el cursor se posiciona sobre una palabra que se destacó como mal escrito puede añadirlo a su lista de palabras pulsando zg. Vim le permite cargar más de una lista de palabras a la vez, lo que permite tener (por ejemplo) una lista de palabras global y una lista de palabras específica para el proyecto.

De forma predeterminada, cuando ejecuta zg, agregará la palabra actual al primer spellfile que encuentre en su ruta de tiempo de ejecución para la codificación actual. En mi caso, eso resulta ser ~/.vim/spell/en.utf-8.add cuando estoy trabajando con codificación UTF-8. Pruebe a ejecutar los siguientes comandos:

:setlocal spellfile+=~/.vim/spell/en.utf-8.add 
:setlocal spellfile+=oneoff.utf-8.add 

Que te pondrán en marcha para que zg (o 1zg) añade la palabra actual a su spellfile defecto. Pero ejecutar 2zg agregaría la palabra actual a un archivo llamado oneoff.utf-8.add, en el mismo directorio que el archivo en el que está trabajando. Si el archivo no existe, Vim intentará crearlo para usted.

Cuando vuelva a abrir el archivo en el futuro, deberá ejecutar los mismos dos comandos para que Vim verifique el archivo de tipo oneoff.utf-8.add. Desafortunadamente, Vim no le permite configurar la opción de archivo de tipo spellfile en modeline, de modo que si desea ejecutar estos comandos automáticamente cuando se abre el archivo, deberá encontrar otra forma. This question incluye algunas ideas sobre cómo proceder.

+0

Esto parece una solución plausible. ¡Gracias! – Tim

29

Sin tener la palabra almacenada en alguna parte, es difícil (por no decir imposible) ignorarla siempre.

Pero, si usted está buscando para ignorar la palabra de verdad vez, es sólo por un momento, puede agregarlo a la lista interna con el comando zG.

               *zG* 
zG    Like "zg" but add the word to the internal word list 
       |internal-wordlist|. 


               *internal-wordlist* 
The internal word list is used for all buffers where 'spell' is set. It is 
not stored, it is lost when you exit Vim. It is also cleared when 'encoding' 
is set. 
Cuestiones relacionadas