[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Add nofirstword completion option
From: |
Chet Ramey |
Subject: |
Re: [PATCH] Add nofirstword completion option |
Date: |
Wed, 23 May 2018 09:53:02 -0400 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
On 5/23/18 9:34 AM, Luca Boccassi wrote:
> On Wed, 2018-05-23 at 09:15 -0400, Chet Ramey wrote:
>> On 5/23/18 5:44 AM, Luca Boccassi wrote:
>>
>>> So by that, do you mean that it's possible to stop autocompleting
>>> to
>>> files/dirs/binaries just using a programmable completion script? Or
>>> did
>>> I misunderstand? Apologies if that's the case.
>>>
>>> Right now we do have completion scripts to implement the help text
>>> for
>>> the commands (and for the empty set, which displays a general help
>>> with
>>> a summary), what's missing is stopping files/dirs/binaries
>>> completion
>>> for the first word, so that exclusively the commands are shown.
>>
>> Exactly. What you want, I gather, is a way to restrict completions on
>> the
>> command word to the small set of router commands valid in whichever
>> mode
>> the console happens to be. Programmable completion provides a
>> mechanism to
>> do that, but there is a missing piece of functionality that would
>> allow it
>> to work on the command word. That's the change I would prefer to see.
>>
>> Chet
>
> Ah I see - I am more than happy to work on that instead, but (forgive
> my n00bness, first time hacking on Bash) could you please describe in a
> couple of lines what the missing piece is and what it should look like?
There is already logic that determines whether the shell is trying to
complete a command word (in_command_position). The existing code does
not attempt programmable completion if in_command_position == 1. The
additional functionality would:
1. Add an option to the complete builtin to specify how to complete
command names, and store it in a specially-named compspec, like
completion for empty lines does.
2. Add code to invoke that completion, if it exists and programmable
completion is active, before attempting bash's default completion,
if in_command_position == 1.
Chet
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU chet@case.edu http://tiswww.cwru.edu/~chet/
signature.asc
Description: OpenPGP digital signature
- [PATCH] Add nofirstword completion option, Luca Boccassi, 2018/05/18
- Re: [PATCH] Add nofirstword completion option, Chet Ramey, 2018/05/20
- Re: [PATCH] Add nofirstword completion option, Luca Boccassi, 2018/05/23
- Re: [PATCH] Add nofirstword completion option, Chet Ramey, 2018/05/23
- Re: [PATCH] Add nofirstword completion option, Luca Boccassi, 2018/05/23
- Re: [PATCH] Add nofirstword completion option,
Chet Ramey <=
- Re: [PATCH] Add nofirstword completion option, Luca Boccassi, 2018/05/25
- Re: [PATCH] Add nofirstword completion option, Chet Ramey, 2018/05/25
- Re: [PATCH] Add nofirstword completion option, Luca Boccassi, 2018/05/29