From: Pier Paolo Grassi <pierpaolog@gmail.com>
To: Bart Schaefer <schaefer@brasslantern.com>
Cc: Zsh-Users List <zsh-users@zsh.org>
Subject: Re: completion with separator
Date: Sat, 7 May 2022 22:56:23 +0200 [thread overview]
Message-ID: <CAP+y1xAfr=QVdERerrX3Cu0T=v1Dshda15AH2h=ithDtTxZocA@mail.gmail.com> (raw)
In-Reply-To: <CAP+y1xDNqd2z7-dEBssxOJBeAgCymN-XAU0QTO-cMQ9T6jPd1w@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2423 bytes --]
I found the specification of _arguments that describes the action part.
I don't understand, however, why the -r applies only to these, since the
compadd specification of this option does not describe this limitation
Pier Paolo Grassi
Il giorno sab 7 mag 2022 alle ore 22:31 Pier Paolo Grassi <
pierpaolog@gmail.com> ha scritto:
> I would like to test your solution, but idk how to add an action part to
> my $categories_array. Right now it is just an array of strings to be used
> for completion.
>
> Pier Paolo Grassi
>
>
> Il giorno sab 7 mag 2022 alle ore 22:29 Pier Paolo Grassi <
> pierpaolog@gmail.com> ha scritto:
>
>> > It should already be happening that way. If you type a space or
>> another return after the comma, it should disappear.
>>
>> yes it is removed when I press a space after selection, and even if I
>> press enter after the selection. But this way, in the enter case, the line
>> is accepted and executed.
>> What I would like is for the comma not to be inserted after the
>> completion, I would like to insert it by myself if I want to insert
>> multiple arguments. So when I press enter in the menu selection the voice
>> is selected and the line is:
>>
>> func acat<cursor>
>>
>> instead of
>>
>> func acat,<cursor>
>>
>> thanks
>>
>>
>> Pier Paolo Grassi
>>
>>
>> Il giorno sab 7 mag 2022 alle ore 22:12 Bart Schaefer <
>> schaefer@brasslantern.com> ha scritto:
>>
>>> On Sat, May 7, 2022 at 3:41 AM Pier Paolo Grassi <pierpaolog@gmail.com>
>>> wrote:
>>>
>>>>
>>>> _values -s , categories $categories_array
>>>>
>>>> > func a<tab>
>>>> <menu completion where I select a value with enter>
>>>> > func acat,<cursor>
>>>>
>>>> I would like that the comma was not added automatically, or at least to
>>>> be removed automatically when I select a voice in menu selection with enter.
>>>> is this possible?
>>>>
>>>
>>> It should already be happening that way. If you type a space or another
>>> return after the comma, it should disappear.
>>>
>>> If that's not happening the way you like, you can try some variation of
>>>
>>> remove_comma=(-r '[:alnum:] \t\n\-')
>>> _values -O remove_comma -s , categories $categories_array
>>>
>>> to remove the comma when you type (in that example) anything
>>> alphanumeric or whitespace, but whether that works depends on how you've
>>> defined the specs in $categories_array (-O applies only to specs that have
>>> an "action" component).
>>>
>>>
>>>
[-- Attachment #2: Type: text/html, Size: 4432 bytes --]
next prev parent reply other threads:[~2022-05-07 20:57 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-07 10:40 Pier Paolo Grassi
2022-05-07 20:12 ` Bart Schaefer
2022-05-07 20:29 ` Pier Paolo Grassi
2022-05-07 20:31 ` Pier Paolo Grassi
2022-05-07 20:56 ` Pier Paolo Grassi [this message]
2022-05-07 21:00 ` Bart Schaefer
2022-05-07 21:10 ` Pier Paolo Grassi
2022-05-07 21:44 ` Bart Schaefer
2022-05-07 21:49 ` Pier Paolo Grassi
2022-05-07 20:57 ` Bart Schaefer
2022-05-07 23:37 ` Bart Schaefer
2022-05-08 8:07 ` Pier Paolo Grassi
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='CAP+y1xAfr=QVdERerrX3Cu0T=v1Dshda15AH2h=ithDtTxZocA@mail.gmail.com' \
--to=pierpaolog@gmail.com \
--cc=schaefer@brasslantern.com \
--cc=zsh-users@zsh.org \
/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).