Releases: nix-community/nix-zsh-completions
0.5.1
What's Changed
- Fix incorrect --log-type -> --log-format by @amarshall in #48
- nixos-version: Add missing options by @pyrotelekinetic in #49
New Contributors
- @peterbecich made their first contribution in #47
- @amarshall made their first contribution in #48
- @pyrotelekinetic made their first contribution in #49
Full Changelog: 0.5.0...0.5.1
0.5.0
What's Changed
- nix run -c: complete command names and arguments by @xzfc in #31
- Improve completion for
nix-prefetch-url(1)by @Ma27 in #36 - Add --dry-run completion to nix-build and nix-shell by @zakame in #37
- Update channel list suggestion in _nix_complete_dotnix_files by @anund in #38
- Fix case of -P flag in nix-env --query by @spwhitt in #39
- Remove broken
_nixand update channels by @spwhitt in #43 - Remove _nixpkgs-review because upstream now has completions by @Janik-Haag in #45
New Contributors
- @xzfc made their first contribution in #31
- @zakame made their first contribution in #37
- @anund made their first contribution in #38
- @spwhitt made their first contribution in #39
- @Janik-Haag made their first contribution in #45
Full Changelog: 0.4.4...0.4.5
0.4.4
0.4.2
0.4.1
0.3.6
bash: v0.6, zsh: 0.3.6
The quest for an awesome completion system continues.
The main bulk of changes apply to both ZSH and Bash, with explicit notes otherwise.
If evaluation of any nix code fails, ZSH will now output the error through a completion style message.
-I/--include support
Attribute path completion now takes -I and --include into account. This makes completion work correctly when doing things like this:
nix-shell -I nixpkgs=. --packages <tab>When the completion system executes any nix code it will first resolve all URLS in the NIX_PATH, and in -I input, to a local store path if present. This protects against triggering an intrusive download while completing. channel: syntax is correctly translated to its https:// form and resolved to a cache too.
ZSH will tell you when it can't find a local cache of any URL.
--arg and --argstr support
Argument names are now offered as completions using builtins.functionArgs. Names already supplied on the command line is excluded from completions.
Attribute path completion will also take --arg and --argstr into account, which means things like this work:
nix-instantiate --eval default.nix --argstr bar foo -A <tab>If the content of default.nix is {bar}: {foo = bar;} then completing will result in foo.
--expr and -E support
Attribute path completion now works for --expr input, including argument name completion.
Note, URLs in the expression body is not yet resolved to a local cache so might trigger a download. This should ideally be fixed.
In ZSH --expr now behaves properly, allowing completion of options after it has been entered (bash already did the correct thing here).
Other small fixes and improvements
- Most arguments which expects a
.nixfile will now only offer up those and directories, reducing clutter --filewill now complete more than once, the last one being used to generate attribute matches. In ZSH this allows aliasingnix-envtonix-env -f '<nixpkgs>'while still getting further--filecompletion which can be used to override the default.- nix-env now offer
--filecompletion together with main operation completion by default. This is a compromise between discover-ability of main operations and the want to specify common options quickly. --add-rootwill now off up/nix/var/nix/gcroots/by default, if--indirectis specified it will give normal directory completion.- Add missing
--helpand--versioncompletion to many commands - nix-env:
--filter-systemwill complete possible systems. - nix-instantiate:
--find-filewill no longer offer misleading file completion
And a bunch of other small changes and fixes.
Fix silly regression
Fix a regression where eg. nix-build -A wouldn't pick up default.nix in the current directory.
0.3.4
New features:
- Attribute completion for cached repos specified with an url, eg.
nix-build channel:nixos-17.09 -A .... This is somewhat untested on 1.12 as nix on my machine refuses to download any repos due to lack of signatures. --include|-Icompletion for all compatible commands. (onlynixtakes the includes into account when completing attribute paths though)- nix-env:
--installand others will also offer up file completion compatible with nix (ie. prefixed with./,~/or/)
Bug fixes:
nix-store: --deletecan takes file argumentsnix-shell --packagesshould now correctly offer up options after-phave been specified
0.3.3 minor fixes
Minor fixes:
- nix-env: Fix regression where completing some option arguments offers up garbage
- nix-env: Only complete main operators until one is supplied on the command line
- nix: Don't run completion if
nixisn't found in path
0.3.2
Now supports the nix command from nix-1.12.
Other improvements:
- nix-env now completes stacking options with the main option
- nix-env will understand main options at any argument position
- Attribute path completion completes its path one by one (like directory completion), see #6
- Some other minor improvements