Windows(cmd.exe)の下でAntに適切なタブ補完を行う方法はありますか?Windows版Antのタブ補完?
他のすべてのターゲットを一覧表示するためにデフォルトのターゲットを書き上げることができますが、これはたとえばLinuxのような適切なタブ補完と同じではありません。
Windows(cmd.exe)の下でAntに適切なタブ補完を行う方法はありますか?Windows版Antのタブ補完?
他のすべてのターゲットを一覧表示するためにデフォルトのターゲットを書き上げることができますが、これはたとえばLinuxのような適切なタブ補完と同じではありません。
BASHには、組み込みのcomplete
コマンドでカスタマイズ可能な完了メカニズムがあります。完全なコマンドをスクリプト化することで、あなたが考えることができるほとんどすべてのコマンドライン補完を行うことができます。 antターゲットの完了は、complete-ant-cmd.pl
というPerlシェルスクリプトを介して行われ、Cygwinのシステム全体のbashrcファイルに入れられます。
CMD.exeにはこのメカニズムがなく、既に組み込まれている機能を超えて拡張することはできません。
他にも言及したように、すべてのターゲットとその説明をリストするant -p
またはant --projecthelp
コマンドを試すことができます。このbuild.xml
ファイルを試してみてください:
<project name="test" default="target2" basedir=".">
<description>
This is a test project. It is to demonstrate the use
of the "ant -p" command and show all described
targets. The """ probably won't work, but you can use
regular quotes.
</description>
<target name="target1"
description="This is the prime target, but not the default"/>
<target name="target2"
description="This is the default target but not because I said it here"/>
<!-- Target "target3" won't display in "ant -p" because -->
<!-- it has no description parameters. Life is tough. -->
<target name="target3"/>
<target name="target4"
description="This is target #4, but there's no target3"/>
</project>
出力は次のようになります。
は$ ant -p
Buildfile: /Users/david/build.xml
This is a test project. It is to demonstrate the use
of the "ant -p" command and show all described
targets. The """ probably won't work, but you can use
regular quotes.
Main targets:
target1 This is the prime target, but not the default
target2 This is the default target but not because I said it here
target4 This is target #4, but there's no target3
Default target: target2
$
シース!これは以前の私の答えとまったく違っていましたか? – sudocode
私はなぜこれが受け入れられた答えであるか分かりません! @sudocodeの答えはすでにこれをカバーしており、以前よりも多くの回答があります。 –
この機能はWindowsではworks in the Cygwin bash environmentです。
私はいつもCygwinを使用しています。知りませんでしたが、この機能を有効にしていませんでした。しかし、私はそのリンクで説明したように、私のプロフィールを更新した後、ちょうど今それを試してみました:
$ ant t<TAB>est<TAB>
test test_1 test_2 test_3
$ ant test
私はcmd.exeのはcustomizable command completionのこの種をサポートしていることはないと思います。
PowerShellのようなことができるかどうかは私が答えることができない質問です。
"ant -p [rojecthelp]"は、ビルドファイルにターゲット(説明属性が設定されている)を印刷する一般的な方法です。これを行うデフォルトのターゲットを作成するよりもむしろ。
"" ant -p "はターゲットを印刷する典型的な方法です" – dm76
はい、私はCygwinで動作することを知っていますが、cmd.exeで動作させたいです – dm76
"ant -p"が標準ですターゲットを印刷する方法 ":これは' --projecthelp'の略です。 'description'パラメータを持つターゲットは、その記述と共に表示されます。また、 '
あなたが途中ではるかに強力な昔ながらのCMDよりたpowershell.exe、で非常に簡単にアリのためtabcompletionを統合することができます。EXE。
Powershell.exeはWindows 7/8に含まれていますが、XPでは別のコンポーネントとしてインストールすることもできます(MicrosoftのWebサイトからダウンロードできます)。
https://github.com/peet/posh-antで提供されているスクリプトを使用しました。スクリプトはまだ完璧ではありませんが、仕事の95%はかなりうまくいきます。
Linuxでは、 "ant"と入力すると、ビルドファイルで使用できるターゲットがグロビングされていますか? –
sudocode
はい...私は通常、開発者が利用可能なすべてのターゲットのリストを印刷するようにしていますが、新しいターゲットが追加されたときやターゲット名が変更されたときに常にそのリストを更新しなければならないのであまり良くありません。 – dm76