Child pages
  • Windows Terminal Preview 릴리스


개요

Windows 에 내장된 Terminal 은 30년동안 변함없이 구리고 불편하기로 유명했습니다.

기능도 형편없고 속도는 느리고 ANSI Code 도 제대로 지원하지 않아서 ssh 로 원격 호스트에 연결하고 vim 이라도 띄우면 터미널이 엉망이 되고는 했습니다.


그래서 저는 cmder 같은 별도의 Windows 용 console emulator 를 사용하고는 했습니다.


이런 문제를 해결하기 위해 Microsoft 에서는 기존 cmd.exe 를 개선하는 대신 새로운 아키텍처로 별도 개발하는 Windows Terminal 프로젝트를 발표했고 github 를 통해서 개발이 진행중입니다.

(유튜브에 스타일리쉬한 프로젝트 소개 영상도 올라와 있습니다.)


2019-06-23일에 Stargazer 가 46,000 여개일 정도로 많은 관심을 받는 프로젝트가 되었습니다.


Terminal 프로젝트는 소스만 공개하고 사용하고 싶으면 Visual Studio 와 Windows SDK 를 설치하고 빌드해서 사용해야 하는 번거로움이 있었는데 2019-06-21 에 드디어 preview 버전이 windows store 에 올라왔습니다.


WSL 2 에 이어서 굉장히 기대되는 Microsoft 의 오픈소스 프로젝트인데 설치해 보니 preview 라 그런지 불안정한 모습이 눈이 띄였고 설정을 직접 json 을 수정해야 하는등의 불편함이 있지만 기대 이상의 제품이라는 생각이 듭니다.


많은 관심을 받고 빠르게 개발되고 있는 프로젝트이니 많은 개선점을 안고 정식 릴리스가 발표되리라 기대하고 있습니다.


설정

우측 상단의 + 버튼을 누르고 메뉴에서 Settings  를 선택하면 설정을 변경할 수 있습니다. 아직은 GUI 방식의 메뉴 편집은 지원하지 않으며 직접 설정 파일인 profiles.json 을 수정해야 합니다.

profiles.json 는 C:\Users\LOGINID\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\RoamingState  아래에 위치하고 있습니다.


개별 터미널은 profiles 에 설정된 터미널의 profiles  항목내의 Object 에 지정되어 있으며 name 항목이 메뉴에 표시되는 이름입니다. 예로  위에서 Ubuntu 터미널 설정은 "name" : "Ubuntu" 항목을 찾으면 됩니다.

theme

Windows terminal 은 몇 개의 테마를 내장하고 있으며 제가 좋아하는 Solarized 도 기본 포함되어 있습니다. 저는 Dark 테마를 즐겨 쓰므로 아래와 같이 colorScheme 항목에 ""Solarized Dark"로 지정해 주었고

폰트는 "fontFace" : "Source Code Pro" 로 크기는 "fontSize" : 14로 설정해서 사용합니다.

"profiles": 
[
        {
            "acrylicOpacity" : 0.5,
            "closeOnExit" : true,
            "colorScheme" : "Solarized Dark",
            "commandline" : "wsl.exe -d Ubuntu",
            "cursorColor" : "#FFFFFF",
            "cursorShape" : "bar",
            "fontFace" : "Source Code Pro",
            "fontSize" : 14,
            "guid" : "{2c4de342-38b7-51cf-b940-2309a097f518}",
            "historySize" : 9001,
            "icon" : "ms-appx:///ProfileIcons/{9acb9455-ca41-5af7-950f-6bca1bc9722f}.png",
            "name" : "Ubuntu",
            "padding" : "0, 0, 0, 0",
            "snapOnInput" : true,
            "useAcrylic" : false
        },



Terminal

기본적으로 리눅스의 TERM env 는 linux 인데 Windows Terminal 에서는 vim 에서 space 문자가 깨지는 현상이 있습니다. 아래와 같이 TERM 환경 변수를 xterm-256color 로 설정하면 대부분의 터미널 프로그램에서 잘 동작합니다. 

$ export TERM=xterm-256color


단축키

Windows Terminal 은 사전에 여러 단축키가 지정되어 있고 profiles.json 을 수정해서 customizing 할 수 있습니다. 새 탭을 열거나 탭을 닫는 등의 기능은 기본 윈도우 기능인 Alt-Tab, Ctrl-W 이며

사전 정의된 터미널 세션을 띄우는 Ctrl-Shift-숫자  단축키도 있습니다.


예로 아래처럼 Powershell, CMD, Ubunt 가 정의되어 있다면 Ctrl-Shift-1 은 파워쉘을, Ctrl-Shift-3 은 Ubuntu 를 띄우는 단축키가 됩니다.



참고