Xenix의 Vi: 줄을 스크롤하고 현재 줄을 덮어쓰지 않는 이유는 무엇입니까?

Xenix의 Vi: 줄을 스크롤하고 현재 줄을 덮어쓰지 않는 이유는 무엇입니까?

Linux 및 이전 버전의 Unix(예: AT&T)에서 줄을 스크롤하면 Xenix에서 현재 읽은 줄이 화면을 "덮고" 있는 텍스트가 보입니다. 보고 있다동영상, 내가 무슨 말 하는지 알지?

그것을 처리하는 방법? vi의 터미널 문제인가요 아니면 옵션 문제인가요?

답변1

이는 구성(터미널이나 프로그램 모두)에 문제가 있습니다.

minicom을 통한 연결은 직렬 포트(또는 모뎀) 연결처럼 들립니다. vi는 연결에 대해 미리 정의된 설정에서 화면 크기를 가져오거나 터미널 설명에서 화면 크기를 가져옵니다. 실제 화면 크기에 대한 감각이 없습니다. 몇 가지 일반적인 해결 방법이 있습니다.

  • 원격 시스템의 알려진 화면 크기를 업데이트하는 프로그램(또는 스크립트)을 사용하십시오. 그렇지 않다면또한그것은 고대의stty, 예를 들어 "stty -a"의 출력에 크기가 rows및 로 표시됩니다. columns덜 오래된 시스템에서는resize적합한 프로그램저것(하지만 미니콤에는 VT100의 기능 대부분이 부족했기 때문에 아마도 작동하지 않을 것입니다.) 그러나 그것이 없더라도 stty(잘못되었을 수 있는) 값을 표시하면 이를 무시할 수 있습니다 stty rows 24.
  • LINES설정 및 환경 변수를 통해 COLUMNS프로그램 재정의
  • 원격 컴퓨터에서 터미널 설명을 수정합니다. 예를 들어, ":li#40:co:80:"과 같은 내용이 포함된 termcap일 수 있습니다. 일반적으로 termcap을 사용하는 프로그램은 termcap 파일에 올바른 화면 크기가 포함되어 있다고 가정합니다.

관련 정보