Package: vim
Version: 2:9.1.1230-2
Severity: normal

Dear Maintainer,

The official vim package available in Debian Trixie incorrectly
completes the wrong text when the fuzzy 'completopt' is set. This
behaviour was corrected in 057ea1232 (patch 9.1.1931: completion: wrong
item selected with fuzzy and noinsert, 2025-11-27), which I've confirmed
in a source build.

Depending on the tokens in the file, the first result shown in the
insert-mode completion menu is not the text which will be completed.
This behaviour is easily reproducible. I've put together a minimal
reproducer to demonstrate the behaviour below.

$ cat reproducer.vim
" Navigate to the end of the comment line '" Other' and enter insert mode.
" Hit <CTRL-N> to display menu and notice that 'ColumnOtherMaximum' is selected.
" Hit <CTRL-N> and note it insert the wrong item '// Other Columns'.
set nocompatible
set completeopt=menuone,noinsert,popup,fuzzy
set completefuzzycollect=keyword

" // Other Columns
" ColumnOtherUnit
" ColumnOtherMinimum
" Other
" ColumnOtherMaximum
" ColumnOtherSelected

$ vim -u reproducer.vim reproducer.vim

I use insert-mode completion regularly in my day-to-day, and I would
like to include results from fuzzy matches. Unfortuantely due to this
bug in the package, I need to build from source.

-- Package-specific info:

--- real paths of main Vim binaries ---
/usr/bin/vi is /usr/bin/vim.gtk3
/usr/bin/vim is /usr/bin/vim.gtk3
/usr/bin/gvim is /usr/bin/vim.gtk3

-- System Information:
Debian Release: 13.3
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.63+deb13-amd64 (SMP w/12 CPU threads; PREEMPT)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_CA:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages vim depends on:
ii  libacl1      2.3.2-2+b1
ii  libc6        2.41-12+deb13u1
ii  libgpm2      1.20.7-11+b2
ii  libselinux1  3.8.1-1
ii  libsodium23  1.0.18-1+deb13u1
ii  libtinfo6    6.5+20250216-2
ii  vim-common   2:9.1.1230-2
ii  vim-runtime  2:9.1.1230-2

vim recommends no packages.

Versions of packages vim suggests:
ii  universal-ctags [ctags]  5.9.20210829.0-2
pn  vim-doc                  <none>
pn  vim-scripts              <none>

-- no debconf information

Reply via email to