From 66955b82a7d623276bfe01ba45c5795ee22eb522 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20Harald=20J=C3=B8rgensen?= <58829763+adamjoer@users.noreply.github.com> Date: Mon, 13 Nov 2023 01:11:46 +0100 Subject: [PATCH] Base: Add completion for cd that suggests only directories --- Base/usr/share/shell/completion/builtin.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Base/usr/share/shell/completion/builtin.sh b/Base/usr/share/shell/completion/builtin.sh index d7725b47ff..3213d47fdb 100644 --- a/Base/usr/share/shell/completion/builtin.sh +++ b/Base/usr/share/shell/completion/builtin.sh @@ -74,3 +74,17 @@ _complete_kill() { __complete_job_spec $*[-1] } } + +_complete_cd() { + if test $*[-1] = '--' { + invariant_offset=0 + results=${concat_lists .*/ */} + } else { + invariant_offset=${length "$*[-1]"} + results=$(glob "$*[-1]*/") + } + + for $results { + echo '{"kind":"plain","static_offset":0,"invariant_offset":'"$invariant_offset"',"completion":"'"${remove_suffix / $it}"'","trailing_trivia":"/"}' + } +}