zsh-workers
 help / color / mirror / code / Atom feed
* Oddity when completing option arguments after command arguments
@ 2017-12-18 12:01 Marko Myllynen
  2017-12-20  4:52 ` dana
  0 siblings, 1 reply; 3+ messages in thread
From: Marko Myllynen @ 2017-12-18 12:01 UTC (permalink / raw)
  To: zsh-workers

Hi,

While working on some Zsh completions I happened to notice the following
when using this kind of completion (extracted ~minimal example follows):

#compdef foo

_foo () {
  local curcontext="$curcontext" state line expl ret=1
  declare -A opt_args

  case $service in
  foo)
    _arguments -C -S -s \
      "(- *)"{-h,--help}'[show help]' \
      "(-h --help)"\*{-F+,--filename}'[specify filename]:file:_files' \
      '*:host:_hosts' \
      && return 0
  ;;
  esac

  return ret
}

_foo "$@"

These work as expected:

$ foo -F <TAB>                   - getting filenames
$ foo -F<TAB>                    - getting filenames
$ foo <TAB>                      - getting hostnames
$ foo localhost --filename <TAB> - getting filenames
$ foo localhost -F<TAB>          - getting filenames

But here's the unexpected case:

$ foo localhost -F <TAB>         - getting filenames and hostnames

This is with 5.4.1. What could explain this behavior, any suggestions
how to fix this (so that in the last case would get only filenames)?

Thanks,

-- 
Marko Myllynen


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-12-20  9:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-18 12:01 Oddity when completing option arguments after command arguments Marko Myllynen
2017-12-20  4:52 ` dana
2017-12-20  9:08   ` Peter Stephenson

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).