이것이 내가 가지고 있는 것입니다 ~/.zshrc
(실제로는 내 파일에서 가져온 것입니다 ~/.zshrc
. 아래 참조).
#CHANGING DIRECTORIES
setopt CD_SILENT
setopt CDABLE_VARS
setopt AUTO_CD
#COMPLETION
setopt recexact autolist listambiguous menucomplete hashlistall globcomplete completeinword completealiases autoparamslash
#EXPANSION AND GLOBBING
setopt nomatch badpattern globstarshort rcexpandparam extendedglob nocaseglob numericglobsort markdirs
#HISTORY
SAVEHIST=8192
HISTSIZE=$(( 1.2 * SAVEHIST ))
HISTFILE="$ZDOTDIR/.zhistory"
setopt nohistbeep extendedhistory histverify sharehistory histallowclobber histreduceblanks histfcntllock histignoredups histignorealldups histsavenodups
#SCRIPTS AND FUCNTIONS
setopt multios aliasfuncdef localoptions localloops localtraps cbases cprecedences
#MISC
setopt transientrprompt nocheckjobs ignoreeof nobeep nolistbeep nonotify noclobber interactivecomments
설정하는 것 외에는 아무것도 하지 않습니다 HISTFILE
.
% setopt
interactive
monitor
shinstdin
zle
% ls .zhistory
.zhistory
그러나 setopt autocd
터미널 내부에서 사용하면 해당 세션에서 작동합니다. 예는 다음과 같습니다.
% setopt
interactive
monitor
shinstdin
zle
% setopt autocd
% setopt
autocd
interactive
monitor
shinstdin
zle
echo I AM BEING LOADED, EVEN THEN I FAIL TO LOAD ANY SETOPT COMMANDS
여기에 추가하면 .zshrc
시작 시 다음이 표시됩니다.
I AM BEING LOADED, EVEN THEN I FAIL TO LOAD ANY SETOPT COMMANDS
% setopt
interactive
monitor
shinstdin
zle
이는 GNU/Linux amd64의 zsh 5.9의 경우입니다.
이 파일의 실제 출처는 다음과 같습니다.
# FUNCTOIN TO SOURCE READABLE FILES
function src {
[[ -r "$1" ]] && source "$1"
}
if [[ -d ~/.config/.zshell/zload.d/ ]]; then
for FileToLoad in ~/.config/.zshell/zload.d/*.zsh(n); do
src "$FileToLoad"
done
unset FileToLoad
fi
unset -f src
답변1
죄송합니다. 사용법을 잘못 이해했습니다 setopt localoptions
. 배우고 있는 중이라 오류가 발생할 수 있는 점 양해 부탁드립니다. 그래서 이 문제가 발생했습니다. 그건 멍청한 실수였어 ㅋㅋㅋ
아무것도 작동하지 않고 나를 화나게합니다. 그래서 기본을 다시 살펴보기로 결정했습니다.https://zsh.sourceforge.io/Doc/Release/Options.html
내가 직접 작성한 솔루션을 디버깅합니다. setopt xtrace
줄을 읽고 있는지 확인하기 위해 엽니다 . 출력은 다음과 같습니다.
여기에서 셸에 문제가 없으며 모든 줄을 읽고 있음을 알 수 있습니다. 거기에서 시행착오를 통해 해결책을 찾을 수 있습니다.
localoptions
리뷰가 내 모든 문제를 해결할 수 있다는 것을 깨달았습니다 . 다시 읽어보니 제가 이해한 것이 틀렸다는 것을 알게 되었습니다. 이 옵션의 기능을 보려면 위의 공유 링크를 방문하세요.
여기서는 setopt localoptions
함수 내부에서 수행되는 것처럼 src
모든 옵션 설정이 해당 함수에 대해 로컬입니다.
현재 작동하는 모습을 보여주는 사진은 다음과 같습니다. PS-> 실제로는 제가 직접 이해하지 못했습니다. zsh 포럼의 누군가가 제가 거기에 도달하도록 도와주었습니다.