Como o VIM mostra parênteses não fechados?

9

Existe uma maneira de alterar meu arquivo .vimrc para destacar os parênteses / colchetes / chaves não fechados? Por exemplo, o seguinte destacaria o parêntese após a palavra main:

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

Ou talvez, de alguma forma, o VIM me diga que tenho um parêntese não fechado. Parece que o VIM mostra atualmente quando você tem um parêntese fechado, mas não quando você tem um parêntese não fechado .

Nosrettap
fonte
Isso seria bom, embora eu duvide que veremos uma solução, já que o padrão seria o mesmo próximo fechamento, portanto, a que falta depois de String [] seria assumida como a seguinte, pois o VIM não sabe que isso não é um argumento.
Nerdwaller 02/02

Respostas:

2

Existe um plugin para o vim fazer exatamente isso. Dado isso, seu código de exemplo:

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

Onde quer que você posicione o cursor, os parênteses anteriores não correspondentes serão mostrados. O único defeito é que ele não olha para frente, para ver se é correspondido mais tarde. Portanto, se você estivesse dentro dos parênteses do pringln, destacaria o primeiro. É basicamente funcional e deve atendê-lo bem.

É chamado vim-matchopen e pode ser encontrado em https://github.com/arnar/vim-matchopen


Se você não expirou ao instalar plugins vim, aqui está uma introdução rápida a este. (Estou assumindo que você está usando Linux.)

Vá para o site de download. Se você tem o git e sabe como usá-lo, vá em frente. Caso contrário, use o botão zip de download e extraia o zip baixado para algum destino temporário.

Em seguida, você precisa ter o script plugin/matchopen.vime colocá-lo no diretório ~/.vim/plugin. Se esse diretório não existir, crie-o.

Deve ser isso. Então você estará em funcionamento. Basta reiniciar o vim.

Sudo Bash
fonte