Windows (cmd.exe)에서 앤트에 대해 적절한 탭 완성을 수행 할 수있는 방법이 있습니까?Windows에서 Ant에 대한 탭 완성?
다른 대상을 모두 나열하도록 기본 대상을 쓸 수도 있지만, 예를 들어 리눅스에서 얻은 적절한 탭 완성과 동일하지는 않습니다.
Windows (cmd.exe)에서 앤트에 대해 적절한 탭 완성을 수행 할 수있는 방법이 있습니까?Windows에서 Ant에 대한 탭 완성?
다른 대상을 모두 나열하도록 기본 대상을 쓸 수도 있지만, 예를 들어 리눅스에서 얻은 적절한 탭 완성과 동일하지는 않습니다.
BASH는 기본 제공 complete
명령에서 사용자 지정 가능한 완료 메커니즘을 가지고 있습니다. 완전한 명령을 스크립팅함으로써 생각할 수있는 거의 모든 것에 대해 명령 행 완성을 할 수 있습니다. 개미 타겟 완료는 Cygwin의 시스템 전체 bashrc 파일에 넣어 진 complete-ant-cmd.pl
이라는 Perl 쉘 스크립트를 통해 수행됩니다.
CMD.exe에는이 메커니즘이 없으며 이미 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과 같은 기능을 수행 할 수 있는지 여부는 내가 대답 할 수없는 질문입니다.
BTW, "ant -p [rojecthelp]"는 빌드 파일에 설명 속성 집합이있는 대상을 인쇄하는 일반적인 방법입니다. 이를 수행하기위한 기본 목표를 작성하는 것이 아닙니다.
""ant -p "는 목표를 인쇄하는 일반적인 방법입니다." – dm76
예, Cygwin에서 작동하는 것을 알고 있지만 cmd.exe와 함께 사용하고 싶습니다. – dm76
""-p "가 전형적인 것입니다. 목표물을 출력하는 방법 ":'--projecthelp'의 약자. 'description' 매개 변수가있는 대상은 해당 설명과 함께 표시됩니다. 또한 '
당신은 방법에 의해 훨씬 더 강력한 평범한 구식 cmd를보다 powershell.exe를,에 아주 쉽게 개미에 대한 tabcompletion를 통합 할 수 있습니다 .exe.
Powershell.exe는 Windows 7/8에 포함되어 있지만 XP에서는 별도의 구성 요소로 설치할 수도 있습니다 (Microsoft 웹 사이트에서 다운로드 할 수 있음).
https://github.com/peet/posh-ant에 제공된 스크립트를 사용했습니다. 이 스크립트는 아직 완전하지는 않지만 95 %의 작업을 잘 처리합니다.
Linux에서 "ant"을 입력하면 빌드 파일에서 사용할 수있는 대상이 globbing됩니까? –
sudocode
예 ... 일반적으로 개발자가 목표 대상을 모든 사용 가능한 대상의 목록을 인쇄하도록 만듭니다. 그러나 새 대상이 추가되거나 대상 이름이 변경 될 때마다 해당 목록을 업데이트하는 것을 기억해야하므로 obvisouly는 그리 좋지 않습니다. – dm76