bash 및 zsh에서 일부 (종종 긴) 명령이 깨지는 이유는 무엇입니까?


10

bash 또는 zsh에서 긴 명령을 입력 할 때 (이것은 내가 본 긍정적 인 두 개의 껍질입니다) 커서가 입력하는 문자열의 중간 어딘가로 커서가 휘는 이유는 무엇입니까? 그리고 이것에 대해 뭔가 할 수 있다면?

필자는 종종 쉘 키 기록을 탐색 할 때 (화살표 키 사용), 긴 항목을 만나면 이전 항목과 길고 새로운 항목이 섞여서 텍스트가 깨져서 나타납니다.

짧은 문자열이있는 예가 있습니다.

역사는 다음을 포함합니다 :

mkdir sune1
mkdir sune2

으로 이동 mkdir sune1한 다음으로 이동하면 mkdir sune2명령 줄이 예상됩니다 mkdir sune2(이것은 지금 탐색 한 것이기 때문에) mkdir1sune2.

나는 이것을 수년 동안 자주 알아 차 렸지만 결코 너무 귀찮게하지는 않았지만 변화의 시간이라고 생각합니다! 그래서 어떤 아이디어?

답변:


8

프롬프트 문자열이 인쇄되지 않은 문자를 잘못 이스케이프했을 수 있습니다. 당신이 당신의 메시지의 색상 변경 등 무엇이든이있는 경우 둘 필요 \[하고 \]실제 명령이 화면에이고 그렇지 않으면 잘못 계산 및 업데이트를 - 터미널 이스케이프 시퀀스 주위 bash는 그들이 화면에 공간을 차지하지 않는다는 것을 알 수 있도록 잘못된 곳에. TLDP에서이 섹션을 참조하십시오 . zsh을에 넣어 %{%}주변 시퀀스를 탈출.


나는 실제로 내 프롬프트에 색상이 있으며, 탈출하거나 제거하고 도움이되는지보십시오. 감사!
Jonatan

zsh의 색상 모듈 사용을 고려하십시오. stackoverflow.com/questions/6159856/…
Francisco
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.