zsh의 프롬프트 사전 설정은 어디에 있습니까?

zsh의 프롬프트 사전 설정은 어디에 있습니까?

나만의 프롬프트를 만들고 싶지만 에서 얻을 수 있는 사전 설정 중 하나에서 시작합니다 prompt -l. 하나를 복제하여 포주할 수 있도록 정의된 위치를 알고 싶습니다.

prompt -l또한 새 프롬프트를 커뮤니티와 공유할 수 있도록 .zshrc에서 정의하는 대신 목록에서 선택 항목으로 사용할 수 있게 만드는 방법을 아는 것이 좋을 것입니다 .

추신: 아니요 oh-my-zsh를 사용하고 싶지 않습니다.

답변1

prompt명령은 zsh와 함께 제공되며 다음 문서에 설명되어 있습니다.수동. 아쉽게도 에서 빠졌네요함수 색인, 그러나 전체 텍스트 검색을 통해 찾을 수 있습니다. 그런 다음 (줄 시작 부분에 "prompt"라는 단어)를 man zshall검색 하거나, 관련 없는 히트 수를 줄이려면 (다음에 다른 단어가 오는 위치를 제외하세요). 그것은의 일부입니다^ *prompt^ *prompt [^ a-z]프롬프트 테마 사용자 기여.

설명서에는 방법이 설명되어 있습니다.나만의 프롬프트 테마 작성. 프롬프트 테마는 자동 로드되어야 하는 명명 패턴과 일치하는 설정 기능에 의해 정의됩니다. 프롬프트 테마 코드는 프롬프트 테마를 동적으로 등록하는 것을 공식적으로 지원하지 않습니다. 하지만 소스 코드를 보면 를 실행한 후 배열 에 설정 함수의 이름(이름 지정 패턴과 일치해야 함)을 추가하여 이를 수행할 수 있습니다 .prompt_name_setupprompt_themespromptinit

사용 가능한 프롬프트 테마가 어디에 있는지 확인하려면 prompt_*_setup함수가 로드되는 위치를 확인하세요.

echo $^fpath/prompt_*_setup(N)

이들 각각은 가서 읽을 수 있는 함수 정의입니다.

답변2

% autoload -Uz promptinit && promptinit  # Initialize the prompt system
% prompt -p                              # Preview the included prompts
...
% # Get the source file of a particular prompt:
% zmodload zsh/parameter
% print $functions_source[prompt_fade_setup]
/usr/share/zsh/5.8/functions/prompt_fade_setup
%

관련 정보