2015-01-11 3 views
0

현재 문자 단말기를 제공하는 서버 프로그램을 작성 중입니다. 타겟 클라이언트는 xterm입니다. 이전 TUI 모드 프로그램의 창 프레임과 비슷한 사각형 섹션 주위에 "선 그리기"를 시도하고 있습니다. 물론 선 그리기 문자를 정의하는 ASCII 문자 127 개가 있지만 텔넷 연결을 통해서만 7 비트 만 관련되고 모든 문자> 127이 클라이언트 화면의 기본 블록이됩니다. G0, G1 등 다른 그래픽 세트를 설정하는 VT100 제어 시퀀스와 ESC를 통해 활성화하는 방법 x 및 ESC (x 및 단일 문자 코드 SI 및 SO) 문제는 원하는 효과를 갖고있는 것 같다.터미널에 문자 그리기 문자 작성 방법

내 최고의 성공,

ESC를 보내 지금까지했다 ')', '0', 내가 나중에 데이터를 보낼 때, 나는 아직도 일반 문자를 얻을 SO

. 그러나 일단 연결을 종료하고 xterm 프로그램 (나는 MobaXTerm을 사용합니다)이 메시지를 다시 연결하면 그 메시지가 선택된 그래픽 문자 세트에 나타납니다.

터미널을 그래픽 모드로 전환 한 다음 각각의 그래픽 문자를 그릴 수있는 가장 좋은 방법은 무엇입니까?

답변

0

아마도 그렇게 할 수 없습니다. MobyXterm은 UTF-8 인코딩을 할 때 VT100 라인 드로잉을 지원하지 않기로 결정한 PuTTY를 기반으로합니다. ncurses 라이브러리는 환경 변수 NCURSES_NO_UTF8_ACS이 설정되었을 때이 중단에 대한 해결책을 가지고 있습니다. 그러나 이것은 당신이하는 이스케이프 시퀀스를 직접 작성하는 데 도움이되지 않습니다.

+0

고마워, 그건 내 문제를 설명 할 것이다. –

+0

Ncurses 라이브러리는 로컬 콘솔 창으로 직접 출력 만 처리합니다. 또는 내 응용 프로그램이 들어오는 TCP/IP 연결을 수락 한 다음 NCurses를 사용할 때 여러 클라이언트에 서비스를 제공 할 수 있습니까? –

+0

ncurses는 터미널에 대한 연결처럼 작동하는 입력 및 출력 스트림이 있음을 알고 있습니다. 그래서 그것보다 더 일반적입니다. –