summaryrefslogtreecommitdiffstats
path: root/runtime/pack/dist/opt
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-07-03 18:18:23 +0200
committerBram Moolenaar <Bram@vim.org>2018-07-03 18:18:23 +0200
commit3d1d6475f9665660c80cc53a7da2d5450b8b8d08 (patch)
tree54e38ec4376fdc2d3e2fc586f6721fef7d51aa2c /runtime/pack/dist/opt
parente6882bdc44efbcea0af647f5759a8f48cf29e27c (diff)
patch 8.1.0143: matchit and matchparen don't handle E363v8.1.0143
Problem: Matchit and matchparen don't handle E363. Solution: Catch the E363 error. (Christian Brabandt)
Diffstat (limited to 'runtime/pack/dist/opt')
-rw-r--r--runtime/pack/dist/opt/matchit/plugin/matchit.vim12
1 files changed, 9 insertions, 3 deletions
diff --git a/runtime/pack/dist/opt/matchit/plugin/matchit.vim b/runtime/pack/dist/opt/matchit/plugin/matchit.vim
index 5e9df89c47..6f3c0f8942 100644
--- a/runtime/pack/dist/opt/matchit/plugin/matchit.vim
+++ b/runtime/pack/dist/opt/matchit/plugin/matchit.vim
@@ -1,5 +1,5 @@
" matchit.vim: (global plugin) Extended "%" matching
-" Last Change: 2017 Sep 15
+" Last Change: 2018 Jul 3 by Christian Brabandt
" Maintainer: Benji Fisher PhD <benji@member.AMS.org>
" Version: 1.13.3, for Vim 6.3+
" Fix from Fernando Torres included.
@@ -272,7 +272,7 @@ function! s:Match_wrapper(word, forward, mode) range
" execute "normal!" . curcol . "l"
" endif
if skip =~ 'synID' && !(has("syntax") && exists("g:syntax_on"))
- let skip = "0"
+ let skip = '0'
else
execute "if " . skip . "| let skip = '0' | endif"
endif
@@ -719,10 +719,16 @@ fun! s:MultiMatch(spflag, mode)
let openpat = substitute(openpat, ',', '\\|', 'g')
let closepat = substitute(close, '\(\\\@<!\(\\\\\)*\)\@<=\\(', '\\%(', 'g')
let closepat = substitute(closepat, ',', '\\|', 'g')
+
if skip =~ 'synID' && !(has("syntax") && exists("g:syntax_on"))
let skip = '0'
else
- execute "if " . skip . "| let skip = '0' | endif"
+ try
+ execute "if " . skip . "| let skip = '0' | endif"
+ catch /^Vim\%((\a\+)\)\=:E363/
+ " We won't find anything, so skip searching, should keep Vim responsive.
+ return
+ endtry
endif
mark '
while level