refactor: move git ignore alias to own script
parent
ec1a6acebc
commit
92e2e149bc
|
@ -32,6 +32,34 @@ let
|
|||
complete -c f
|
||||
'';
|
||||
};
|
||||
|
||||
gi = pkgs.writeFishApplication
|
||||
{
|
||||
name = "gi";
|
||||
runtimeInputs = with pkgs; [ fzf gum curl ];
|
||||
text = /* fish */ ''
|
||||
set url https://www.gitignore.io/api
|
||||
|
||||
if test (count $argv) -eq 0
|
||||
set choice ( curl -sL $url/list \
|
||||
| string split "," \
|
||||
| fzf -m \
|
||||
| string join "," )
|
||||
else
|
||||
set choice (string join "," $argv[1..])
|
||||
end
|
||||
|
||||
if gum confirm "Overwrite current .gitignore?"
|
||||
curl -sL $url/$choice > .gitignore
|
||||
else
|
||||
curl -sL $url/$choice >> .gitignore
|
||||
end
|
||||
'';
|
||||
completions = /* fish */ ''
|
||||
set args (curl -sL https://www.gitignore.io/api/list | string split ",")
|
||||
complete -c gi -fa "$args"
|
||||
'';
|
||||
};
|
||||
in
|
||||
{
|
||||
users.users.moritz = {
|
||||
|
@ -125,15 +153,16 @@ in
|
|||
duf
|
||||
entr
|
||||
exa
|
||||
f
|
||||
gi
|
||||
gparted
|
||||
neofetch
|
||||
reptyr
|
||||
ripgrep
|
||||
up
|
||||
vim
|
||||
viu
|
||||
wget
|
||||
vim
|
||||
f
|
||||
];
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
|
|
|
@ -50,24 +50,6 @@ in
|
|||
${exportedVariables}
|
||||
'';
|
||||
functions = {
|
||||
gi = ''
|
||||
set url https://www.gitignore.io/api
|
||||
|
||||
if test (count $argv) -eq 0
|
||||
set choice ( curl -sL $url/list \
|
||||
| string split "," \
|
||||
| ${getExe pkgs.fzf} -m \
|
||||
| string join "," )
|
||||
else
|
||||
set choice (string join "," $argv[1..])
|
||||
end
|
||||
|
||||
if ${getExe pkgs.gum} confirm "Overwrite current .gitignore?"
|
||||
${getExe pkgs.curl} -sL $url/$choice > .gitignore
|
||||
else
|
||||
${getExe pkgs.curl} -sL $url/$choice >> .gitignore
|
||||
end
|
||||
'';
|
||||
fish_greeting = "";
|
||||
cheat = "cht.sh $argv | bat -p";
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue