summaryrefslogtreecommitdiffstats
path: root/office/khal/khal-complete.fish
diff options
context:
space:
mode:
Diffstat (limited to 'office/khal/khal-complete.fish')
-rw-r--r--office/khal/khal-complete.fish22
1 files changed, 22 insertions, 0 deletions
diff --git a/office/khal/khal-complete.fish b/office/khal/khal-complete.fish
new file mode 100644
index 0000000000..9c02b4052b
--- /dev/null
+++ b/office/khal/khal-complete.fish
@@ -0,0 +1,22 @@
+function _khal_completion;
+ set -l response;
+
+ for value in (env _KHAL_COMPLETE=fish_complete COMP_WORDS=(commandline -cp) COMP_CWORD=(commandline -t) khal);
+ set response $response $value;
+ end;
+
+ for completion in $response;
+ set -l metadata (string split "," $completion);
+
+ if test $metadata[1] = "dir";
+ __fish_complete_directories $metadata[2];
+ else if test $metadata[1] = "file";
+ __fish_complete_path $metadata[2];
+ else if test $metadata[1] = "plain";
+ echo $metadata[2];
+ end;
+ end;
+end;
+
+complete --no-files --command khal --arguments "(_khal_completion)";
+