Windows에서 zsh에 대한 각 프롬프트 앞에 백분율 기호가 나타나는 이유는 무엇입니까? 줄에서 첫

Windows에서 zsh을 설치하고 모든 프롬프트 바로 위의 줄에서 첫 번째 문자 위치에 백분율 기호 (역 자주 : 흰색 (검은 색 터미널 배경)에 검은 색)가 나타납니다.

일반적으로 파일 끝 부분에 개행 문자가 없음을 의미합니다. 예를 들어 cat – 파일.

내 Mac이나 Windows의 Mintty에서도 발생하지 않습니다. 그러나 그것은 ConEmu와 CMD.EXE가 일반적으로 실행되는 표준 터미널 응용 프로그램에서 발생합니다.

나는 벌써 unset 내 모든 프롬프트 문자열뿐만 아니라 precmd() 나는 일반적으로 프롬프트 위에 빈 줄을 추가하는 데 사용합니다.

어떤 단서가 될 수 있니?



답변

관련 옵션은 아마도 PROMPT_SP, 설명서의 설명

부분 행 (즉, 끝나지 않은 행)을 보존하려고 시도합니다.
  그렇지 않으면 newline으로)
                PROMPT_CR 옵션으로 인해 명령 프롬프트에 표시되지 않습니다. 이것은 일부 커서 제어를 출력하여 작동합니다.
                일련의 공백을 포함하여 부분적으로 줄을 감쌀 때 터미널을 다음 줄로 감싸는 문자
                줄이 있습니다 (터미널에 자동 여백이있는 경우에만 성공합니다).

부분 행이 보존되면, 기본적으로 부분 행 끝에 역 + 굵은 문자가 나타납니다. % 일반 사용자 또는 # 루트. 설정된 경우 쉘 매개 변수 PROMPT_EOL_MARK 될 수있다.
                부분 선의 끝이 표시되는 방식을 사용자 정의하는 데 사용됩니다.

그래서, 당신은

unsetopt PROMPT_SP

은폐 된 라인에 대해 신경 쓰지 않는다면 (그러나 귀하의 경우에는 빈 라인 인 것처럼 보입니다. % 시작 부분에 서명).

또는 사용

setopt PROMPT_CR
setopt PROMPT_SP
export PROMPT_EOL_MARK=""

부분 선은 보존되지만 % – 프롬프트에 비해 빈 줄을 들려서.

이 항목을 영구히 유지하려면 ~/.zshrc.

이 동작을 재현 할 수 없기 때문에 이것은 맹목적입니다. cmd.exe.


답변

그래서 나는 내 zsh + oh-my-zsh와 똑같은 문제를 겪고 있었다.

나는 mpy와 그 라인의 도움으로 해결했다.

setopt PROMPT_CR

PROMPT_SP 설정

내보내기 PROMPT_EOL_MARK = “”

– & gt;로 가야합니다. ~ / .oh-my-zsh / themes / XXXXXX
당신은 oh-my-zsh에서 사용하고있는 주제를 열어야합니다.

이 파일을 열고 파일 끝에이 세 줄을 복사 / 붙여 넣기하십시오.

그리고 그것의 고정 !!

희망을 가지고 좋은 하루 보내세요. 그러면 사람들이 도움이 될 것입니다.

평화


답변

당신은 ConEmu 내부에 mintty를 실행할 수 있습니다. 그게 저에게 백분율을 없애 버렸습니다.

다음은 작업 매개 변수에 대한 것입니다.

/icon "%ConEmuDrive%\msys64\msys2.ico"

명령 :

set CHERE_INVOKING=1 & %ConEmuDrive%\\msys64\usr\bin\mintty.exe -i "%ConEmuDrive%\msys64\msys2.ico" -