Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #14225

Re: [PATCH] Add nofirstword completion option

From Luca Boccassi <bluca@debian.org>
Newsgroups gnu.bash.bug
Subject Re: [PATCH] Add nofirstword completion option
Date 2018-06-08 15:40 +0100
Message-ID <mailman.1492.1528468869.1292.bug-bash@gnu.org> (permalink)
References (5 earlier) <4ccfc554-15a9-2ec1-55e1-b2df687f0bee@case.edu> <1527270167.6997.22.camel@debian.org> <3a98f6c5-0f1e-54aa-491c-da7100430ce8@case.edu> <1527605096.6997.27.camel@debian.org> <1527860403.6997.72.camel@debian.org>

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

On Fri, 2018-06-01 at 14:40 +0100, Luca Boccassi wrote:
> On Tue, 2018-05-29 at 15:44 +0100, Luca Boccassi wrote:
> > On Fri, 2018-05-25 at 14:40 -0400, Chet Ramey wrote:
> > > On 5/25/18 1:42 PM, Luca Boccassi wrote:
> > > 
> > > > > 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
> > > > 
> > > > Hi,
> > > > 
> > > > Thanks for the guidance! Unfortunately I'm still not quite
> > > > there
> > > > yet -
> > > > inlined are the changes based on my understanding of the above.
> > > > It
> > > > implements a "usercmd/-U" option similar to the existing -E for
> > > > empty
> > > > line.
> > > > 
> > > > But at the moment all it does is to allow (via "complete -U -F
> > > > foo") to
> > > > complete when nothing is typed in, which seemed to be possible
> > > > already
> > > > with -E. If some characters are already typed in, it will still
> > > > do
> > > > the
> > > > default completion to commands in the PATH.
> > > > 
> > > > What have I missed?
> > > 
> > > You should make sure you don't add your code in the section with
> > > the
> > > rest
> > > of the programmable completions, since that block is not entered
> > > if
> > > in_command_position != 0.
> > 
> > Thanks for the suggestion, it works perfectly now!
> > 
> > Inlined is the latest revision, with added documentation. Let me
> > know
> > if you'd like me to change anything.
> 
> Hello Chet,
> 
> Just noticed other devs sent patches as attachments rather than
> inline,
> so just in case that's a more convenient form to review I'm including
> the diff as an attachment.
> 
> Thanks!

Hi Chet,

Any chance you had a sec to look at the diff? Would love some feedback!

Thanks!

-- 
Kind regards,
Luca Boccassi

Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread


Thread

Re: [PATCH] Add nofirstword completion option Luca Boccassi <bluca@debian.org> - 2018-06-08 15:40 +0100

csiph-web