## 前提
- [[WSL2にてPATHからWindowsの設定を除外]]している
## [[lazy.nvim]]の設定
`init.lua`
```lua
{
"iamcco/markdown-preview.nvim",
lazy = false,
keys = {
{ '<M-p>', ':MarkdownPreviewToggle<CR>' }
},
build = function() vim.fn["mkdp#util#install"]() end,
}
```
## 実行コマンドのハック
`PATH`の通っている場所に`cmd.exe`ファイルを作成し、以下を記載。
```bash
<Windowsのgoogle chromeのパス> $4
```
```bash
# 具体例
/mnt/c/Program\ Files/Google/Chrome/Application/chrome.exe $4
```
`cmd.exe`には実行権限をつける。
これで[[Markdown Preview for (Neo)vim]]のコマンドを実行すると、[[Google Chrome]]が[[Markdown]]プレビューコンテンツを表示した状態で起動する。
> [!warning] この方法はいきなり動かなくなる可能性がある
> [[Markdown Preview for (Neo)vim]]は内部でplatformを判断し、起動に使うコマンドを変更している。[[WSL2]]の[[Ubuntu]]では[[Windows]]と判定されてしまうため `cmd.exe` が採用されるが、[[WSL2にてPATHからWindowsの設定を除外]]していると `cmd.exe` による起動はできない。(やったとしてもポート番号が面倒なことになったりする)
>
> そこで`PATH`の通る場所に`cmd.exe`という名前の[[Linux]]実行可能ファイルを用意し、内部的に[[Google Chrome]]の実行ファイルへディスパッチすることで、無理やり解決している。`$4`は4番目の引数に[[URL]]がわたってくるように #2023/10/06 時点のバージョンでは実装されているためである。