![tmux가 TERM 변수를 화면으로 설정하는 이유는 무엇입니까?](https://rvso.com/image/76417/tmux%EA%B0%80%20TERM%20%EB%B3%80%EC%88%98%EB%A5%BC%20%ED%99%94%EB%A9%B4%EC%9C%BC%EB%A1%9C%20%EC%84%A4%EC%A0%95%ED%95%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
맨페이지 인용 tmux
:
tmux 내부에서 실행되는 모든 프로그램에 대해 TERM 환경 변수는 "screen"으로 설정되어야 합니다. 새 창에는 환경에 자동으로 “TERM=screen”이 추가되지만 쉘 시작 파일에서 이를 재설정하지 않도록 주의해야 합니다.
이는 세션이 최소 공통 분모인 tmux
모든 터미널(예: 원격)에 연결될 수 있기 때문입니까 ? screen
내 터미널을 알고 있으면 예상치 못한 결과 없이 강제로 실행할 수 있습니까? 아니면 지원되지 않는 일부 기능(스크롤링 등)이 중단됩니까?
답변1
이는 GNU 화면에 대해 이전에 설치된 터미널 설명을 활용하기 위한 것입니다.
둘 다티먹스그리고화면애플리케이션에 "동일한" 터미널 설명을 제공하여 다른 터미널에서의 연결을 단순화합니다. tmux 및 screen 프로그램은 내부(TERM=screen)와 외부(xterm, linux 등) 간의 차이점을 처리해야 합니다. 따라서 screen
터미널 설명은 "어디서나"(보통 ncurses에 의해) 설치되었습니다.
몇 가지 차이점이 있습니다.
- GNU 화면에는아주 오래된 문제"뛰어난" 기능을 나타냅니다(기술적으로는 특정 터미널 기능이 아니라 저주 애플리케이션의 편의를 위한 추상화임). tmux에는 그러한 제한이 없습니다. 하지만 개선된용어=tmux반드시 "모든 곳"일 필요는 없습니다.
- GNU 화면에는 하이브리드 터미널 설명을 사용하는 기능이 있습니다. 외부 TERM=xterm이고 "screen.xterm"이 있으면 내부 TERM 값으로 이를 선택합니다. (예를 들어터미널 데이터베이스). tmux는 그렇게 하지 않습니다.