autocompletion – ¿Cómo puede ayudarme Vim a recordar las comas finales en los archivos BibTeX?

Pregunta:

Edito bastantes archivos BibTeX y con regularidad olvido las comas finales:

Por ejemplo:

@Book{cooke2015british,
 author = {Cooke, Lez},
 title = {British Television Drama},
 publisher = {Palgrave on behalf of the British Film Institute},
 year = {2015},
 keywords = {about}
 address = {London},
 isbn = {978-1844576234}
 }

Verá que olvidé agregar la coma después de las keywords = {about} , lo que significa que tengo que dedicar tiempo a depurar. ¿Hay alguna forma en que Vim pueda hacerme recordar? Por cierto, tengo el complemento bib_autocomp.vim

Respuesta:

Solución rápida y sucia:

:match Error /^\s\+.*,\@<!\ze\n\s\+\w/

También puede crear una sintaxis especial para archivos BibTeX usando el mismo patrón.

Algunas explicaciones sobre la expresión regular utilizada:

  1. ^\s\+ busca palabras clave con sangría.
  2. \ze detiene la coincidencia de patrones de modo que no se marca la siguiente línea.
  3. ,\@<!\n busca líneas que no terminen con coma.
  4. \n\s\+\w garantiza que hay una nueva entrada después de la que se está escaneando actualmente.

Se puede usar el mismo patrón para saltar entre líneas erróneas usando vimgrep siguiente manera:

:vimgrep /^\s\+.*,\@<!\ze\n\s\+\w/ %

Si la ventana de corrección rápida no se abre automáticamente, se puede abrir usando :copen . Y :cnext y :cprevious se pueden usar para saltar entre errores.

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım