Когда я наберу, grep
а затем TABдважды нажмите , bash_completion
будет список файлов и каталогов в текущем каталоге. Это также завершит имена файлов, когда я наберу начальную букву. Это все очень хорошо, единственная проблема в том, что когда каталог содержит много файлов и подкаталогов, он может быть довольно хаотичным и неорганизованным.
Это очень помогло бы, если bash_completion
бы, по крайней мере, мог по-разному раскрасить каталоги, подобно тому, что ls -lA
делает.
Это возможно?
РЕДАКТИРОВАТЬ:
bash_completion
Вот как выглядит мой пример файла конфигурации:
if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
else
_filedir
fi
bash
но это поведение по умолчанию вzsh
.bash
Ответы:
В текущей версии Bash подобной функции нет, вы можете сделать это, используя
zsh
ее по умолчанию.Один из инструментов, связанных с завершением называется
compgen
. Вы можете найти его, чтобы показывать команды правильно раскрашенными, но это хак и не то, что практически полезно.Это будет правильно перечислять раскрашенные файлы, но он получит цвет
ls
, поэтому я бы не стал рассматривать эту нативную раскраскуauto_completion
.Ссылки
источник
ls
в моихbash_completion
файлах конфигурации. Похоже, есть функция,_filedir
которая перечисляет файлы.