Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread David Adam
See https://github.com/fish-shell/fish-shell/issues/1546 - the Bash completion works by running `make -qp`. Unfortunately that only works for GNU Make. David Adam zanc...@ucc.gu.uwa.edu.au On Thu, 11 Sep 2014, Kevin Ballard wrote: > __fish_print_make_targets is a fishscript function defined in

Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread Kevin Ballard
Hrm, you said Ubuntu. /usr/share/bash-completion/completions/make exists for me on Ubuntu 14.04. Looks like it's provided by the 'bash-completion' package (version 1:2.1-4). Normally files in /etc/bash_completion.d/ are installed by individual packages for the tools (i.e. the npm package install

Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread Mandeep Sandhu
I don't have a 'make' file under /usr/share/bash-completion/completions/ but under /etc/bash_completion.d/make (maybe a linux/debian thing). I'll look into this file. On Thu, Sep 11, 2014 at 3:02 PM, Kevin Ballard wrote: > More specifically, this is defined in > /usr/share/bash-completion/com

Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread Kevin Ballard
More specifically, this is defined in /usr/share/bash-completion/completions/make and includes a second function `_make_target_extract_script` that does a lot of the work. -Kevin > On Sep 11, 2014, at 3:00 PM, Kevin Ballard wrote: > > It appears bash uses a function called `_make` to do it. `

Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread Kevin Ballard
It appears bash uses a function called `_make` to do it. `type _make` will print out its definition. -Kevin > On Sep 11, 2014, at 2:49 PM, Mandeep Sandhu > wrote: > > Thanks for the info. > > I'm using fish under Ubuntu. Bash on Ubuntu does completion of make > targets from the included *.ma

Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread Mandeep Sandhu
Thanks for the info. I'm using fish under Ubuntu. Bash on Ubuntu does completion of make targets from the included *.make files. I'll look into how they do it and update the fish one if I can. -mandeep On Thu, Sep 11, 2014 at 2:05 PM, Kevin Ballard wrote: > __fish_print_make_targets is a fishsc

Re: [Fish-users] Fish not completing some Make targets

2014-09-11 Thread Kevin Ballard
__fish_print_make_targets is a fishscript function defined in the standard functions dir $__fish_datadir/functions. In the Fish source, this is the folder share/functions. The current implementation is just a grep over the first file from the list [GNUmakefile, Makefile, makefile]. Also, what d