From f9ea25ec4e169e57533bc402f44ad5b8f69d195d Mon Sep 17 00:00:00 2001 From: Enrico Date: Fri, 22 Feb 2013 10:48:56 -0300 Subject: [PATCH] Improved opening file in existing or new tab. --- plugin/jedi_vim.py | 22 ++-------------------- 1 file changed, 2 insertions(+), 20 deletions(-) diff --git a/plugin/jedi_vim.py b/plugin/jedi_vim.py index 0610e1d..048b2a3 100644 --- a/plugin/jedi_vim.py +++ b/plugin/jedi_vim.py @@ -302,27 +302,9 @@ def rename(): def tabnew(path): + "Open a file in a new tab or switch to an existing one" path = os.path.abspath(path) - for tab_nr in range(int(vim.eval("tabpagenr('$')"))): - for buf_nr in vim.eval("tabpagebuflist(%i + 1)" % tab_nr): - buf_nr = int(buf_nr) - 1 - try: - buf_path = vim.buffers[buf_nr].name - except IndexError: - # Just do good old asking for forgiveness. - # don't know why this happens :-) - pass - else: - if buf_path == path: - # tab exists, just switch to that tab - vim.command('tabfirst | tabnext %i' % (tab_nr + 1)) - break - else: - continue - break - else: - # tab doesn't exist, add a new one. - vim.command('tabnew %s' % path) + vim.command('tab drop %s' % path) def escape_file_path(path):