2016-08-02 1 views

답변

6

기본 자식 완료 is extendible :

가 자신의 자식 하위 명령을 (당신이 "자식 foo는"을 실행할 때 자식이 프로그램`자식-foo는 ' 를 실행합니다) 가지고 말하고 "자식을 원하는 f "를 입력하여 하위 명령을 완료하십시오. 당신이이 프로그램의 수를 추가 할 수 있도록

% zstyle ':completion:*:*:git:*' user-commands foo:'description for foo' 

`사용자 명령 '목록 스타일 : 당신은 사용자 명령 스타일을 통해 완료 알려져 그 하위 명령을 할 수 있습니다. :이 같은 에서 $ 경로를 모든 git- * 프로그램을 추가 할 수 있도록 설명 부분은 선택 사항입니다 :, 그것은 충분

% zstyle ':completion:*:*:git:*' user-commands ${${(M)${(k)commands}:#git-*}/git-/} 

zstyle ':completion:*:*:git:*' user-commands new-branch:'custom new branch function' 

을 추가 할 zshrc.

사용자 지정 명령에 대한 매개 변수도 처리하려는 경우 사용자 지정 compdef 파일을 사용하는 것이 더 나은 솔루션입니다. 위에서 언급 한 파일에는 그에 대한 몇 가지 세부 정보가 있습니다. git-<yourcommand> 함수를 정의하는 표준 정의 파일을 만들면 기본 git 완성은 필요할 때 자동으로 사용합니다.