From 6ad865e527c555e45b95dbfcc1ba887fdab9f21a Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Fri, 22 Feb 2019 17:15:15 +0100 Subject: [PATCH] use winsaveview instead of getpos getpos messes with startofline --- autoload/limelight.vim | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/autoload/limelight.vim b/autoload/limelight.vim index 2ebfe0f..ed2728e 100644 --- a/autoload/limelight.vim +++ b/autoload/limelight.vim @@ -46,15 +46,15 @@ function! s:getpos() let bop = get(g:, 'limelight_bop', '^\s*$\n\zs') let eop = get(g:, 'limelight_eop', '^\s*$') let span = max([0, get(g:, 'limelight_paragraph_span', 0) - s:empty(getline('.'))]) - let pos = exists('*getcurpos')? getcurpos() : getpos('.') + let win_view = winsaveview() for i in range(0, span) let start = searchpos(bop, i == 0 ? 'cbW' : 'bW')[0] endfor - call setpos('.', pos) + call winrestview(win_view) for _ in range(0, span) let end = searchpos(eop, 'W')[0] endfor - call setpos('.', pos) + call winrestview(win_view) return [start, end] endfunction