diff --git a/plugin/magit.vim b/plugin/magit.vim index 5c73b17..762e99b 100644 --- a/plugin/magit.vim +++ b/plugin/magit.vim @@ -773,6 +773,7 @@ function! magit#toggle_help() call magit#update_buffer() endfunction +let g:magit_windows = {} " magit#show_magit: prepare and show magit buffer " it also set local mappings to magit buffer " param[in] display: @@ -810,7 +811,8 @@ function! magit#show_magit(display, ...) let buffer_name=fnameescape('magit://' . git_dir) - let magit_win = magit#utils#search_buffer_in_windows(buffer_name) + let magit_win = has_key(g:magit_windows, buffer_name) ? + \ g:magit_windows[buffer_name] : 0 if ( magit_win != 0 ) silent execute magit_win."wincmd w" @@ -830,6 +832,7 @@ function! magit#show_magit(display, ...) else throw 'parameter_error' endif + let g:magit_windows[buffer_name] = winnr() silent execute "buffer " . buffer_name