diff --git a/python3/vimspector/code.py b/python3/vimspector/code.py index d3c6324..98aeca5 100644 --- a/python3/vimspector/code.py +++ b/python3/vimspector/code.py @@ -134,6 +134,7 @@ class CodeView( object ): utils.JumpToWindow( self._window ) try: utils.OpenFileInCurrentWindow( frame[ 'source' ][ 'path' ] ) + vim.command( 'doautocmd User VimspectorJumpedToFrame' ) except vim.error: self._logger.exception( 'Unexpected vim error opening file {}'.format( frame[ 'source' ][ 'path' ] ) ) diff --git a/python3/vimspector/utils.py b/python3/vimspector/utils.py index 5281ec8..4022315 100644 --- a/python3/vimspector/utils.py +++ b/python3/vimspector/utils.py @@ -76,14 +76,7 @@ def WindowForBuffer( buf ): def OpenFileInCurrentWindow( file_name ): buffer_number = BufferNumberForFile( file_name ) try: - if "vimspectorStep" in vim.current.buffer.vars: - del vim.current.buffer.vars[ "vimspectorStep" ] - # @todo: what if the same buffer is still visited by another thread - vim.command( 'doautocmd User VimspectorFrameLeavePre' ) - vim.current.buffer = vim.buffers[ buffer_number ] - vim.current.buffer.vars[ "vimspectorStep" ] = 1 - vim.command( 'doautocmd User VimspectorFrameEnter' ) except vim.error as e: if 'E325' not in str( e ): raise diff --git a/tests/ui.test.vim b/tests/ui.test.vim index 91cd214..390f870 100644 --- a/tests/ui.test.vim +++ b/tests/ui.test.vim @@ -410,16 +410,16 @@ function! Test_CustomWinBar() %bwipe! endfunction -function! Test_VimspectorFrameEnter() - augroup TestVimspectorFrameEnter +function! Test_VimspectorJumpedToFrame() + augroup TestVimspectorJumpedToFrame au! - au User VimspectorFrameEnter let b:vimspectorStepIsThere = 'foo' + au User VimspectorJumpedToFrame let b:vimspectorStepIsThere = 'foo' augroup END call s:StartDebugging() call assert_equal( 'foo', getbufvar(bufnr(), 'vimspectorStepIsThere', 0) ) - au! TestVimspectorFrameEnter + au! TestVimspectorJumpedToFrame unlet b:vimspectorStepIsThere call vimspector#test#setup#Reset() %bwipe!