[HEADSUP] current switched by default to pkgng

Alex Keda admin at lissyara.su
Fri Oct 19 16:21:07 UTC 2012


On 19.10.2012 19:59, Chris Rees wrote:
> On 19 October 2012 16:16, Alex Keda <admin at lissyara.su> wrote:
>> On 19.10.2012 19:10, Vincent Hoffman wrote:
>>> On 19/10/2012 15:39, Alex Keda wrote:
>>>> pkg command does not have key for list options - no autocompletions
>>>>
>>>> for example, for service command, I use
>>>> complete service        'n/*/`service -l`/'
>>>> in .cshrc
>>>>
>>>> what I can use for pkg command?
>>>
>>> horrible but working example
>>> pkg help 2>&1 | sed -e '1,/Commands supported:/d ; /For more information
>>> on the different commands/,$d; s/^   *// ; s/  .*.*$// ;/^$/d'
>>>
>>> There's bound to be better ways, I was just bored enough to knock this up.
>>> note s/^    *//   is a tab, while s/  .*.*$// is 2 spaces
>>> dont think our sed has any other way to express tab other than an actual
>>> tab (ctrl-v then tab on the command line)
>>
>> it's crazy =)
>> may be add -l options?
> 
> For Bourne-style shell:
> `pkg help 2>&1 | sed -nE 's,^  +(.*),\1,p'`
> 
> For csh-style shell:
> `pkg help | & sed -nE 's,^     +(.*),\1,p'`
> 
> where the bit between ^ and + is a tab character.  You can type the
> tab character on a command prompt by using Ctrl+V then tab, or just
> type it normally in the script.
> 
> Hope that helps in the meantime.
> 
> Chris
> 
dc7700p# pkg
-c            Displays      Performs      a             and
check         debug         from          inside        local
package       packages      remote        search        system
updating
-d            Displays      Performs      a             and
......... skipped ........
Displays      Opens         a             against       catalogues
debug         from          inside        link          package
packages      register      search        system        update
dc7700p#
dc7700p# grep pkg /root/.cshrc
complete pkg            'n/*/`pkg help |& sed -nE "s,^  +(.*),\1,p"`/'

some not work... I try my own string:
complete pkg           'n/*/`pkg help |& grep "Commands supported:"
--after-context=100 | grep "^\s" | awk "{print $1}"`/'

output identical. maybe pipe not work in this place?


More information about the freebsd-ports mailing list