Windows Terminalをビルドしてインストールする
絵文字に対応したssh
クライアントソフトを探していたら、
Windows Terminal
なるソフトを見つけました。
冬には配信されるとのことだったけど、github
の方見たらビルドしてインストールはできるみたいなので、やってみました。
自分の環境ではこうだったよ、的な記事なので実際やるときは公式の方見ながら、自己責任でお願いします。
用意するもの
自分はVisual Studio 2017
でやったので、github
を参考に以下を用意しました。
Guide for build and installation · Issue #489 · microsoft/terminal · GitHub
- Visual Studio 2017
- Windows 10 SDK (10.0.18362)
- Git for Windows
- Nuget.exe
- Windows 10 Version 1903
Git for Windows
はgit
コマンドが使えるツールならなんでもいいです。
Windows 10 SDK (10.0.18362)
は以下から
Windows 10 SDK – Windows アプリ開発
Nuget.exe
は以下から「nuget.exe」を
NuGet クライアント ツールのインストール | Microsoft Docs
Windows 10 Version 1903
は以下から「Windows 10 May 2019 Update」を
Windows 10 のダウンロード
Visual Studio側の準備
必要なものをVisual Studio Installer
から入れていきます。
「C++によるデスクトップ開発」
「ユニバーサルWindowsプラットフォーム開発」
にチェック。
さらに、「インストールの詳細」->「ユニバーサルWindowsプラットフォーム開発」から 「C++ユニバーサルWindowsプラットフォーム開発」が未チェックならチェックする。
他に足りないものがあれば、あとでプロジェクトを開いた際に
こんな感じに足りないよ!って言われるので、適宜入れてあげてください。
プロジェクトの準備
以下のプロジェクトをclone
します。
GitHub - microsoft/terminal: The new Windows Terminal, and the original Windows console host -- all in the same place!
適当にディレクトリを作成して、そこで
git clone https://github.com/microsoft/terminal.git
します。
cd terminal
して移動。
git submodule update --init --recursive
をします。
さらにNuget.exe
を使って、nuget.exe restore OpenConsole.sln
を打ってください。
プロジェクトを開いて、64bit
マシンならx64
に合わせて、Release
でビルド。
おそらくたくさんエラーが出るので、それを修正していきます。
ちなみに以下に載せる修正の方法とかは、「準備するもの」に載せたIssues
のBuild Steps
に丸々載っているので、英語とか得意ならそっちを直接見た方が早いです。
VtPipeTerm
のmain.cpp
の修正。
TEST_LANG
のCYRILLIC
,CHINESE
,JAPANESE
,KOREAN
の前にu8
プレフィックスを追記。
C2220
エラーが出ているファイルは、適当なエディタで開いて、
UTF-8
のBOM
付きで保存してください。
Windows 10側の準備
以下をやっていきます。
- Windows 10 1903へのアップデート
- 開発者向け機能の設定
Windows 10 1903
へのアップデートは画面に従って進めていけばオッケーです。
外付けのUSB
とかくっつけてるとやり直しになっちゃうので、外しておきます。
それが終わったら「設定」->「更新とセキュリティ」->「開発者向け」から「開発者モード」を選択。
Windows Terminalのインストール
プロジェクトをVisual Studio
で「ソリューションのビルド」。
ビルドが無事終わったら、Terminal
->CascadiaPackage
を右クリックして「配置」を選択。
もしDEP3321
が出ているなら、
プロジェクトを一個一個右クリックして「プロパティ」から「ターゲットバージョン」「最小バージョン」を最新化してあげます。
これでインストール完了です。
絵文字もばっちりです。やったぜ!