![공통 접두사를 먼저 삽입하지 않고 "zsh"가 모든 완성을 한 번에 표시하도록 만드는 방법은 무엇입니까?](https://linux55.com/image/194738/%EA%B3%B5%ED%86%B5%20%EC%A0%91%EB%91%90%EC%82%AC%EB%A5%BC%20%EB%A8%BC%EC%A0%80%20%EC%82%BD%EC%9E%85%ED%95%98%EC%A7%80%20%EC%95%8A%EA%B3%A0%20%22zsh%22%EA%B0%80%20%EB%AA%A8%EB%93%A0%20%EC%99%84%EC%84%B1%EC%9D%84%20%ED%95%9C%20%EB%B2%88%EC%97%90%20%ED%91%9C%EC%8B%9C%ED%95%98%EB%8F%84%EB%A1%9D%20%EB%A7%8C%EB%93%9C%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)
zsh
Oh-My-Zsh를 설정했습니다 . 이 z
플러그인을 사용하면 최근에 사용한 디렉토리로 이동할 수 있습니다.
를 입력하면 목록과 일치하여 최근 방문한 디렉토리 목록이 자동 완성됩니다 z name<TAB>
.name
name
여러 항목이 있어야 하는 경우 결과에 하나의 항목만 포함되는 경우도 있습니다. 변수를 디버깅했는데 $reply
모든 항목에 동일한 접두사가 있는 경우(예: 포함 디렉터리) /path/to/dir
이런 일이 발생합니다 . name
이 경우 자동 완성 메뉴에는 일치하는 디렉터리의 전체 목록이 아닌 접두사만 표시됩니다. 확장 후 다시 클릭하면 <TAB>
스크립트의 전체 기능에 대한 새로운 호출이 트리거됩니다. z
이제 검색어 대신 전체 공개 접두사가 사용됩니다./path/to/dir
<Shift+Tab>을 누르면 reverse-menu-complete
zsh
마지막 항목이 올바르게 선택되고 전체 목록이 표시됩니다.
공통 접두사를 먼저 삽입하지 않고 Tab에 모든 완성 항목을 한 번에 표시하는 방법이 있습니까?
답변1
이것을 파일에 추가하고 .zshrc
,뒤쪽에Oh-My-Zsh 구매:
bindkey '\t' menu-complete
이제 Tab동작은 정확히 동일 ShiftTab하지만 방향은 반대입니다.
또는 완료 동작을 더 효과적으로 제어하려면 다음을 설치하세요.Zsh 자동 완성 플러그인.