¿Cómo hacer que VIM muestre paréntesis sin cerrar?


9

¿Hay alguna manera de que pueda cambiar mi archivo .vimrc para que se resalten los paréntesis / corchetes / llaves no cerrados? Por ejemplo, lo siguiente resaltaría el paréntesis después de la palabra main:

public static void main(String[] args
{
    System.out.println("Foobar");
}

O quizás, haga que VIM me diga de alguna manera que tengo un paréntesis no cerrado. Parece que VIM se muestra actualmente cuando tiene un paréntesis sin abrir, pero no cuando tiene uno sin cerrar .


Esto sería bueno, aunque dudo que veamos una solución ya que el valor predeterminado sería el mismo próximo par cercano, por lo que el que falta después de String [] se supondrá como el siguiente ya que VIM no sabe que no es un argumento.
nerdwaller

Respuestas:


2

Existe un complemento para que vim haga exactamente esto. Dado este su código de ejemplo:

public static void main(String[] args
{
    System.out.println("Foobar");
}

Donde sea que coloque el cursor, se resaltarán los paréntesis posteriores más cercanos que no coinciden. El único defecto es que no mira hacia adelante, para ver si coincide más tarde. Entonces, si estuvieras dentro de los paréntesis principales, resaltaría el de apertura. Es básicamente funcional y debería servirle bien.

Se llama vim-matchopen y se puede encontrar en https://github.com/arnar/vim-matchopen


Si no ha tenido fecha de vencimiento instalando complementos vim, aquí hay una introducción rápida para este. (Supongo que está utilizando Linux).

Ve al sitio de descarga. Si tienes git y sabes cómo usarlo, adelante. De lo contrario, utilice el botón de descarga zip y extraiga el zip descargado en algún destino temporal.

A continuación, debe tomar el script plugin/matchopen.vimy colocarlo en el directorio ~/.vim/plugin. Si ese directorio no existe, créelo.

Eso debería ser. Entonces estarás en funcionamiento. Simplemente reinicie vim.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.