VSCodeで`Python Environment`拡張機能が出た

Pythonの環境はごちゃついたり他の環境を汚したりすることで有名ですが、 [VSCode v1.96 のリリースノート](https://code.visualstudio.com/updates/v1_96#_python-environments-extension "VSCode v1.96")を見ると、
> In this release **we are introducing the Python Environments extension**, now available in preview on the Marketplace.
>
>**This extension simplifies Python environment management**, offering a UI to create, delete, and manage environments, along with package management for installing and uninstalling packages.

> （和訳）
> このリリースから、マーケットプレースで**Python Environment拡張機能が利用可能になりました**。この拡張機能は、環境の作成・削除・管理のUIと、パッケージのインストールとアンインストールなどのパッケージ管理を提供し、**Pythonの環境管理をシンプルにします**。）

と書いてあるではありませんか！

さてさてどんなもんでしょうか？

# 概要（公式）

>Designed to integrate seamlessly with your preferred environment managers via various APIs, it supports Global Python interpreters, venv, and Conda by default.
>Developers can build extensions to add support for their favorite Python environment managers and integrate with our extension UI, enhancing functionality and user experience.

> （意訳）
> 種々のAPIを通してお好みの環境マネージャ（デフォルトでグローバルPythonインタプリタ、venv、Condaをサポート）とスムーズに統合できるよう設計されています。
> 開発者は、他の環境マネージャをサポートする拡張機能を開発できます。

最初からvenvとCondaをサポートしてるのは良いですね。[ここ](https://github.com/microsoft/vscode-python-environments/issues/79)を見ると、そのうち流行りかけのpoetryとかもサポートしてくれるかもしれません。
グローバルPythonインタプリタでも環境構築をサポートしてくれるというのは気になりますね。仮想環境にはしてくれるのでしょうか？

でも、Python仮想環境の大問題「venv？Conda？〇〇？色々ありすぎてわかんないよ！！」は結局解決しなさそうですね。

# 準備

## インストール
https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs

↑からインストールしてください。
VSCode内で`ms-python.vscode-python-envs`と検索しても出ます。

![拡張機能の画像](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/683a494f-632b-4325-f27f-6ee4255d7486.png)
（まだ2インストール！世界で2人目！？っていう自慢）

この拡張機能はプレスリリースバージョンしかないのですが、**Python拡張機能もプレスリリースバージョンにする必要がある**ようです（どこにも書いてないような気がしますが、エラーメッセージで気が付きました…）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/a89ad9f6-3598-b5ef-1564-d0ec2290f301.png)
Python拡張機能のページを開いて、右下の「プレスリリースバージョンへの切り替え」ボタンを押します。

準備できると、こんな感じで、左のところにPythonのパネルが登場すると思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/f2d8f3fc-aa98-648f-ec5b-692feea4b7c3.png)

## 設定
`settings.json`は、今のところこんな感じです。`python-envs`で検索すると良いでしょう。
![settings.json](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/74bf2712-b984-8ff6-4427-f5c23072b75f.png)
設定はGUI派という方のために
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/a6e5484a-aeab-cce6-4e22-208c2bd3a599.png)

- `defaultEnvManager`
  - Condaとかvenvとか、どの環境マネージャをデフォルトで使うかです。[この](https://github.com/microsoft/vscode-python-environments?tab=readme-ov-file#environment-management)うちどれかを指定します。デフォルトはvenvです。
- `defaultPackageManager`
  - pipとかcondaとか、どのパッケージマネージャをデフォルトで使うかです。[この](https://github.com/microsoft/vscode-python-environments?tab=readme-ov-file#package-management)うちどれかを指定します。デフォルトはpipです。
- `pythonProjects`
  - 後述
- `showActivateButton`
  - 後述のアクティベートボタンを表示するかどうか。

# 環境構築
venvを使う想定です。（Condaじゃ動かないんだけどなんでだ…？）

## 環境作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/cc44ebf5-6ebd-0f05-29c2-3096b93e62b9.png)

このボタンを押して、インタープリターを選択、名前を入力すると、自動的に仮想環境が生成されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/f4233ddf-15e9-c645-8a36-c19965d2e400.png)

## パッケージ管理
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/6bfa5ae3-f9ef-f766-5e0e-22c55aed6a50.png)
これを押すと、numpyのインストールとかができます。

インストールされると、リストが更新されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/6c57d66c-1ea2-78d9-d282-21dd3926d1a3.png)


## アクティベート
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1817119/3fa9416a-e5a1-527c-8817-8ca36c96c952.png)
細かい管理は今のところ結局コマンドラインが要りそうです。
例えば、一部のパッケージはGUIではインストールできません。
バージョン指定もできるようには見えません。

これらがやりたいときは、ターミナルにアクティベートボタンがあるので使いましょう。

## 実行
いつものようにF5を押して実行しようとしたが、起動しない…？
解決できればここに書きます。

# 感想

アクティベートボタンとか、環境にインストールされているパッケージ一覧が見えるのは良いね。
ドキュメントが充実してないし、エラーが多そうなところはちょっと不満。今後に期待。