diff --git a/modules/programs/fish.nix b/modules/programs/fish.nix index 4cb4bb2..d38f6d5 100644 --- a/modules/programs/fish.nix +++ b/modules/programs/fish.nix @@ -57,15 +57,23 @@ in ${exportedVariables} ''; functions = { - gi = '' + gi = with pkgs; '' set url https://www.gitignore.io/api - if test (count $argv) -ne 1 - set list (curl -sL $url/list | string split ",") - set choice (string split " " $list | fzf -m --preview "curl -sL $url/{}" | string join ",") + + if test (count $argv) -eq 0 + set choice ( curl -sL $url/list \ + | string split "," \ + | ${fzf}/bin/fzf -m \ + | string join "," ) else - set choice $argv[1] + set choice (string join "," $argv[1..]) + end + + if ${gum}/bin/gum confirm "Overwrite current .gitignore?" + ${curl}/bin/curl -sL $url/$choice > .gitignore + else + ${curl}/bin/curl -sL $url/$choice >> .gitignore end - curl -sL $url/$choice > .gitignore ''; fish_greeting = ""; cheat = "cht.sh $argv | bat -p";