Linux 터미널에서 일부(반복/공백) 문자를 건너뜁니다.

Linux 터미널에서 일부(반복/공백) 문자를 건너뜁니다.

일부 콘솔 응용 프로그램에서 Linux 서버가 특정 반복 문자를 "제거"하기 시작하여 사용자 인터페이스에 심각한 영향을 미쳤습니다.

여기 몇 가지 예가 있어요.

고르지 않은 열과 CPU 차트가 있는 htop 보기이 htop 보기의 CPU 그래프 크기와 열이 일관되지 않습니다.

고르지 않은 열이 있는 itraf-ng 보기itraf-ng 기본 메뉴에 상자 문자가 없습니다. 이러한 itraf-ng 보기는 메뉴 상자 문자가 "채워지지" 않았으며 라이브 보기의 열이 고르지 않음을 보여줍니다.

지금 몇 시지:

  1. 이는 Windows의 PuTTY 및 Windows의 Cygwin(mintty) 셸에서만 발생하는 것으로 확인되었습니다. Mac OS X 터미널에서 발생하는지 여부는 테스트하지 않았습니다. 로컬 콘솔에서는 발생하지 않습니다.
  2. 다른 Linux 텍스트 콘솔에서 SSH를 통해 시스템에 연결하는 경우에는 이런 일이 발생하지 않습니다.
  3. 내 의심은 이것이 터미널 유형과 관련이 있다는 것입니다. 그러나 내가 소유한 다른 Linux 서버는 PuTTY 또는 Cygwin에서 이 동작을 나타내지 않습니다. 둘 다 $TERM로 설정된 것으로 보고됩니다 xterm.
  4. 문제의 서버에 ncurses를 다시 설치하려고 시도했는데, 그러면 terminfo 파일도 새로 고쳐야 하지만 해결책이 없습니다.
  5. 잘 작동하는 머신과 이 동작을 보이는 머신 모두 en_US.UTF-8로케일( LANG변수)로 사용됩니다. 두 사람 모두 locale.gen최근에 처형되었습니다.
  6. 이러한 동작을 보이는 앱은 저주 기반 앱인 것으로 보입니다. 순수한 터미널 애플리케이션이면 충분합니다.

해당되는 경우 두 시스템 모두 Arch Linux 64비트이며 최신 패치가 모두 적용되어 있습니다.

누구든지 문제를 정확히 찾아내거나 해결하는 데 도움을 줄 수 있습니까?

답변1

terminfo이는 REP(이전 문자 반복) 이스케이프 시퀀스를 지원한다고 ncurses말하는 데이터베이스(일부)의 최근 변경으로 인해 발생합니다. 이 시퀀스는 몇 가지 다른 터미널 에뮬레이터 외에는 아직 없거나 방금 추가되었습니다. 곧 지원이 추가될 예정입니다.TERM=xtermxterm

예를 들어 참조하십시오.위로또는그놈 터미널자세한 내용은 버그 보고서를 참조하세요.

관련 정보