Tony wrote:
> • In Normal gvim with Motif GUI in GUI mode, :echo exists(':tearoff')
> gives 0 but menus can be teared off from the menu bar with the mouse
> • In the same in Console mode, :echo exists(':tearoff') gives 2
> • In Huge gvim with GTK3 GUI (where menus cannot be teared off with
> the mouse), :echo exists(':tearoff') gives 2 even in the GUI.
> • In all these cases, :tearoff PopUp (or with any other menu name)
> gives error "E319: Sorry, the command is not available in this
> version."
>
> In my humble opinion, E319 ought never to happen if a prior check with
> exists(':command') has given 2.
This is a special case: The command is in the list of supported
commands, but it is only actually implemented for MS-Windows.
> :help tear-off-menus says that tearoff menus are available with Motif
> or GTK2 GUIs but not GTK3 version 3.4 or later and indeed, I can tear
> off menus (but only with the mouse) in Motif gvim but not in GTK3
> 3.24.38.
>
> • Maybe the Motif Vim should evaluate exists(':tearoff') to zero even
> when not in GUI mode?
Having exists() return non-zero for a command that doesn't work is
misleading. However, returning zero also isn't correct, since Vim does
know about the command. Currently the returned values are:
1 for match with start of a command
2 full match with a command
3 matches several user commands
That doesn't leave room for a new value. The best I can think of would
be to return one:
1 for match with start of a command
and full match with command that is
not implemented
Any better ideas?
> • Maybe the GTK3 GUI with GTK3 3.4 or later should evaluate
> exists('tearoff') to zero in all cases?
> • Maybe the help for :tearoff (which is in gui_w32.txt) should insist
> on the fact that this command applies only to Windows?
It won't hurt to state that explicitly.
> • Or, contrariwise, maybe the :tearoff command should be extended to
> Motif and GTK2 GUIs, which have tearoff menus (but only by mouse
> AFAICT)?
I do not know how to do that. Perhaps there is a function for that, I
haven't attempted finding it.
--
Google is kind of like Dr. Who's Tardis; it's weirder on the
inside than on the outside...
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// \\\
\\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/20230626113126.7DF1A1C054C%40moolenaar.net.