Windows 開発環境
Windows で UNIX っぽいコマンドライン操作を行うには、いくつかの選択肢がある。
- WSL (Windows Subsystem for Linux)
- Windows で Linux ディストリビューションを実行する環境を提供する機能。
- WSL2 からは、カーネルも Linux になっている。
- Microsoft としては WSL を推奨している。
- 便利だが、ディスクスペースを食いつぶす問題がある。
- PowerShell
- Microsoft 製 CUI。UNIX とは異なる体系。
- コマンドレットエイリアスのおかげで多少の互換はある。
- いずれにしても最初はアプリケーションのインストールのために PowerShell での作業になる。 (GUI でもいける。)
- Git Bash
- 後述する Git for Windows をインストールするとついてくる UNIX ライクな環境。
- パッケージ管理とかビルドユーティリティとかはついてない最低限の構成。
- MSYS2 + MinGW
-
MSYS2 は Windows における POSIX 準拠を目指した開発環境。 パッケージ管理ツールとして Arch Linux で使われる
pacmanをフォークしている。 - MinGW は Windows 用の C/C++ ビルドツールチェイン。
- R 用のビルドツールチェイン Rtools もこれがベース。
他の UNIX 系 OS との互換性をできる限り保つなら WSL、 Windows (C ドライブ) 内の作業で完結させつつもビルド環境が必要なら MSYS2 + MinGW、 それ以外の用途なら PowerShell か Git Bash がいいのでは。
デスクトップを OneDrive 下に置く設定は無効にして C:/Users/<username>/ で作業する方が安全。
パッケージ管理
Windows におけるパッケージ・アプリケーション管理は、 Microsoft 公式の WinGet を使うのが主流。 その他の選択肢として、古株で対応するパッケージも多い Chocolatey や、ユーザー権限で使いやすい Scoop もある。
WinGet
https://learn.microsoft.com/ja-jp/windows/package-manager/winget/
新しめの Windows ならデフォルトで使えるはず。 後述のツールはどれも WinGet で入れることができる。
winget install/uninstall- パッケージのインストール/アンインストール
winget search- パッケージの検索
-
例:
winget search rstat winget upgrade- パッケージのアップグレード
winget list- インストール済みパッケージの表示
Git
- https://gitforwindows.org/
- https://github.com/git-for-windows
- https://git-scm.com/book/en/v2/Appendix-A%3A-Git-in-Other-Environments-Git-in-PowerShell
Installation
ダウンロードページ からインストーラを落としてくる。 基本的にはデフォルト設定で、コミット時のエディタと git pull の挙動は適当なものを選ぶ。
もしくは winget を使う:
winget install --id Git.Git -e --source wingetGit Bash
Git for Windows に同梱されている Bash エミュレーション。 Bash と基本的なコマンドが提供されている。 MSYS ベース。 パッケージ管理ツール (pacman) やビルドツールチェイン (gcc など) は付いていない。
Git Bash アプリからターミナルを開くか、 Windows Terminal のプロンプトの1つとして登録する。 起動オプションで明示的にログインシェルとして立ち上げる --login 必要がある?
ちょっとした注意点で、Git Bash 起動中は winget upgrade による Git の更新はできない。
R
VSCode で使うには PATH を教えてあげる必要がある:
settings.json
{
"r.rpath.windows": "C:\\Program Files\\R\\R-4.4.0\\bin\\x64\\R.exe",
"r.rterm.windows": "C:\\Program Files\\R\\R-4.4.0\\bin\\x64\\Rterm.exe",
}Python
統合開発環境
好きなやつを入れる:
Quarto
https://quarto.org/docs/get-started/
Windows 用のやつを入れてあげる。 (RStudio に付属している Quarto は path/to/RStudio/resources/app/bin/quarto/bin に実行ファイルがいる。ここに PATH を通して使うという手もある…?)
PDF のレンダリング用に tex を入れてやる (c.f. ~/AppData/Roaming/TinyTeX/):
quarto install tinytexPDF で日本語フォントを使うには
Quarto PDF で日本語フォントを使う場合、 デフォルトでは原ノ味フォントが使われるらしい。 Ubuntu とかは最初のインストールでプリセットされていたはずだが、 Windows の Quarto では原ノ味含め、日本語フォントがプリセットされていないっぽい。
そこで、tlmgr を使ってフォントをインストールしてやることで使えるようになる:
> .\AppData\Roaming\TinyTeX\bin\windows\tlmgr.bat install haranoaji
Locale 'Japanese_Japan.932' is unsupported, and may crash the interpreter.
tlmgr.pl: package repository https://ftp.kddilabs.jp/CTAN/systems/texlive/tlnet/ (verified)
[1/1, ??:??/??:??] install: haranoaji [25570k]
Locale 'Japanese_Japan.932' is unsupported, and may crash the interpreter.
running mktexlsr ...
done running mktexlsr.
tlmgr.pl: package log updated: C:/Users/<user>/AppData/Roaming/TinyTeX/texmf-var/web2c/tlmgr.log
tlmgr.pl: command log updated: C:/Users/<user>/AppData/Roaming/TinyTeX/texmf-var/web2c/tlmgr-commands.log