aboutsummaryrefslogtreecommitdiff
path: root/conf.d/00functions.fish
diff options
context:
space:
mode:
authorDeposite Pirate2025-01-12 14:40:33 +0100
committerDeposite Pirate2025-01-12 14:40:33 +0100
commite7764f9b08072cfb67c2d3ecf075df9a80aee6fd (patch)
tree628d5f66e1d62f1d710bcbe472aa68b5e19522f8 /conf.d/00functions.fish
parent62d7fa8cfa2e6de053d7c1238bd8fdcdf0cc8a7d (diff)
Import config.
Diffstat (limited to 'conf.d/00functions.fish')
-rw-r--r--conf.d/00functions.fish36
1 files changed, 36 insertions, 0 deletions
diff --git a/conf.d/00functions.fish b/conf.d/00functions.fish
new file mode 100644
index 0000000..f390b29
--- /dev/null
+++ b/conf.d/00functions.fish
@@ -0,0 +1,36 @@
+function alias_if --description "Alias if a program exists"
+ if test (count $argv) -lt 2
+ return
+ end
+ if command -sq $argv[1]
+ if test (count $argv) -gt 2
+ alias $argv[2] "$argv[1] $argv[3..-1]"
+ else
+ alias $argv[2] "$argv[1]"
+ end
+ end
+end
+
+function alias_if_not --description "Alias if a program doesn't exist"
+ if test (count $argv) -lt 2
+ return
+ end
+ if not command -sq $argv[1]
+ if test (count $argv) -gt 2
+ alias $argv[1] "$argv[2] $argv[3..-1]"
+ else
+ alias $argv[1] "$argv[2]"
+ end
+ end
+end
+
+function find_prog --description "Find one or more programs in \$PATH"
+ for prog in $argv
+ for search_path in $PATH
+ if test -x "$search_path/$prog"
+ echo -n "$prog"
+ return
+ end
+ end
+ end
+end