Conclusão bash do terminal do Mac OSX não funciona

0

Acabei de seguir as instruções @ esta questão para obter o autocompletar do git no terminal. Aqui estão os passos que fiz:

  • port install bash-completion
  • Adicionado

     if [ -f /opt/local/etc/bash_completion ]; then
       . /opt/local/etc/bash_completion
       echo "bash completion loaded"
     fi
    

    para o meu ~ / .profile

  • port update git-core +svn +bash_completion +doc

Então eu reiniciei o terminal, ele me mostrou "bash completion loaded" então obviamente o arquivo existe, mas a conclusão da tabulação ainda funciona apenas nos arquivos. Nada de mágico acontece depois de digitar git e depois clicar na aba.

Eu examinei /opt/local/etc/bash_completion.d/ e ele me dá 149 arquivos, incluindo git , java , man , port . Eu tentei digitar esses comandos e, em seguida, bater guia, mas nada funcionou lá também.

Alguém tem uma ideia do que eu fiz de errado? Talvez eu estraguei uma variável de ambiente ou algo assim. Alguém que tenha a instalação do bash-completion me diz um comando onde deve funcionar, como port up e depois aperte tab - > %código%. Obrigado ;-)

Editar:

Encontrei outro link que descreve minha abordagem: Como obter o git-completion.bash para funcionar no Mac OS X?

    
por sebastiangeiger 08.02.2010 / 13:38

4 respostas

2

MacPorts vem quebrando a conclusão do bash por um tempo agora. Sugiro que você tente Fink ou HomeBrew .

    
por 13.07.2012 / 22:34
1

Acho que a maneira mais fácil é mudar para o zsh. Há alguma configuração que precisa ser feita, mas é sobre isso.

Adicionei isso ao meu arquivo ~ / .zshenv


#******************************************************************************************
# From http://zshwiki.org/home/examples/compquickstart
zmodload zsh/complist
autoload -U compinit && compinit

_force_rehash() {
 (( CURRENT == 1 )) && rehash
 return 1   # Because we didn't really complete anything
}
zstyle ':completion:::::' completer _force_rehash _complete _approximate
zstyle -e ':completion:*:approximate:*' max-errors 'reply=( $(( ($#PREFIX + $#SUFFIX) / 3 )) )'
zstyle ':completion:*:descriptions' format "- %d -"
zstyle ':completion:*:corrections' format "- %d - (errors %e})"
zstyle ':completion:*:default' list-prompt '%S%M matches%s'
zstyle ':completion:*' group-name ''
zstyle ':completion:*:manuals' separate-sections true
zstyle ':completion:*:manuals.(^1*)' insert-sections true
zstyle ':completion:*' menu select
zstyle ':completion:*' verbose yes
    
por 08.02.2010 / 16:27
0

Consegui a conclusão do Bash funcionando via Fink.

fink install bash-completion

Após o fornecimento do Fink, a conclusão da tabulação funciona para o Bash. Isso inclui os comandos do Git, como você descreveu acima.

    
por 22.03.2011 / 07:59
0

Para mim em tmux funcionou, mas na planície iTerm2 não. Solução foi definir o comando para /opt/local/bin/bash -l para o meu perfil iTerm2 usado. Eu encontrei a solução no link

    
por 07.06.2013 / 07:37