Включить завершение bash tab для Mercurial (hg) - PullRequest
8 голосов
/ 25 октября 2011

Я установил Mercurial (1.4.3-1) в Ubuntu, и он не выполняет завершение табуляции в bash по умолчанию. Какой самый простой способ включить эту функцию?

Ответы [ 5 ]

13 голосов
/ 19 января 2012

Вам нужно

  • Установите обновленный пакет для Mercurial, см. Mercurial PPA . Это даст вам файл /etc/bash_completion.d/mercurial с кодом завершения для Mercurial. Вы можете получить этот файл напрямую, чтобы включить поддержку завершения для Mercurial.

Вы также можете включить поддержку завершения для всех программ:

  • Установите пакет bash-completion: aptitude install bash-completion.

  • Источник /etc/bash_completion в вашем ~/.bashrc файле:

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

    Это включит завершение для всех команд, включая Mercurial.

3 голосов
/ 06 октября 2013
curl https://www.mercurial-scm.org/repo/hg/raw-file/tip/contrib/bash_completion -o ~/.hg-completion.bash && source ~/.hg-completion.bash

Сценарий ртутного автозаполнения, похоже, сохраняется здесь:

https://www.mercurial -scm.org / repo / hg / file / tip / contrib / bash_completion

source этот скрипт в вашем .bashrc или эквивалентном

2 голосов
/ 10 сентября 2015

Местоположение скрипта bash_completion изменилось, поэтому вам нужно сделать

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

вместо

curl http://www.selenic.com/hg/raw-file/tip/contrib/bash_completion -o ~/.hg-completion.bash && source ~/.hg-completion.bash
2 голосов
/ 25 октября 2011

Установите пакет завершения bash в Linux (зависит от используемого вами дистрибутива Linux).

Затем перейдите в /etc/bash_completion.d/ и создайте файл с именем hg

ипоместите содержимое этого скрипта (ниже) в созданный файл hg

http://fts.ifac.cnr.it/cgi-bin/dwww/usr/share/doc/bash/completion-contrib/hg

0 голосов
/ 26 ноября 2014

Так как он не помечен и не озаглавлен как «ubuntu», и поскольку поиск в Google с помощью fedora также приводит сюда, я добавлю вариант ответа Мартина, который работает, ссылаясь на /etc/bash_completion.d/mercurial.sh вместо /etc/bash_completion в вашем ~/.bashrc:

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

Не уверен, что ОС делает это различие необходимым, но это работает для меня в Fedora с 11 по 20.

Исправление: Fedora11 и Fedora 20. (Не проверено 12-19.)

...