AI Briefing

Turbo Vision 2.0 - 현대적 포트

·2026.04.27 04:47

Turbo Vision 2.0이 UTF-8·Unicode·24비트 색상 지원을 대폭 보강했다.

Turbo Vision 2.0은 Linux와 Windows에서 다시 쓸 수 있도록 고전 텍스트 UI 프레임워크를 현대화한 포트로, UTF-8, Unicode 입력/표시, 24비트 색상을 핵심으로 삼는다.

기존 Turbo Vision 앱과의 소스 코드 수준 호환성을 최대한 유지하면서도, 라이브러리 내부에서 터미널 차이를 흡수해 char 기반 API를 계속 사용할 수 있게 했다.

주요 변경점은 다음과 같다.

  • 이중 폭 문자, 결합 문자, 멀티바이트 단축키 처리
  • 메뉴, 대화상자, 입력창, 스크롤바 등 기본 위젯 제공
  • 이벤트 루프, 타이머, 클립보드, 마우스 휠, 리사이즈 지원
  • TEditor의 UTF-8 모드, 64 KiB 초과 파일, LF 줄바꿈 처리
  • Unix는 ncurses, Windows는 Win32 Console API 기반으로 동작
  • 시스템 클립보드, OSC 52, far2l, kitty keyboard protocol 등과 연동

API도 함께 확장됐다. TStringView, TSpan, TClipboard, TDrawSurface 같은 타입이 추가됐고, TEventQueue::wakeUp(), setTimer(), TView::getEvent(..., timeoutMs)처럼 비동기 입력과 타이머를 다루는 함수도 들어갔다.

화면 그리기 쪽에서는 TDrawBuffer::moveStr()가 Unicode 규칙으로 문자열을 처리하고, 기존의 임시 버퍼 복사 방식은 줄여 멀티바이트 경계 문제와 버퍼 오버런 위험을 낮췄다.

이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.

요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.