oh-my-zsh
이전에는 컴퓨터에 SSH로 접속할 때마다 다음과 같은 편리한 스크립트를 사용하여 탭 색상을 설정했습니다.
# iTerm2 window/tab color commands
# http://code.google.com/p/iterm2/wiki/ProprietaryEscapeCodes
tab-color() {
echo -ne "\033]6;1;bg;red;brightness;$1\a"
echo -ne "\033]6;1;bg;green;brightness;$2\a"
echo -ne "\033]6;1;bg;blue;brightness;$3\a"
}
tab-reset() {
echo -ne "\033]6;1;bg;*;default\a"
trap - INT EXIT
}
# Change the color of the tab when using SSH
# reset the color after the connection closes
color-ssh() {
if [[ -n "$ITERM_SESSION_ID" ]]; then
trap "tab-reset" INT EXIT
if [[ "$*" =~ "production|ec2-.*compute-1" ]]; then
tab-color 255 0 0
else
tab-color 144 181 80 #0 255 0
fi
fi
ssh $*
}
compdef _ssh color-ssh=ssh
alias ssh=color-ssh
그런데 오늘 자동 완성 기능이 깨졌음을 발견했습니다! 이 스크립트를 실행하면 ssh
더 이상 자동 완성 기능이 제공되지 않습니다. 무슨 일이 일어나고 있는지 어떻게 진단합니까?
편집: oh-my-zsh
파일을 비활성화하고 가져오면 오류가 발생합니다: command not found: compdef
.
답변1
좋아, 해결책을 찾았습니다. 모든 zcompdump
파일을 삭제하면 문제가 해결되었습니다.
rm ~/.zcompdump*
답변2
다음 명령을 실행했는데 탭 완성이 수정되었습니다.
autoload -U compinit && compinit
autoload -U bashcompinit && bashcompinit