Ein sehr praktisches Feature ist es beim Arbeiten mit der bash-Shell Befehle über die Tab-Taste automatisch zu vervollständigen. Unter gentoo lässt sich das erreichen, indem man zunächst mit einem
emerge -av bash-completion gentoo-bashcomp
die erforderliche Pakete bash-completion (allgemeine Bash-Befehlsvervollständigungen) und gentoo-bashcomp (spezifische Befehlsvervollständigungen für gentoo) installiert. Sofern nicht gesetzt, muss man auch das bash-completion USE flag in der Datei /etc/portage/make.conf ergänzen und dann eine Systemaktualisierung durchführen.
Danach bindet man die Befehlsvervollständigung in die systemweite Bash-Konfigurationsdatei /etc/bash/bashrc durch Ergänzen der Zeilen
# enable bash-completion
[[ -f /etc/profile.d/bash-completion.sh ]] && source /etc/profile.d/bash-completion.sh
ein und aktiviert sie systemweit mit einem
eselect bashcomp enable --global gentoo
Da es für verschiedene Programme Befehlsvervollständigungen gibt, muss man noch festlegen, für welche dies genau erfolgen soll. Eine entsprechende Liste erhält man mit
eselect bashcomp list
Jeder Benutzer kann nun für sich die einzelnen Listeneinträge aktiveren. Dazu wird das Verzeichnis ~/.bash_completion.d/ angelegt mit
mkdir ~/.bash_completion.d/
In dieses Verzeichnis erstellt man nun symbolische Links zu den einzelnen Dateien im Verzeichnis /usr/share/bash-completion, die bash eine Befehlsvervollständigung ermöglichen. Will man alle Befehlsvervollständigungen aktivieren, so erreicht man dies mit einem
for x in /usr/share/bash-completion/*; do [[ -e $x ]] || continue; ln -s -- "$x" "${HOME}/.bash_completion.d/${x##*/}"; done
Beim Start einer neuen Shell oder beim Laden der neuen Konfigurationsdatei mit einem
source /etc/bash/bashrc
sollten sich nun durch die tab-Taste die Befehle vervollständigen lassen.
Leave a Reply