Files
fish-shell/tests
Johannes Altmanninger fa8a2ee265 complete short_opt_pos: repeated short options are not invalid
complete -C"somecmd -xyz" will not suggest any of the short options
that are already present.  This is old behavior from 149594f974
(Initial revision, 2005-09-20) ("if( wcschr( arg, nextopt ) != 0 )").
It's questionable, since repeated options may be valid ("ssh -vvv"
etc.), and completions should generally err on the side of false
positives; but given that short options are usually easy to type,
and discovery is not really relevant if they are already on the
command line, this seems fine? Not sure.

Recently, fab397e754 (fix: filter invalid short option completions,
2026-06-18) made two changes:

1. "complete somecmd -s X -n false; complete -C'somecmd -X'" no longer
   prints completions. This is a bug fix that reduces confusion.
2. complete -C"somecmd -YY" where "Y" no longer completes other short
   options because we treat repetition as error. But it's not
   necessarily, and hiding unrelated completions seems wrong.

Revert change 2.

See https://github.com/fish-shell/fish-shell/pull/12821#issuecomment-4781863199
2026-06-24 08:49:59 +02:00
..