Add zsh completions

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-01-10 16:35:58 +00:00
parent 465198f3c8
commit d967d5d603
9 changed files with 101 additions and 126 deletions

View File

@@ -2,7 +2,7 @@
user ? throw "user argument is required",
home ? throw "home argument is required",
}:
{ inputs, ... }:
{ lib, inputs, ... }:
{
home-manager.users.${user} = {
programs = {
@@ -16,7 +16,9 @@
zsh = {
shellAliases.nde = "nix-direnv";
initExtra = ''
initExtra = let
devShells = lib.strings.concatStringsSep " " (lib.attrsets.mapAttrsToList (key: _: key) inputs.self.devShells);
in ''
nix-direnv() {
if [ -z "$1" ]; then
echo "use flake" > .envrc
@@ -34,6 +36,13 @@
direnv allow
}
_nix-direnv-completion() {
local shells=(${devShells})
compadd -- $shells
}
compdef _nix-direnv-completion nix-direnv
'';
p10k.extraRightPromptElements = [ "direnv" ];