Web系や機械学習を勉強中。医療におけるIT活用に興味があります。2019プログラミングWindows私はMacよりもWindowsが好きです。それ自体の好き嫌いというより、自作PCが趣味だという理由が大きいと思います。―それはいいとして、特にWeb開発においてはWindowsは明らかに少数派です。そのため、時折、環境依存の問題に遭遇することがあります。いえ、時折ではありません。Web開発のいわば”標準”であるUNIXをベースにしたMacのほうに分があるのは明らかでしょう。したがって、自分の環境の方をなんとかして標準に近づける必要があります。そこで、今回のRemote-WSLの出番です。Codeから利用可能にすることを目的にRemote-WSLについて解説します。Codeから利用できるようにすることを目標にします。Codeを起動しているのと同じようなことができるようになります。Linuxご存知の方が多いとは思いますが、まずWSLについて軽く説明します。(WSL)はMicrosoftによって提供されるツールで、簡単に言うとWindows上でLinuxを利用できるものです。Ubuntuなど様々なディストリビューションが利用できます。ファイルシステムなどで例外があるものの、通常の範囲ではネイティブLinuxとの違いを意識する必要はほとんどありません。Windows上でLinux環境を得ることは、開発にどのようなメリットをもたらすのでしょうか。大きなメリットは、標準的な開発環境を手に入れられることです。その最たる例はbashで、例えばWindowsのPowerShellやコマンドプロンプトでは当然bashコマンドは動きませんが、WSL上では動かすことできます。WSLを使えばbashを使えるのでこのような問題は生じません。WSLを用いるとWindwosでも標準的な開発環境を構築でき、環境由来のトラブルを大きく減らせるのです。WSLは通常、CUI環境で動くので、そこでグラフィカルなエディタやIDEを動かすことは現実的でありません。(一応できるようですが、かなり不安定のようです。Codeではこれを実現するための強力な拡張機能が提供されています。Developmentという機能が追加されました。Codeの1.35.0から正式に利用可能です。リモートの環境はWSLに限らず、SSHやContainers(Docker)を含みます。公式ドキュメント(英語)に分かりやすい図が載っていたので引用します。Codeが動いています。Codeは純粋にUIのみを担当します。Debuggerが該当します。WSLのファイルシステムにあるファイルも操作可能です。Code役割は極めて限定的で、多くの操作はWSL上で行われることが分かります。WSLの導入方法は公式ドキュメント(英語)でもよく解説されていますが、非常に簡単ですので、ここでも軽く説明しましょう。Code(Windows上)の導入は済んでいると仮定します。WSLをインストールする。