Ukończenie basha: skompiluj listę słów tak, jakby były ścieżkami - sugeruj tylko do następnego ukośnika

Pracuję nad skryptem zakończenia basha dla anarzędzie do zarządzania plikami dot. Narzędzie ma poleceniedots diff [filename] który pokaże różnicę między zainstalowanym plikiem kropkowym a źródłowym plikiem kropkowym. Ma także poleceniedots files który wyświetla ścieżki wszystkich zarządzanych plików dot (w stosunku do katalogu źródłowego). Chciałbym wypełnić polecenie diff z wyjściem polecenia files.

Oto przykład wyjścia plików

X11/xkb/symbols/evan-custom
X11/xorg.conf.d/10-dual-monitors.conf
X11/xorg.conf.d/10-keylayout.conf
bash/aliases
bash/bashrc
bash/completion.d/dots
bash/profiles/standard-user
bash/profiles/systemd-user
bspwm/bspwmrc
compton/compton.conf
fontconfig/fonts.conf
git/config
git/ignore
gtk-2.0/gtkrc
gtk-3.0/settings.ini
mysql/config
mysql/grcat
ncmpcpp/config
pulse/client.conf
pulse/daemon.conf
pulse/default.pa
ssh/config
sublime-text-3/Packages/User/Preferences.sublime-settings
sxhkd/sxhkdrc
termite/config
transmission-daemon/settings.json
vim/vimrc

Używam czegoś takiego

COMPREPLY=( $(compgen -W "$(dots files)" -- $cur) )

Działa, jednak gdy readline wyświetla listę dostępnych opcji, wyświetla pełne ścieżki (powyższa lista).

Chciałbym, aby traktował słowa tak, jakby były ścieżkami do plików, a gdy wyświetlają sugestie, wymieniają tylko pierwszy ukośnik.

Na przykład, jeśli wpisałemdots diff [tab][tab] należy wydrukować następujące elementy

X11/
bash/
bspwm/
compton/
fontconfig/
git/
gtk-2.0/
gtk-3.0/
mysql/
ncmpcpp/
pulse/
ssh/
sublime-text-3/
sxhkd/
termite/
transmission-daemon/
vim/

Jeśli na przykład wtedy wpisałemdots diff bash/[tab][tab] to by się pokazało

aliases
bashrc
completion.d/
profiles/

Idealnie chciałbym to zrobićfaktycznie traktuj to jako ścieżkę tak, że zmiana opcji readlinemark-directories wyłączenie wykluczałoby końcowe ukośniki.

Próbowałem ustawieniacompopt -o filenames ale zamiast tego podaje sugestie dotyczące nazw plików, zamiast początkowych ścieżek.

Oto skrypt ukończenia, jaki mam do tej pory

questionAnswers(3)

yourAnswerToTheQuestion