쉘용 Command-T


4

Command-T 와 비슷한 파일 이름 완성을 수행 할 수있는 셸 확장을 찾고 있습니다 .

Command-T TextMate의 기능 및 Vim 용 플러그인으로, 연속 할 필요가없는 파일 이름의 일부를 입력하여 파일 이름을 선택할 수 있습니다. 순위 시스템을 사용하여 사용할 파일 이름을 결정하고 사용 가능한 옵션 메뉴를 제공합니다. 이 기능에 익숙하지 않은 경우이를 이해하는 가장 좋은 방법 은 Command-T github 페이지 에서 첫 번째 비디오를 보는 것입니다 .

쉘에서 파일 이름을 Command-T 스타일로 완성하기 위해 어떤 도구를 사용할 수 있습니까? (현재 배쉬, 대안에 개방.)

답변:


2

구조에 Zsh!

~ / .zshrc 파일에 다음을 던져 넣고 즐기십시오!

TM이 파일 이름을 찾는 능력만큼 좋지는 않지만 bash에서 발견되는 기본 자동 완성 기능보다 뛰어납니다.

##############################################################
# Stuff from http://zshwiki.org/home/examples/compquickstart #
##############################################################
zmodload zsh/complist
autoload -U compinit && compinit
zstyle ':completion:::::' completer _complete _approximate
zstyle -e ':completion:*:approximate:*' max-errors 'reply=( $(( ($#PREFIX + $#SUFFIX) / 3 )) )'
zstyle ':completion:*:descriptions' format "- %d -"
zstyle ':completion:*:corrections' format "- %d - (errors %e})"
zstyle ':completion:*:default' list-prompt '%S%M matches%s'
zstyle ':completion:*' group-name ''
zstyle ':completion:*:manuals' separate-sections true
zstyle ':completion:*' menu select
zstyle ':completion:*' verbose yes
## case-insensitive (uppercase from lowercase) completion
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
#zstyle ':completion:*' special-dirs ..

이것이 내가 Command-T만큼 좋은 곳은 아니지만 분명히 내가 해낸 해결책입니다.
Ryan Patterson

1

ZShellCommand-T / CtrlP 퍼지 완료를 추가 한 방법은 다음과 같습니다 .

1 단계 : 설치 matcher.

2 단계 : 에 다음을 추가하십시오 ~/.zshrc.

_matcher_complete() {
  integer i=1
  (git ls-files 2>/dev/null || find .) | /usr/local/bin/matcher --limit 20 ${words[CURRENT]} | while read line; do
    compadd -U -2 -V $i -- "$line"
    i=$((i+1))
  done
  compstate[insert]=menu
}

zle -C matcher-complete complete-word _generic
zstyle ':completion:matcher-complete:*' completer _matcher_complete
zstyle ':completion:matcher-complete:*' menu-select

bindkey '^X^T' matcher-complete

3 단계 : 퍼지 찾기 문자열을 입력하고 CTRL+ 를 입력 한 xt후 즐기십시오.

터미널 데모



0

쉘의 범용 퍼지 파인더 인 fzf 를 확인하고 싶을 수도 있습니다 .

설치 스크립트는 CTRL-T 키 바인딩 을 쉘에 추가하며 Command-T와 매우 유사합니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.