
Tabキーをインテリジェントに使用して、利用可能なサブコマンドなどを完了するコマンドラインでSubversionを使用してください。
$ svn c<tab>
cat checkout cl co copy
changelist ci cleanup commit cp
一方、Mercurialは少なくとも基本的にタブ完成機能がないようです。
$ hg c<tab>
[nothing happens]
MercurialのBash Complete機能を使用できますか?動作させる最も簡単な方法は何ですか? Ubuntu 11.04を使用しています。
答え1
Mercurialは独自のbash完成機能を提供します。 tarball の contrib/bash_completion をご覧ください。少なくともopenSUSEでは、このファイルは/etc/bash_completion.d/にインストールされるため、Mercurialのbashコンプリートは自動的に機能します。 UbuntuのMercurialパッケージに完成スクリプトがインストールされていることを確認したい場合があります。
答え2
私はソースバージョンからMercurialを構築し、完成スクリプトを直接インストールする必要がありました。これを行う方法は次のとおりです。
$ cd
$ wget http://selenic.com/hg/raw-file/25e4d2f35965/contrib/bash_completion -P opt/packages/mercurial
$ echo ". opt/packages/mercurial/bash_completion" >> .bashrc
$ . opt/packages/mercurial/bash_completion
完了がオンになっています。
答え3
Ubuntu 10.04ではデフォルトで動作します。バッシュから:
$ hg c
cat checkout clone commit copy
またはzshから:
$ hg c
cat checkout ci clone co commit copy cp
たぶん、パッケージが欠落している可能性があります(またはバグが発生した可能性があります)。
私のシステムでは、Mercurialパッケージは完成ファイルを提供します。
$ dpkg -S /etc/bash_completion.d/mercurial
mercurial: /etc/bash_completion.d/mercurial