From eaf9ed7f8a95ba6c56348dc4186f301a558acfdc Mon Sep 17 00:00:00 2001
From: Manuel Thalmann <m@nuth.ch>
Date: Wed, 20 Mar 2024 19:35:46 +0100
Subject: [PATCH] Install `aliae` completion using profile files

---
 scripts/Common/Config/aliae/aliae.yml   |  9 ---------
 scripts/Common/Config/aliae/install.ps1 |  1 +
 scripts/Unix/Config/aliae/install.sh    | 12 +++++++++++-
 3 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/scripts/Common/Config/aliae/aliae.yml b/scripts/Common/Config/aliae/aliae.yml
index cf303832..27909f62 100644
--- a/scripts/Common/Config/aliae/aliae.yml
+++ b/scripts/Common/Config/aliae/aliae.yml
@@ -14,12 +14,3 @@ script:
           Get-Item $profilePath | ForEach-Object { . $_; };
       }
     if: match .Shell "pwsh"
-  - value: |
-      eval "$(aliae completion bash)"
-    if: match .Shell "bash"
-  - value: |
-      aliae completion fish | source
-    if: match .Shell "fish"
-  - value: |
-      aliae completion powershell | Invoke-Expression
-    if: match .Shell "pwsh"
diff --git a/scripts/Common/Config/aliae/install.ps1 b/scripts/Common/Config/aliae/install.ps1
index f9516d7c..b7b1d32e 100644
--- a/scripts/Common/Config/aliae/install.ps1
+++ b/scripts/Common/Config/aliae/install.ps1
@@ -2,3 +2,4 @@
 . "$PSScriptRoot/../powershell/lib.ps1";
 
 Add-PowerShellProfileStatement -Statement "# aliae`naliae init pwsh | Invoke-Expression";
+Add-PowerShellProfileStatement -Statement "# aliae`n$(Get-ScriptInitializer "aliae completion powershell")";
diff --git a/scripts/Unix/Config/aliae/install.sh b/scripts/Unix/Config/aliae/install.sh
index a2d605e1..d63098d7 100755
--- a/scripts/Unix/Config/aliae/install.sh
+++ b/scripts/Unix/Config/aliae/install.sh
@@ -9,15 +9,25 @@ function dump_header() {
     echo "# aliae";
 }
 
-{
+function dump_bash() {
     echo "#!/bin/bash";
     dump_header;
+}
+
+{
+    dump_bash;
     echo "export ALIAE_CONFIG='$configPath'";
 } | sudo tee /etc/profile.d/aliae.sh > /dev/null;
 
 {
     dump_header;
     echo "aliae init fish | source";
+    echo "aliae completion fish | source";
 } | sudo tee /etc/fish/conf.d/aliae.fish > /dev/null;
 
+{
+    dump_bash;
+    echo 'eval "$(aliae completion bash)"';
+} | sudo tee /etc/bash/conf.d/aliae.sh
+
 popd > /dev/null;