터미널이 어떻게 작동하는지 알고 싶습니다. 저는 Netbeans 터미널 플러그인 구현 작업을 진행 중입니다. 나는 이것이 이상적인 후보자가 아닐 수도 있다는 것을 알고 있지만 내 CPP 기술은 매우 제한적입니다. 그래서 제가 아는 것부터 시작해야겠다고 생각했어요.
Netbeans 터미널은 문자가 한 블록 너비이거나 적어도 문자 너비가 블록 너비의 배수라고 가정하는 것 같습니다. (여기서 블록은 너비와 높이가 고정된 직사각형입니다.) 내가 완전히 틀리지 않았다면 Gnome Terminal과 Konsole은 비슷하게 작동합니다. 말할 필요도 없이 이것은 특정 글꼴, 특히 제가 관심을 갖는 인도 글꼴과 관련이 있습니다. Netbeans가 이런 방식으로 구현되는 이유는 구현마다 다를 수 있지만 제가 실제로 우려하는 점은 터미널이 일반적으로 이런 방식으로 구현되는 이유입니다.
어디서부터 시작해야 할지 모르기 때문에 귀하가 제안하는 독서 자료가 제게 큰 도움이 될 것입니다. 나는 TTY를 통해 이해하기 쉽게 읽었지만 문자 렌더링 세부 사항은 다루지 않았습니다.
답변1
Netbeans 터미널 플러그인은아니요터미널이다 터미널이다에뮬레이터, 터미널이 작동하고 보이는 방식을 시뮬레이션합니다. 터미널은 그래픽이 아닌 문자 기반이므로 렌더링된 글꼴 대신 고정 너비 문자를 사용합니다. 일부 터미널 에뮬레이터에서는 가변 너비 글꼴을 사용할 수 있지만 일반적으로 시스템에 실제로 있는 선택된 글꼴 세트만 사용할 수 있습니다. 이는 인도 글꼴의 경우 문제일 수 있습니다. 일부 에뮬레이터에서는 이를 허용할 수도 있지만 어떤 글꼴이 있는지는 모르겠습니다(있는 경우). 터미널 에뮬레이터는 요즘 컴퓨터 제어 및 프로그래밍 작업에 일반적으로 사용되며 어쨌든 고정 너비가 가장 잘 작동하므로 변경하려는 동기가 거의 없습니다.
대부분의 텍스트 편집기에서도 고정폭 글꼴을 사용한다는 사실을 눈치채셨을 것입니다. 예, 일반적으로 가변 간격 글꼴을 사용하도록 구성할 수 있지만 기본 글꼴은 사용할 수 없습니다. 워드 프로세서 OTOH는 일반적으로 사용자가 인쇄하려는 글꼴이기 때문에 기본적으로 렌더링된 글꼴을 사용합니다. 운영 체제의 GUI도 사람들이 읽기 쉽기 때문에 좋은 GUI를 사용합니다. 귀하의 브라우저에서도 렌더링된 글꼴이 표시될 수 있습니다. 그러나 표시가 있는 모든 항목은 code
여전히 고정 폭 글꼴로 변경됩니다.
명확하게 배열된 고정 너비 문자를 볼 때 프로그래밍이 훨씬 쉬워지고 사람들은 이에 익숙해지기 때문에 일반적으로 코딩하는 환경에서도 기본적으로 고정 너비 글꼴이 사용됩니다. 예를 들어, 브라우저에 개발자 유형 확장이 있는 경우 모든 것이 고정 폭 글꼴로 표시될 수 있습니다. 이 페이지를 마우스 오른쪽 버튼으로 클릭하고 "소스 보기"를 선택하면 브라우저에서 고정 폭 글꼴의 소스 코드가 있는 페이지/창/탭이 열립니다.
추가 참고 사항으로 오늘날에도 대부분의 실제 터미널은 여전히 단일 글꼴(물론 고정 간격)만 표시할 수 있으며 크기 조정조차 할 수 없는 경우가 많습니다.