Chris Allen wrote:

On 4/20/06, Linsong <[EMAIL PROTECTED]> wrote:
   I also think here is a little confusing. Since the user are
selecting menu items with <C-N>/<C-P>, and at this time, Enter is
normally assumed as a confirm of the selection. And I think it is very
common a user interface convention.

I disagree, using Enter to select an item from a menu which has been
reached using <C-N>/<C-P> is not a common user interface convention
which I have seen.  Using Enter to select something from a menu
selected with the arrow keys, however, is.  I think this adapts nicely
to the expectations of both the more advanced and less advanced users.
Those who wish to do a minimum of reaching can do so, and those who
like lots of hand waving can have their fill.
Maybe you are right. But I have pressed Enter whenever I want to confirm a selected menu item for several times without thought.

And I just work out a map to make it more convenient for me:

   if exists('*pumvisible')
inoremap <Enter> <C-R>=pumvisible() ? "\<lt>C-y>" : "\<lt>Enter>"<CR>
   endif

  I think it is worth breaking the compatibility between vim6.x and
vim7 since there is no completion menu in vim6.x.

This would break compatibility with itself as well, though, as the
behaviour of <C-N>/<C-P> then varies depending on the value of
completeopt.  Currently the value can be ignored and that makes it
backwards compatible with the expectations of the users (showing the
menu is now the default, so changing the behaviour would not obey the
principle of least surprise).
From a personal perspective, getting used to hitting enter twice at
the ends of lines is a very hard thing to do.

Regards,
Chris Allen

Anyway, thanks for your reply :)

Best regards,
Linsong

Reply via email to