Вы наверное уже слышали об автодополнении команд в терминале Linux. Это когда вы вводите начало команды, параметра, адреса файла и нажимаете кнопку Tab, а система автоматически добавляет недостающее или выводит подсказку. Но стандартных функций автодополнения в Gentoo не всегда достаточно, оно работает только с командами и адресами файлов. Вы наверное видели как в Ubuntu автоматически дополняются команды введенные после sudo, и даже некоторые параметры популярных утилит. Это реализировано через дополнительный пакет - bash-completion.
В этой статье я опишу установку и настройку bash completion в Gentoo.
Установка bash-completion
Для установки пакета из дерева portage в Gentoo выполните:
emerge bash-completion
Теперь нужно добавить глобальный флаг bash-completion чтобы включить поддержку этой фичи в поддерживающих ее пакетах:
sudo nano /etc/portage/make.conf
Затем перестроить все пакеты с новым флагом:
sudo emerge --update --newuse --use-cdanged @world
И осталось добавить скрипт загрузки bash-completion в bashrc для автоматической загрузки:
sudo nano /etc/bash/bashrc
source /etc/bash_completion.d/gentoo-style-init
Настройка bash-completion
Настройка скриптов автодополненеия выполняется утилитой eselect. Для просмотра доступных скриптов выполните:
sudo eselect bashcomp list
По умолчанию все скрипты включены, около 600 штук. Для отключения ненужных скриптов воспользуйтесь командой:
sudo eselect bashcomp disable номера_скриптов
А для включения:
sudo eselect bashcomp enable номера_скриптов
Для применения настроек нужно перезапустить терминал. Вот и все, теперь работать в терминале стало намного удобнее.