Bash completamenti interrotti

1

Sto usando i seguenti completamenti bash installati tramite brew:

bash-completion
bash-completion@2

Il mio .bashrc ha il seguente aspetto:

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

Il problema è quando premo TAB su un prompt vuoto sulla tastiera ottengo l'errore:

-bash: words: bad array subscript

Dopo aver rimosso /usr/local/share/bash-completion/bash_completion da .bashrc , l'errore non si verifica ma mi mancano molti completamenti.

Qual è il problema qui? Come posso risolverlo?

    
posta Xolve 14.08.2017 - 12:22
fonte

1 risposta

2

La soluzione è che dovrei chiamare il completamento di bash da 1.3.2 prima di bash-completion@2 . Di seguito viene mostrato come appare il mio .bashrc , e questo risolve il problema:

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
    
risposta data 15.08.2017 - 17:56
fonte

Leggi altre domande sui tag