![-N 숫자 인수를 수행하는 방법은 무엇입니까?](https://linux55.com/image/47343/-N%20%EC%88%AB%EC%9E%90%20%EC%9D%B8%EC%88%98%EB%A5%BC%20%EC%88%98%ED%96%89%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
에 대한 자동 완성 스크립트를 작성 중입니다 supervisorctl
.
-6
등 의 숫자 매개변수를 완성할 수 있나요 -999
?
현재 내 통화는 _arguments
다음과 같지만 작동하지 않습니다.
_arguments \
'--[last N bytes of process stdout]:number'
첫 번째 대시는 일치시킬 패턴이고, 두 번째 대시는 매개변수가 동일한 단어에 있어야 함을 나타냅니다. 그러나 분명히 이는 일반적인 이중 대시 주장과 충돌합니다.
편집: 아마도 이것이 내가 하려는 일을 더 잘 설명할 것입니다. 다음은 cli에서 발생하려는 작업을 보여줍니다.
> supervisorctl tail -<TAB>
-- option --
- -- last N bytes of process stdout
-f -- Continuous tail of named process stdout
위의 내용은 현재 내 스크립트에서 일어나는 일입니다. 옵션 목록에서 첫 번째 항목을 선택하고 다음을 얻습니다.
> supervisorctl tail - <CURSOR>
-
나는 후행이 대시 근처에 커서를 남겨둘 것이라고 믿습니다 . 매개변수 정의에서 어떻게 인코딩하나요?
다음에서 진행 중인 작업을 확인할 수 있습니다.
https://github.com/mafrosis/zsh-completions/blob/supervisorctl/src/_supervisorctl