help / color / mirror / Atom feed
* _next_tags doesn't cycle?
@ 2021-05-25 14:44 Omari Norman
  0 siblings, 0 replies; only message in thread
From: Omari Norman @ 2021-05-25 14:44 UTC (permalink / raw)
  To: zsh-users


I’m trying to better understand the completion system by building some primitive completions and seeing what they do.  It seems to me _next_tags doesn’t cycle through tags as I’d expect and I’m wondering what I’m doing wrong.

So I have this in a file named _zeke in my fpath:

#compdef zeke

local ret=1
_tags foo bar baz
while _tags; do
  if _requested bar; then
    compadd heres_bar
  if _requested foo; then
    compadd heres_foo
  if _requested baz; then
    compadd heres_baz
  [[ $ret -eq 0 ]] && break
return ret

and in my shell I do

zstyle ':completion::complete:zeke::' tag-order foo bar baz

So, I would think that in my shell if I type “zeke” followed by a space, then ctrl-D to bring up a list of completions, then "ctrl-X n” to invoke _next_tags, it would cycle through “heres_foo”, “heres_bar”, and “heres_baz”.  But I get no cycling.  Instead all I get is the completion for “heres_foo” with no change when I press “ctrl-X n”.

Thanks for any help!  —Omari

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-25 14:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-25 14:44 _next_tags doesn't cycle? Omari Norman


This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.vuxu.org/zsh-users

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V1 zsh-users zsh-users/ http://inbox.vuxu.org/zsh-users \
	public-inbox-index zsh-users

Example config snippet for mirrors.
Newsgroup available over NNTP:

code repositories for the project(s) associated with this inbox:


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git