Subject: 29.0.50; fido-vertical-mode: ssh host completion

From: Manuel Uberti <[email-masked]>
Date: Mon, 25 Oct 2021 16:37:53 +0200

Hi,

if I do this from emacs -Q:

- M-x fido-vertical-mode
- C-x C-f
- Type /ssh:
- Press TAB

I see the *Completions* buffer with this content:

Click on a completion to select it.
In this buffer, type RET to select the completion near point.

Possible completions are:
ssh:
sshx:
sshfs:

If I instead do not enable fido-vertical-mode, and I do:

- C-x C-f
- Type /ssh:
- Press TAB

I see this in the *Completions* buffer:

Click on a completion to select it.
In this buffer, type RET to select the completion near point.

Possible completions are:
ssh:work-serv:
ssh:server:

Which are the hosts coming from my ~/.ssh/config, and this is what I was 
expecting with fido-vertical-mode.

I noticed fido-vertical-mode uses icomplete--fido-mode-setup, which among other 
things sets (with setq-local) completion-styles to '(flex).

Now, if I use icomplete-vertical-mode with completion-styles set to
'(basic partial-completion flex), pressing TAB after /ssh: shows me the hosts I 
was looking for.

In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.18, cairo 
version 1.16.0)
  of 2021-10-25 built on hathaway
Repository revision: 79f7e87da5037f22be07954bb8000ee88e18e515
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12009000
System Description: Ubuntu 20.04 LTS

Configured using:
  'configure --with-harfbuzz --with-native-compilation'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF
TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
   value of $LC_MESSAGES: en_GB.UTF-8
   value of $LC_MONETARY: it_IT.UTF-8
   value of $LC_NUMERIC: it_IT.UTF-8
   value of $LC_TIME: it_IT.UTF-8
   value of $LANG: en_US.UTF-8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
   shell-dirtrack-mode: t
   icomplete-mode: t
   tooltip-mode: t
   global-eldoc-mode: t
   eldoc-mode: t
   show-paren-mode: t
   electric-indent-mode: t
   mouse-wheel-mode: t
   tool-bar-mode: t
   menu-bar-mode: t
   file-name-shadow-mode: t
   global-font-lock-mode: t
   font-lock-mode: t
   blink-cursor-mode: t
   auto-composition-mode: t
   auto-encryption-mode: t
   auto-compression-mode: t
   line-number-mode: t
   indent-tabs-mode: t
   transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util rmail
rmail-loaddefs text-property-search mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils tramp-cache tramp
tramp-loaddefs trampver tramp-integration files-x tramp-compat shell
pcomplete comint ansi-color ring parse-time iso8601 time-date ls-lisp
format-spec auth-source eieio eieio-core eieio-loaddefs password-cache
json map cus-start comp comp-cstr warnings rx cl-seq cl-macs cl-extra
seq gv subr-x byte-opt bytecomp byte-compile cconv cus-load icomplete
help-mode cl-loaddefs cl-lib iso-transl tooltip eldoc paren electric
uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu
timer select scroll-bar mouse jit-lock font-lock syntax font-core
term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice
button loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote threads dbusbind inotify lcms2
dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit x multi-tty make-network-process
native-compile emacs)

Memory information:
((conses 16 114626 9140)
  (symbols 48 10350 1)
  (strings 32 28393 2886)
  (string-bytes 1 959527)
  (vectors 16 19385)
  (vector-slots 8 325769 14133)
  (floats 8 45 290)
  (intervals 56 506 0)
  (buffers 992 12))

-- 
Manuel Uberti
www.manueluberti.eu