From: Nick Cross <zsh@goots.org>
To: zsh-workers@zsh.org
Subject: [PATCH] Update make completion with gnu options
Date: Fri, 12 Jul 2013 07:46:25 +0100 [thread overview]
Message-ID: <51DFA641.6080204@goots.org> (raw)
Hi,
Here are the additional commands for make. Thanks to Bart Schaefer who helped with correcting the make completion. I *think* its correct now ;-)
Hope it helps,
Regards
Nick
=======
commit 6245a950510bb47611d2cc2a660c21c2d82a2ca5
Author: Nick Cross <zsh@goots.org>
Date: Thu Jul 11 22:07:18 2013 +0100
Update make completion with gnu options
diff --git a/Completion/Unix/Command/_make b/Completion/Unix/Command/_make
index 72d16bb..5dd0a21 100644
--- a/Completion/Unix/Command/_make
+++ b/Completion/Unix/Command/_make
@@ -158,13 +158,36 @@ _make() {
if [[ $is_gnu == gnu ]]
then
incl="(-|)include"
- # TBD: update option_specs
option_specs=(
- '-C[change directory first]:directory:->dir'
- '-I[include directory for makefiles]:directory:->dir'
- '-f[specify makefile]:makefile:->file'
- '-o[specify file not to remake]:file not to remake:->file'
- '-W[pretend file was modified]:file to treat as modified:->file'
+ {-B,--always-make}'[Unconditionally make all targets]'
+ {-C,--directory=}'[change directory first]:directory:->dir'
+ '-d[Print lots of debug information]'
+ '--debug=-[Print various types of debug information]:FLAGS'
+ {-e,--environment-overrides}'[Environment variables override makefiles]'
+ '--eval=-[Evaluate STRING as a makefile statement]:STRING'
+ {-f,--file=,--makefile=}'[Read FILE as a makefile]:file:->file'
+ '-h[Print this message and exit]'
+ {-i,--ignore-errors}'[Ignore errors from recipes]'
+ {-I,--include-dir=}'[Search DIRECTORY for included makefiles]:directory:->dir'
+ {-j,--jobs=}'[Allow N jobs at once; infinite jobs with no arg]:number of jobs'
+ {-k,--keep-going}"[Keep going when some targets can't be made]"
+ {-l,--load-average=,--max-load}"[Don't start multiple jobs unless load is below N]:load"
+ {-L,--check-symlink-times}'[Use the latest mtime between symlinks and target]'
+ {-n,--just-print,--dry-run,--recon}"[Don't actually run any recipe; just print them]"
+ {-o,--old-file=,--assume-old=}"[Consider FILE to be very old and don't remake it]:file not to remake:->file"
+ {-p,--print-data-base}'[Print makes internal database]'
+ {-q,--question}'[Run no recipe; exit status says if up to date]'
+ {-r,--no-builtin-rules}'[Disable the built-in implicit rules]'
+ {-R,--no-builtin-variables}'[Disable the built-in variable settings]'
+ {-s,--silent,--quiet}"[Don't echo recipes]"
+ {-S,--no-keep-going,--stop}'[Turns off -k]'
+ {-t,--touch}'[Touch targets instead of remaking them]'
+ {-v,--version}'[Print the version number of make and exit]'
+ {-w,--print-directory}'[Print the current directory]'
+ '--no-print-directory[Turn off -w, even if it was turned on implicitly]'
+ {-W,--what-if=,--new-file=,--asume-new=}'[Consider FILE to be infinitely new]:file to treat as modified:->file'
+ '--warn-undefined-variables[Warn when an undefined variable is referenced]'
+ '--warn-undefined-functions[Warn when an undefined user function is called]'
)
else
# Basic make options only.
@@ -191,8 +214,7 @@ _make() {
;;
(target)
- file=($opt_args[(K)(-f|--file|--makefile)])
- file=$file[1]
+ file=${(v)opt_args[(I)(-f|--file|--makefile)]}
if [[ -n $file ]]
then
[[ $file == [^/]* ]] && file=${(q)$(_make-findBasedir $words)}/$file
next reply other threads:[~2013-07-12 7:11 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-12 6:46 Nick Cross [this message]
2013-07-12 8:38 ` Peter Stephenson
2013-07-12 23:46 ` Bart Schaefer
2013-07-13 17:00 ` Bart Schaefer
2013-07-17 15:35 ` Jun T.
2013-07-18 9:21 ` Oliver Kiddle
2013-07-18 11:44 ` Jun T.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51DFA641.6080204@goots.org \
--to=zsh@goots.org \
--cc=zsh-workers@zsh.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).