Eu costumava nunca confiar nisso, mas agora que estou viciado, isso está me deixando louca. Quando estou no terminal e clico em Tab para autocompletar minha instrução, ela funciona para a maioria dos comandos (cd, mv, rm, etc), mas está quebrada para o vim / vi. Quando eu digito vim
Tab ou algo parecido, recebo um erro assim que clico em tab:
bash: command substitution: line 905: syntax error near unexpected token '}'
bash: command substitution: line 905: ' }'
Eu tentaria consertar isso sozinho, mas não tenho a menor idéia de qual arquivo procurar. Tentei /usr/share/bash-completion/bash-completion
, e é um dos poucos arquivos que encontrei relacionados ao bash com mais de 900 linhas, mas a linha 905 está lidando com o endereçamento IP. Aqui está, para ser completo:
-ne 's|.*inet[[:space:]]\{1,\}\([^[:space:]/]*\).*||p' )" \
De qualquer forma, eu tentei instalar o último bash-completion do git, como sugerido em Como consertar o bash-completion corrompido na substituição de comandos? , mas não ajudou. Encerrar e relançar o bash às vezes ajuda por alguns segundos, e o sudo -i
faz com que ele funcione, mas é claro que eu não quero ficar logado como su
toda vez que eu precisar editar algumas coisas. Alguma idéia do arquivo que eu preciso olhar para corrigir isso?
EDIT: Se eu executar o bash dentro do terminal, não vejo mudanças imediatas (as cores permanecem as mesmas, etc.), mas posso Tab com o vim. É claro, todos os meus aliases também são perdidos da minha sessão anterior, e se eu executar um shell script do bash, ele retornará ao shell "externo", fazendo com que o problema apareça novamente ou forçando-me a voltar a bater. Isso tornaria minha vida mais fácil se eu pudesse consertar o script que está com defeito aqui.