开发者

Possible to highlight matching quotes in vim?

开发者 https://www.devze.com 2023-01-04 10:33 出处:网络
With the syntax highlighting in vim, I get the handy feature where the matching paren or bracket will be highlighted when I put the cursor over it. Is it possible to do the same t开发者_如何学运维hing

With the syntax highlighting in vim, I get the handy feature where the matching paren or bracket will be highlighted when I put the cursor over it. Is it possible to do the same t开发者_如何学运维hing for quotes?


While not eloquent, one workaround is to select everything inside of matching quotes. You can do this by using the command:

vi"

This will select everything in-between the quotes. However, you won't get proper results with nested quotes as it will match the first found ".


The problem with quotes is that they are symmetrical. It would be very hard to determine which quotes belong with each other.

For instance: "Which \"quotes\" go with each other in this statement?"

This has been discussed on the vim mailing lists a few times, as well as in the bug trackers of a few of the auto-delimiter type plugins. In every case that I've seen, it's been decided that this is better left as is.


The solution is here: Stackoverflow in matchquote except it has the unfortunate limitation that only the current line is considered. matchit seems to comes close by allowing defining of multi-line matches of words such as if/endif but still no multi-line possibility that I can figure out to get matching for " and '.


VIM already highlights quoted text in a different color, so you can easily identify strings. Do you really need it to match quotes when the whole string is already highlighted?


From :h matchparen

The characters to be matched come from the 'matchpairs' option. You can change the value to highlight different matches. Note that not everything is possible. For example, you can't highlight single or double quotes, because the start and end are equal.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号