FreeBSD Bash Completion port

Jean-Baptiste Quenot jb.quenot at caraldi.com
Thu Nov 6 11:40:32 PST 2003


* Kirk Strauser:

> At 2003-11-06T18:31:35Z,  Jean-Baptiste Quenot <jb.quenot at caraldi.com>
> writes:
>
> > Thank  you for  maintaining the  bash completion  port for  FreeBSD.
> > I  just  wanted   to  report  that  textproc/gsed   is  required  by
> > bash-completion.
>
> With  all respect,  I've  been using  bash-completion  on FreeBSD  for
> months before  I packaged  it, and I  did not (and  do not)  have gsed
> installed.

You may not be using all completions then.

> > If  you look  at the  bash_completion script,  you will  notice that
> > line:
> >
> > $ grep  gsed /usr/local/etc/bash_completion [  $UNAME != Linux  ] &&
> > have gsed && alias sed=gsed
>
> Note  the "&&  have gsed".   The  alias is  only executed  if gsed  is
> present on the system.

This  is the  only  solution we  found  acceptable when  Ian  M. and  me
discussed about that problem.

> The comment immediately above that line says:
>
>     # use GNU sed  if we have it, since its  extensions are still used
>     in our code
>
> which leads me to believe that either:
>
>   1)  FreeBSD implemented  work-alikes of  the GNU  extensions, or  2)
>   bash-completion was reworked to not require them.

Bash Completion uses GNU extensions that FreeBSD sed does not have.  GNU
sed and BSD sed are very different, and incompatible.

> > Because Bash Completion  is maintained on a Linux  platform, the sed
> > invocations fail completely on FreeBSD.
>
> Could you give a concrete example?

Try killall  <Tab><Tab> you  won't have  any completion.   Install gsed,
source bash_completion  again and you  will have  a list of  all process
names as completions for killall.   Without gsed, screen completion does
not work either.  There  are plenty of examples, it is  just too long to
try and list them.

> > So to sum up, bash completion is only useful if gsed is installed.
>
> I must  politely disagree.  Again,  I do  not have gsed  installed and
> bash-completion works as  documented, at least for  the functions I've
> used it for.

Again,  you may  be using  a relatively  small subset  of the  available
features, which is perfectly fine.  But many completions are broken.

> Are you seeing specific failures?  I'd be more than happy to work with
> you to troubleshoot any problems as best as I can.

We  could  patch  all  sed  invocations,  but  this  is  overkill.   The
bash_completion script  changes very  often so  it may  not be  the best
option.

Best regards,
-- 
Jean-Baptiste Quenot
http://caraldi.com/jbq/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20031106/a2659b4c/attachment.bin


More information about the freebsd-ports mailing list