2011-10-24 14 views
7

Zainstalowałem Mercurial (1.4.3-1) na Ubuntu i domyślnie nie wypełnia ona kart w bashu. Jaki jest najprostszy sposób włączenia tej funkcji?Włączanie uzupełniania tabulatora dla Mercurial (hg)

+2

Należy naprawdę rozważyć użycie nowszej Mercurial uwolnienia. W systemie Ubuntu dostępne są repozytorium PPA, dzięki któremu możesz normalnie korzystać ze swoich funkcji automatycznej aktualizacji Mercurial, dzięki czemu nie będziesz miał więcej niż rok za bieżącą aktualizacją: https://launchpad.net/~mercurial-ppa/+ archive/releases –

Odpowiedz

12

Musisz

  • Zainstaluj aktualny pakiet dla Mercurial, patrz Mercurial PPA. To da ci plik /etc/bash_completion.d/mercurial z kodem zakończenia dla Mercurial. Możesz pobrać ten plik bezpośrednio, aby umożliwić obsługę zakończenia dla Mercurial.

Można również włączyć obsługę zakończenia dla wszystkich programów:

  • Zainstaluj pakiet bash-completion: aptitude install bash-completion.

  • Źródło /etc/bash_completion w pliku ~/.bashrc:

    # Use bash-completion, if available 
    if [ -f /etc/bash_completion ]; then 
        . /etc/bash_completion 
    fi 
    

    ten umożliwi zakończenie dla wszystkich poleceń, w tym Mercurial.

0

Ponieważ jest to ani oznaczone, ani tytułem "ubuntu", i ponieważ googling z Fedora prowadzi także tutaj, dodam wariację na odpowiedź Marcina, który działa poprzez odniesienie /etc/bash_completion.d/mercurial.sh zamiast /etc/bash_completion w ~/.bashrc:

# Use bash-completion, if available if [ -f /etc/bash_completion.d/mercurial.sh ]; then . /etc/bash_completion.d/mercurial.sh fi

Nie jestem pewien, czy system operacyjny sprawia, że ​​to rozróżnienie jest konieczne, ale to działa na ja na Fedorze 11 do 20.

Korekta: Fedora 11 i Fedora 20. (Nie testowano 12-19.)

2

Lokalizacja skrypt bash_completion zmieniła więc trzeba zrobić

curl https://www.mercurial-scm.org/repo/hg/raw-file/tip/contrib/bash_completion -o ~/.hg-completion.bash && source ~/.hg-completion.bash 

zamiast

curl http://www.selenic.com/hg/raw-file/tip/contrib/bash_completion -o ~/.hg-completion.bash && source ~/.hg-completion.bash 
+0

Ta odpowiedź jest wieloplatformowa i nie wymaga Ubuntu. Używałem go na OS X. Powinien działać wszędzie, gdzie masz 'bash',' curl' (i 'hg' ;-). – lkuty

+0

Pracowałem dla mnie na OSX. Dziękuję Ci! – Brodan

+0

Powinieneś to zaktualizować, dodając słowo 'source ~/.hg-completion.bash' do' .bashrc', abyś nie musiał go uruchamiać w każdej nowej powłoce. – Brodan

Powiązane problemy