4
當輸入特定目錄時,有什麼辦法可以輸入特定文件來設置環境?有點像rvm做的,但更一般。輸入目錄時在zsh中輸入文件
當輸入特定目錄時,有什麼辦法可以輸入特定文件來設置環境?有點像rvm做的,但更一般。輸入目錄時在zsh中輸入文件
恕我直言,你不應該使用一個別名這一點,但鉤增加任何目錄更改:
autoload -U add-zsh-hook
load-local-conf() {
# check file exists, is regular file and is readable:
if [[ -f .source_me && -r .source_me ]]; then
source .source_me
fi
}
add-zsh-hook chpwd load-local-conf
此掛鉤函數將在任何目錄更改上運行。
FWIW,你應該想改變迪爾斯沒有 trigering掛鉤,使用cd -q dirname
你可以定義一個函數來執行cd然後源文件。該功能將嘗試源.source_me在新目錄中,如果存在的話:
mycd() {
builtin cd [email protected]
[ $? -eq 0 -a -f .source_me ] && source .source_me
}
啓用使用功能與
alias cd=mycd
這就是我一直在尋找。我知道喬的回答會奏效,但我知道有更好的辦法。謝謝,'add-zsh-hook'正是我一直在尋找的東西。 –
這很甜。我想是時候重新閱讀手冊了。 – Joe
您也可以簡單地嘗試源文件並忽略任何錯誤:'源.source_me || TRUE'。 – chepner