레거시 콘솔 모드

레거시 콘솔 모드는 Windows 10에서 이전 명령줄 도구의 사용자를 지원하도록 설계된 호환성 도구입니다. 기본 Windows 10 콘솔 환경에서 제대로 표시되지 않거나 작동하지 않는 명령줄 도구의 경우 이 모드는 시스템을 이전 버전의 콘솔 호스팅 환경으로 되돌리는 정교하지 않은 솔루션을 제공합니다.

레거시 콘솔 모드 사용

레거시 콘솔 모드를 사용하려면 먼저 콘솔 호스팅 창을 엽니다. 이 작업은 일반적으로 CMD 또는 PowerShell 명령 인터프리터 중 하나를 시작하여 수행됩니다.

마우스 오른쪽 단추로 애플리케이션 제목 표시줄을 클릭하고, Properties 메뉴 옵션을 선택합니다. 첫 번째 탭인 Options를 선택합니다. 그런 다음, Use legacy console을 설명하는 페이지의 아래쪽에 있는 상자를 선택합니다. OK 단추를 눌러 적용합니다.

동일한 속성 시트 메뉴로 돌아가서 해당 상자를 선택 취소한 다음, OK를 눌러 설정을 되돌릴 수 있습니다.

참고 항목

이 설정은 기본 설정이 변경된 후에 시작되는 모든 세션에 전역적으로 적용됩니다. 이미 열려 있는 세션은 변경되지 않습니다.

모드 간의 차이점

콘솔 호스트 팀은 최대한 많은 고객이 최신 버전을 실행할 수 있도록 콘솔의 레거시 모드와 현재 모드 간의 차이를 최소화하기 위해 노력하고 있습니다. 여기서 설명하지 않는 레거시 콘솔을 사용해야 하는 문제가 발생하는 경우 도움을 받으려면 microsoft/terminal GitHub 리포지토리 또는 피드백 허브를 통해 팀에 문의하세요.

32비트 Windows의 16비트 애플리케이션

32비트 Windows의 일부 16비트 애플리케이션은 NTVDM이라는 작업에 가상 머신 기술을 사용합니다. 이러한 애플리케이션은 콘솔 호스팅 환경에서 그래픽 화면 버퍼링 모드를 사용하여 작동하는 경우가 많습니다. 레거시 콘솔 환경만 이러한 그래픽 버퍼링 모드 및 이러한 애플리케이션을 작동하는 데 필요한 추가 콘솔 API 지원을 지원합니다. 이러한 애플리케이션 중 하나가 실행되면 시스템에서 레거시 콘솔 환경을 자동으로 선택합니다.

IME 포함

레거시 콘솔 호스트는 제안 화면의 아래쪽에 있는 줄을 예약하여 IME의 제안 부분을 호스팅 창 안에 포함했습니다. 대신 현재 콘솔 호스트 환경에서는 이 작업을 IME 하위 시스템에 위임하여 콘솔 호스트 위에 제안 사항과 함께 오버레이 창을 표시합니다. 특정 원격 도구와 같이 오버레이 창을 사용할 수 없는 환경에서는 레거시 콘솔 호스트가 필요할 수 있습니다.

API 차이점

레거시 및 현재 API 간에 알려진 가장 큰 차이점은 UTF-8의 구현입니다. 레거시 호스트는 매우 기초적인 65001 코드 페이지의 UTF-8을 사용하며 잘못 지원하는 경우가 많습니다. 현재 콘솔 호스트에는 이 지원을 향상시키기 위해 향상된 증분 방식의 Windows 10 릴리스 비교 기능이 포함되어 있습니다. 지원이 향상됨에 따라 레거시 콘솔에서 UTF-8에 대한 "알려진 잘못된" 해석을 예측하는 데 의존하려는 애플리케이션은 다른 답변을 받게 됩니다.

API와 관련된 다른 차이점은 심사 및 가능한 수정을 위해 microsoft/terminal GitHub 리포지토리 또는 피드백 허브를 통해 보고해야 한다는 것입니다.