björn, 26.12.2008:
> Hi,
>
> Currently if I use the mouse to close a tab (click the "close" button
> on Mac, right-click tab and select "close" on pop-up menu on Windows)
> when there is a modified buffer I get the following warning message:
> "E37: No write since last change (add ! to override)"
> This is kind of unhelpful since you can't "add !" using the mouse only.
Sorry for hijacking the thread, but while playing around I noticed that
a tabpage cannot be closed with the menu item File->Close (:close) for
me. Typing :close worked, so I looked at runtime/menu.vim:
\ :if winheight(2) < 0 <Bar>
\ confirm enew <Bar>
\ else <Bar>
\ confirm close <Bar>
\ endif<CR>
winheight(2) always returns -1 for me, when on a tabpage without
vertically or horizontally split windows. Maybe there is something wrong
with it, but what's the intention of the :enew in a close item at all?
> The attached patch fixes this problem by displaying the "Save changes"
> dialog instead of the warning message in the above scenario. I think
> it is as simple as calling "conf tabclose" instead of "tabclose" in
> handle_tabmenu() (at least the comment before that function seems to
> imply that it is only called when the user interacts with the GUI
> tabline using the mouse), but correct me if I'm wrong.
Works at least with GTK+ 2 on Linux.
Markus
--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---