hexium310’s memo

自分用にメモとして書き留めます

Windows セットアップ備忘録

Lenovo IdeaPad Flex 550 を頂いたので Windows 11 環境を整えるためにしたことをまとめる。

デバイス名

Passiflora(トケイソウ、パッションフラワー)にした。デバイス名は植物から取ることにしているので、型番から 550 に関連する植物を調べたら 550 種あるらしいトケイソウがヒットした。時計につけたくなる名前をパソコンにつけるのはどうかと思ったが、他に探すのも大変そうなのでこれを使うことにした。

en.wikipedia.org

レジストリー

コンテキストメニュー

Windows 11 ではエクスプローラーのコンテキストメニューが見づらくなっていたので昔と同じものに戻す。Shift + 右クリックでも昔のものを表示できるが、毎回そんな事やっていられないのでレジストリーをいじる。

reg.exe add HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32 /f /ve

便利ツール

PowerToys

github.com

PowerToys Run

Mac の Spotlight と違ってアプリケーションを勝手に探してくれない。スタートメニューにあるものは見てくれるようなので、PowerToys Run から起動したいアプリケーションはショートカットを"C:\ProgramData\Microsoft\Windows\Start Menu\Programs"に作る。

FancyZones

Windows 11 にもともとあるウィンドウのスナップはありえん使いにくいので無効化して、代わりにFancyZonesを使う。FancyZones の設定のWindows スナップのオーバーライドをオンにすると Windows + ↑/↓/←/→ でウィンドウを動かせるようになって快適になる。

Keyboard Manager

再マップしてあるキーのリスト

VK 244半角/全角で、このキーを無効化している。IME のオンオフ切り替えはは Google 日本語入力の設定で変換無変換IME を有効化IME の無効化に割り当てている。

¥はキーボード右下ののキーで、Shift なしでアンダーバーが入力されるように設定している。Mac では Shift なしでアンダーバーを入力できて便利だったため、Windows でも同様の挙動をするようにした。再マップで左 Shiftを使った設定にしていると、左 Shift を押しながらアンダーバーを入力したあと、Shift を押したまま英字を入力すると小文字になってしまう。これを避けるために右 Shiftを使うように設定してある(打ち初めから終わりまで左 Shift を押しながらABC_DEFと入力したとき、ABC_defとなってしまう)。

Greenshot

スクリーンショットに使うアプリケーションはもとから入っている Snipping Tool でも良かったが、選択範囲の撮影とウィンドウの撮影を切り替えるときにマウス操作が必要なのが面倒だった。指定したモードで起動できるならそれぞれショートカットを割り当てようと思ったが、それはできなそうなので別のアプリケーションを使うことにした。

Snipping Tool のクリップボードにコピーしつつファイルにも保存できるのが体験良かったため、同じことができる Greenshot を使う。

github.com

選択範囲の撮影とウィンドウの撮影にそれぞれショートカットを割り当てている。デスクトップ全体のスクリーンショットは Windows 本来の Windows + PrtScr で十分なので Greenshot は使わない。

Greenshot のショートカットの設定

AltSnap

後述の端末のタイトルバーを非表示にしていてウィンドウの移動ができないので、タイトルバー以外でも掴んで移動ができるようになる AltSnap を入れる。

github.com

開発環境

基本的には WSL を使い、Windows 環境では開発しない。

環境変数

WSL の中からも使いそうな環境変数をWSLENVに入れて見えるようにしておく。

setx.exe WSLENV APPDATA/up:USERPROFILE/up

WSL

$USERPROFILE/.wslconfigを作成編集する。

[wsl2]
memory=4GB
swap=8GB

[experimental]
autoMemoryReclaim=gradual
sparseVhd=true%

ディストリビューション

Arch Linux を使う。

systemd

/etc/wsl.confで systemd を有効にする。

[boot]
systemd=true

有効にはなるが、サービスの開始にしばらく時間がかかる。acpidsystemd-networkd-wait-onlineが原因みたいだったので無効化したら正常に動くようになった。

sudo systemctl disable systemd-networkd-wait-online.service

github.com github.com

端末

Alacritty を使う。WezTerm とどっちにするか迷ったが、WezTerm は Alacritty に比べてメモリー使用量が多かったのと、アンダーカールが正しく表示されなかったため Alacritty にした。とはいえ、WezTerm が Lua で設定をかけるのは魅力的なので今後の更新次第で乗り換える可能性はある。

設定でタイトルバーを非表示にしてみたが、端末が広く見えて気持ちいいし、スクリーンショットを撮るときも余計な情報が入りこまないのでなかなか良かった。

github.com

端末起動時に WSL を起動して tmux にアタッチする。デタッチや終了したときに端末が終了しないように Zsh が起動するようにもしておく。

[shell]
program = 'C:\Windows\system32\wsl.exe'
args = [
    '--cd',
    '~',
    '--distribution',
    'arch',
    '--exec',
    '/bin/zsh',
    '-c',
    '"tmux new -A && exec zsh -i"',
]

アンダーカール対応

アンダーカール表示のために下記リンクからconpty.dllOpenConsole.exeをダウンロードし、Alacritty の実行ファイルがある場所に突っ込む。

github.com

Windows Terminal を自分でビルドして該当ファイルを持ってきてもいいと思うが、Visual Studio と関連コンポーネントのインストールに時間がかかるし、吐かれたエラーの解決が面倒だったので諦めた。
README に書いてあるとおり、そのうち不要になるかもしれない。

これで tmux の外ではアンダーカールが表示されるようになったが、tmux 上では表示されないため tmux の設定もいじる。

set -g default-terminal 'tmux-256color'
set -ga terminal-overrides ",xterm-256color:RGB"
set -ga terminal-features ",*:usstyle"
# Enables underline color
set -ga terminal-overrides ',*:Setulc=\E[58::2::::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m'

ゲーム

グラブル

SRWare Iron 105 を入れる。

download1.srware.net

ブラウザーの横幅制限を解除するために、chrome.dll0138193Cから01381942BA 40 01 00 00に変える。

次のフラグを変える

  • Enable にする
    • chrome://flags/#ignore-gpu-blocklist
    • chrome://flags/#overlay-scrollbars
    • chrome://flags/#enable-quic
    • chrome://flags/#enable-gpu-rasterization
    • chrome://flags/#enable-experimental-web-platform-features
    • chrome://flags/#enable-zero-copy
    • chrome://flags/#enable-parallel-downloading
  • Disable にする
    • chrome://flags/#tab-groups-save
    • chrome://flags/#tab-hover-card-images
    • chrome://flags/#calculate-native-win-occlusion