SSH를 사용하여 서버에 연결하는데 때로는 오른쪽에서 왼쪽으로 쓰는 언어(예: 아랍어)를 사용해야 할 때도 있습니다.
내가 사용할 때일부콘솔 소프트웨어(예: lxterminal
또는 xfce4-terminal
)는 훌륭하게 작동합니다. 다른 터미널에서는 텍스트가 거꾸로 표시됩니다. 게다가, 동작은 다른 컴퓨터에서도 일관되지 않습니다( xfce4-terminal
집과 사무실에서의 동작은 다릅니다).
더 나쁜 것은 터미널이 괜찮다는 것입니다. 로컬 파일이 올바르게 표시됩니다. 문제는 SSH를 통해 연결할 때만 발생합니다.
그렇다면 문제는 무엇입니까? 그거 어디서 났어? SSH인가요, 터미널인가요, 아니면 둘 다인가요?
답변1
더 나쁜 것은 터미널이 괜찮다는 것입니다.
나는 그렇게 생각한다. 생각보다 복잡한 이야기입니다. 터미널은 다르게 동작합니다. 한 터미널의 동작은 특정 애플리케이션 집합에 대해 오른쪽에서 왼쪽으로 친화적일 수 있는 반면, 다른 터미널의 동작은 다른 애플리케이션 집합에 대해 RTL 친화적일 수 있습니다.
로컬 파일이 올바르게 표시됩니다.
cat
다시 말하지만, 이는 "디스플레이"의 의미, 즉 해당 디스플레이를 사용하여 열었는지 , 아니면 다른 응용 프로그램을 사용했는지 등에 따라 크게 달라집니다. 일부 터미널은 예상한 결과와 예상치 못한 결과를 제공하는 반면 다른 터미널은 그 반대의 결과를 제공할 수도 있습니다.vim
emacs
less
cat
vim
당신은 관심이 있을 수도 있습니다이것약 50페이지 분량의 기술 문서에서는 상황을 조사하고 문제 해결 방법을 제안하여 단말기가 여러 모드를 지원할 수 있도록 하고 다양한 유형의 응용 프로그램의 겉보기에 모순되는 요구 사항을 지원합니다.
VTE 버전 0.58은 제안된 솔루션을 구현합니다. VTE는 Windows, Windows 및 기타 여러 터미널에서 사용되는 터미널 에뮬레이션 엔진 입니다 lxterminal
. xfce4-terminal
따라서 이러한 소프트웨어에서 "좋은" 동작 또는 "나쁜" 동작이 나타나는지 여부는 VTE 버전에 따라 달라질 수 있습니다. 그러나 테스트 중인 응용 프로그램 유형에 따라 이전 동작은 "좋은" 동작이고 새 동작은 "나쁜" 동작이라는 것을 알 수 있습니다. 이 경우 VTE >= 0.58이면 문서에 언급된 이스케이프 시퀀스를 사용하여 모드를 전환할 수 있습니다(예: printf "\e[8l"
이전 동작으로 되돌리기).
ssh
소프트웨어의 로컬 또는 원격 버전이 다를 수 있다는 점을 제외하면 중요하지 않습니다.