Есть ли способ установить раскраску для завершения компакт-диска?

23

Я использую Ubuntu 11.04.

Есть ли способ установить раскраску для вывода после завершения табуляции списка CD, Ls или т. Д.?

т.е.

myshell@root$ cd ~/user/files/ Я нажал на вкладку ...

myfile myfoo mybar <- этот вывод цветной?

Я надеюсь, вам понравилась моя диаграмма.

chrisjlee
источник
Что именно должно быть окрашено? Вы хотите, чтобы файлы были окрашены так же, как это ls --colorбыло бы? Вы хотите, чтобы первый был цветным, затем, когда вы снова нажмете Tab, второй будет цветным и т. Д.? Что-то другое?
Микель

Ответы:

21

С readline 6.3 и позже вы можете добавить

set colored-stats on

к ~/.inputrc.

См. Https://tiswww.case.edu/php/chet/readline/rluserman.html :

colored-stats

Если установлено значение ` on', Readline отображает возможные дополнения, используя разные цвета, чтобы указать их тип файла. Определения цвета взяты из значения LS_COLORSпеременной среды. Значением по умолчанию является ` off'.

Вы можете использовать http://geoff.greer.fm/lscolors/ для генерации обоих LS_COLORS(которые используются GNU lsи colored-stats) и LSCOLORS‏(которые используются BSD ls).

LRI
источник
Также см. Вариант visible-stats.
xuhdev
2
Вам, возможно, придется $if Bash\nset colored-stats on\n$endifизбегать ошибок в других программах, которые не понимают новые функции readline.
unhammer
Не работает для меня на MacOS Mojave 10.14.4. Моя версияGNU bash, version 4.4.23(1)-release (x86_64-apple-darwin17.5.0)
Энди Карлсон
Работает для меня. Я использую github.com/seebi/dircolors-solarized/blob/master/… и только что прокомментировал, SOCK 35;44чтобы лучше работать с моим терминалом со светлой тематикой.
Стивен Недзельски
9

Я не знаю, находится ли он в bash (оболочка по умолчанию). Это возможно в zsh (более мощная оболочка, чем bash, доступная в большинстве приложений, включая Ubuntu, но часто не устанавливаемая по умолчанию).

При первом запуске zsh будет предложено создать файл конфигурации ( ~/.zshrc) для вас. Конфигурация по умолчанию немного бесплодна, для исторической совместимости. Для цветных списков завершения выберите 2настройку «новой системы завершения», а затем 2снова настройте ее; в compinstallменю выберите, 3чтобы установить стили для отображения завершений, а 3затем 1включить цветные завершения и, наконец, 2использовать те же цвета, что и ls.

Если вы предпочитаете настроить это вручную, вот строки, которые вам нужны в вашем .zshrc:

zstyle ':completion:*' list-colors "${(@s.:.)LS_COLORS}"
autoload -Uz compinit
compinit

list-colorsСтиль настраивает цвета на имя файла доработки.

Жиль "ТАК - перестань быть злым"
источник