공통 접두사를 먼저 삽입하지 않고 "zsh"가 모든 완성을 한 번에 표시하도록 만드는 방법은 무엇입니까?

공통 접두사를 먼저 삽입하지 않고 "zsh"가 모든 완성을 한 번에 표시하도록 만드는 방법은 무엇입니까?

zshOh-My-Zsh를 설정했습니다 . 이 z플러그인을 사용하면 최근에 사용한 디렉토리로 이동할 수 있습니다.

를 입력하면 목록과 일치하여 최근 방문한 디렉토리 목록이 자동 완성됩니다 z name<TAB>.namename

여러 항목이 있어야 하는 경우 결과에 하나의 항목만 포함되는 경우도 있습니다. 변수를 디버깅했는데 $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 자동 완성 플러그인.

관련 정보