Mercurial > vim
changeset 32701:f62b36316d67
feat(heex): borrow matchit support from html (#12717)
Commit: https://github.com/vim/vim/commit/8967f6c4b9e2071dea9a63dbbbb93f6b9119ae99
Author: Chris Vincent <chris.vincent@hey.com>
Date: Wed Aug 9 09:49:44 2023 -0500
feat(heex): borrow matchit support from html (https://github.com/vim/vim/issues/12717)
* feat(heex): borrow matchit support from html
Makes % support behave the same in heex as in html. For example, quickly moving the cursor between opening and closing tags.
* Remove unnecessary line; define b:undo_ftplugin first
* Remove b:html_set_match_words
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 09 Aug 2023 17:00:05 +0200 |
parents | 4b3ab72b7367 |
children | 2200e4e8b3ae |
files | runtime/ftplugin/heex.vim |
diffstat | 1 files changed, 11 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/ftplugin/heex.vim +++ b/runtime/ftplugin/heex.vim @@ -14,3 +14,14 @@ setlocal comments=:<%!-- setlocal commentstring=<%!--\ %s\ --%> let b:undo_ftplugin = 'set sw< sts< et< com< cms<' + +" HTML: thanks to Johannes Zellner and Benji Fisher. +if exists("loaded_matchit") && !exists("b:match_words") + let b:match_ignorecase = 1 + let b:match_words = '<!--:-->,' .. + \ '<:>,' .. + \ '<\@<=[ou]l\>[^>]*\%(>\|$\):<\@<=li\>:<\@<=/[ou]l>,' .. + \ '<\@<=dl\>[^>]*\%(>\|$\):<\@<=d[td]\>:<\@<=/dl>,' .. + \ '<\@<=\([^/!][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>' + let b:undo_ftplugin ..= " | unlet! b:match_ignorecase b:match_words" +endif