From 612260817d2bf7d88ee6e7b4e8f69d7de2deee5b Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Wed, 5 Jun 2019 22:51:16 +1200 Subject: Further refactor/simplify --- autoload/insert_suspend_hlsearch.vim | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'autoload/insert_suspend_hlsearch.vim') diff --git a/autoload/insert_suspend_hlsearch.vim b/autoload/insert_suspend_hlsearch.vim index de43d10..4408d52 100644 --- a/autoload/insert_suspend_hlsearch.vim +++ b/autoload/insert_suspend_hlsearch.vim @@ -1,8 +1,15 @@ -" Save value of 'hlsearch' into a variable, and disable it +" Suspend 'hlsearch' if set, add hook to restore on insert completion function! insert_suspend_hlsearch#() abort - let s:hlsearch = &hlsearch + + " Nothing to do if 'hlsearch' isn't set + if !&hlsearch + return + endif + + " Turn off 'hlsearch' and set a hook to re-enable it when insert mode ends set nohlsearch autocmd insert_suspend_hlsearch InsertLeave * - \ let &hlsearch = s:hlsearch + \ set hlsearch \|autocmd! insert_suspend_hlsearch InsertLeave + endfunction -- cgit v1.2.3