나는 이 제품의 열렬한 사용자입니다생선 껍질나는 그것을 아주 많이 좋아.
하지만 문제가 있습니다.
페이지에서https://fishshell.com/docs/2.1/index.html라는 제목의 섹션이 있습니다."명령줄 편집기". 유용한 단축키가 많이 나열되어 있습니다.
내가 가장 관심을 갖는 것은Ctrl-L. 설명에 따르면: "Ctrl-L은 화면을 지우고 다시 그립니다." 나는 그것을 시도했고 예상대로 작동했습니다. 그러나 이전 팁에 추가되는 몇 가지 징후가 생성됩니다. 이는 뒤로 스크롤하면 볼 수 있습니다.
예:
rosika@... ~/Schreibtisch> [3;J
rosika@... ~/Schreibtisch>
그것이 [3;J
내가 묻는 것입니다. 그것은 [
실제로 4자리 숫자가 포함된 일종의 직사각형입니다.
왜 이런 일이 발생하는지 말해 줄 수 있는 사람이 있나요? 어떻게 되어가나요? 이렇게 되어야 할까요?
미리 감사드립니다.
인사
로시카
내 시스템:
Linux/Lubuntu 16.04.4 LTS, 64비트
물고기 v.2.2.0-3
답변1
Unix 터미널은 단일 스트림에 혼합된 제어 시퀀스와 텍스트를 해석하여 콘텐츠를 채웁니다. 많은 문자는 의미의 맥락에 따라 텍스트 또는 제어 코드일 수 있습니다.
<esc> [3;J
는 그러한 시퀀스 중 하나입니다. 잘못된 컨텍스트에서는 인쇄되고 올바른 컨텍스트에서는 재설정 표시의 일부입니다.
자세한 내용은 및 매뉴얼 페이지를 참조 termcap
하십시오 console_codes
.tput
답변2
TERM
터미널 에뮬레이터가 환경 변수 값과 일치하지 않습니다. 가장 흔한 실수는 XTerm이 아닌 것이 xterm
또는 이라는 이름의 xterm-new
termcap/terminfo 레코드와 일치 할 것이라고 가정하는 것입니다 xterm-256color
.
terminfo 레코드 는 지워야 할 스크롤백 버퍼가 있고 이를 지우는 방법을 프로그램에 알려주는 상대적으로 새로운 기능(현재 , , , , , , 및 일부 기타 터미널 유형 E3
에 지정됨 )을 지정합니다. 그러나 터미널 에뮬레이터는 실제로 해당 제어 시퀀스를 지원하지 않고 대신 표시되는 응답 콘텐츠를 인쇄합니다. Fish 쉘은 이제 terminfo 향상된 기능을 활용하는 명령을 실행하고 있습니다.linux
putty
putty-256color
xterm-basic
xterm-new
xterm
xterm-256color
clear
환경 변수 값에 지정된 이름은 TERM
터미널 에뮬레이터의 작동을 올바르게 설명하는 termcap/terminfo 레코드의 이름과 일치해야 합니다.