From: DervishD <zsh@dervishd.net>
To: Bart Schaefer <schaefer@brasslantern.com>
Cc: Zsh Users <zsh-users@sunsite.dk>
Subject: Re: The "-g" option in compctl doesn't insert correctly
Date: Mon, 5 Dec 2005 09:58:03 +0100 [thread overview]
Message-ID: <20051205085803.GA92@DervishD> (raw)
In-Reply-To: <1051205050016.ZM22002@candle.brasslantern.com>
Hi Bart :)
* Bart Schaefer <schaefer@brasslantern.com> dixit:
> } $ compctl -g '/example/dir/*(.x:t)' example
> }
> } Now, if I press <ENTER> the completion is accepted but the cursor
> } doesn't move on to allow for more completions. If I remove the ":t"
> } modifier, then all works ok.
>
> The -g option tells compctl that what's being completed are file
> names, which in the absence of any other options are expected to be
> relative to either the current directory or to the path prefix on
> the command line; but what you're generating are the tails of file
> paths, relative to some fixed directory.
OK, I understand that. I imagined that the reason for the "-g"
option was not only speed (as told in the manual)
> Compctl is going to try to find a file (or directory) matching the
> name you generated, so that it can append either a space (for a
> file) or a slash (for a directory); but it's not going to find
> anything that matches (unless your current directory is
> /example/dir) because you've lopped off the path. So it appends
> nothing.
Now I understand :)) I supposed that the ":t" modifier was
causing problems to the completion code, but I see that the real
problem is a lack of match. Of course I didn't noticed that at the
end of a (filename) completion the completion code appends an space
*or* a slash. It is SO familiar for me that I just didn't consider
it. Thanks for the explanation, Bart :)
> What you really want is
>
> compctl -W /example/dir -g '*(.x)' example
Oh, in fact I tried that too and it worked, so I was more
convinced than ever that the problem was in the ":t" modifier. I see
I was wrong...
Thanks a lot for your useful and interesting explanation :)
Raúl Núñez de Arenas Coronado
--
Linux Registered User 88736 | http://www.dervishd.net
http://www.pleyades.net & http://www.gotesdelluna.net
It's my PC and I'll cry if I want to...
prev parent reply other threads:[~2005-12-05 8:58 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-04 9:35 DervishD
2005-12-05 5:00 ` Bart Schaefer
2005-12-05 8:58 ` DervishD [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20051205085803.GA92@DervishD \
--to=zsh@dervishd.net \
--cc=schaefer@brasslantern.com \
--cc=zsh-users@sunsite.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).