From 17f661608fef712223005034a6263946fcfd2d44 Mon Sep 17 00:00:00 2001 From: Chris Paul Date: Tue, 20 Sep 2016 01:11:46 -0700 Subject: [PATCH 1/2] small skip_func improvements this will improve performance depending on the file. I will try and clean it a little --- indent/javascript.vim | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/indent/javascript.vim b/indent/javascript.vim index aee8e2c3..f987bcba 100644 --- a/indent/javascript.vim +++ b/indent/javascript.vim @@ -48,8 +48,11 @@ let s:syng_comment = '\%(comment\|doc\)' " Expression used to check whether we should skip a match with searchpair(). let s:skip_expr = "synIDattr(synID(line('.'),col('.'),0),'name') =~? '".s:syng_strcom."'" function s:skip_func(lnum) - if !s:free || getline(line('.')) =~ '[''/"\\]' || search('`','nW',a:lnum) || search('\*\/','nW',a:lnum) + if !s:free || search('`','nW',a:lnum) || search('\*\/','nW',a:lnum) let s:free = !eval(s:skip_expr) + elseif getline(line('.')) =~ '[''/"\\]' + let s:looksyn = line('.') + return eval(s:skip_expr) endif let s:looksyn = s:free ? line('.') : s:looksyn return !s:free From c7be4c99ddc682de9a4f700ce834bb4f152a2598 Mon Sep 17 00:00:00 2001 From: Chris Paul Date: Tue, 20 Sep 2016 15:50:54 -0700 Subject: [PATCH 2/2] Update javascript.vim --- indent/javascript.vim | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/indent/javascript.vim b/indent/javascript.vim index f987bcba..3ec4abe6 100644 --- a/indent/javascript.vim +++ b/indent/javascript.vim @@ -50,12 +50,11 @@ let s:skip_expr = "synIDattr(synID(line('.'),col('.'),0),'name') =~? '".s:syng_s function s:skip_func(lnum) if !s:free || search('`','nW',a:lnum) || search('\*\/','nW',a:lnum) let s:free = !eval(s:skip_expr) - elseif getline(line('.')) =~ '[''/"\\]' - let s:looksyn = line('.') - return eval(s:skip_expr) + let s:looksyn = s:free ? line('.') : s:looksyn + return !s:free endif - let s:looksyn = s:free ? line('.') : s:looksyn - return !s:free + let s:looksyn = line('.') + return getline(line('.')) =~ '[''/"\\]' && eval(s:skip_expr) endfunction if has('reltime')