1 votes

Les complétions Bash sont cassées

Je suis en train d'utiliser les complétions bash suivantes installées via brew :

bash-completion
bash-completion@2

Mon fichier .bashrc ressemble à ceci :

if [ -f /usr/local/share/bash-completion/bash_completion ]; then
. /usr/local/share/bash-completion/bash_completion
fi

if [ -f /usr/local/Cellar/bash-completion/1.3_2/etc/bash_completion ]; then
  BASH_COMPLETION=/usr/local/Cellar/bash-completion/1.3_2/etc/bash_completion
  . /usr/local/Cellar/bash-completion/1.3_2/etc/bash_completion
fi

Le problème survient lorsque j'appuie sur TAB sur un prompt vide, j'obtiens l'erreur :

-bash: words: mauvais indice de tableau

Après avoir retiré /usr/local/share/bash-completion/bash_completion de .bashrc, l'erreur ne se produit pas mais je perds de nombreuses complétions.

Quel est le problème ici ? Comment puis-je le résoudre ?

2voto

Xolve Points 131

La solution est que je devrais appeler la complétion bash de la version 1.3.2 avant bash-completion@2. Voici à quoi ressemble mon .bashrc, et cela résout le problème:

if [ -f /usr/local/Cellar/bash-completion/1.3_2/etc/bash_completion ]; then
  BASH_COMPLETION=/usr/local/Cellar/bash-completion/1.3_2/etc/bash_completion
  . /usr/local/Cellar/bash-completion/1.3_2/etc/bash_completion
fi

if [ -f /usr/local/share/bash-completion/bash_completion ]; then
    . /usr/local/share/bash-completion/bash_completion
fi

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X