From afb84a837c8aa2d1f37124876f0fb49fb583ead0 Mon Sep 17 00:00:00 2001 From: Daniel Hahler Date: Sat, 2 May 2015 16:42:04 +0200 Subject: [PATCH] rename: save and restore view before/after changes --- jedi_vim.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/jedi_vim.py b/jedi_vim.py index 88f6682..31015b5 100644 --- a/jedi_vim.py +++ b/jedi_vim.py @@ -461,14 +461,19 @@ def rename(): buffers.add(vim.current.buffer.name) + # Save view. + saved_view = vim_eval('winsaveview()') + vim.current.window.cursor = r.start_pos vim_command('normal! cw%s' % replace) + # Restore view. + vim_command('call winrestview(%s)' % PythonToVimStr(saved_view)) + # Restore previous tab and window. vim_command('tabnext {:d}'.format(saved_tab)) vim_command('{:d}wincmd w'.format(saved_win)) - vim.current.window.cursor = cursor if len(buffers) > 1: echo_highlight('Jedi did {:d} renames in {:d} buffers!'.format( len(temp_rename), len(buffers)))