WSL2版Neovimで開いたYaziの右側プレビューから、文字が左側のファイル一覧へはみ出しました。ターミナルからYaziを単体で開くと正常です。折り返し設定を入れ、フロートの大きさも直しましたが、Neovim内では崩れたままでした。
そこでNeovim内のYazi連携を止め、ファイル探索をSnacks Explorerへ切り替えました。ファイルの作成や移動は、それまで通りOilを使います。この時期に試したYaziの表示倍率、LazyGitと検索Pickerの表示サイズも、何を変えて何が直らなかったか分かるように残します。
Yaziは90%から98%へ。100%では枠が収まらなかった
YaziをNeovimのフロートで開くyazi.nvimには、表示サイズを決めるfloating_window_scaling_factorがあります。公式READMEでは既定値が0.9、1が100%と説明されています。最初は1.0にしましたが、Neovimの画面と同じ大きさのフロートに丸い外枠まで付くと、枠が画面外へ出ます。9月30日に、lua/plugins/yazi.luaの値を次のように変えました。
floating_window_scaling_factor = 0.98,
この時点では、ディレクトリを開く役目をOil.nvimに残すため、open_for_directories = falseも維持しました。後でYazi連携そのものを無効にしたので、現在この倍率は使われていません。
Yaziのプレビューは折り返し設定後も崩れる
Yaziの右側プレビューで長い行が切れていたため、WSL2側の~/.config/yazi/yazi.tomlに次を追加しました。Yaziの公式資料では、wrap = "yes"はコードプレビューの長い行を折り返す設定です。
[preview]
wrap = "yes"
ところが、9月30日にWSL2版Neovim内で同じ画面を見直すと、プレビューの文字が左側のファイル一覧へはみ出していました。Neovimを通さずYaziを開いた時は正常です。Neovimの:terminal yaziでも、個人設定を読み込まないnvim --cleanから開いても崩れました。Yaziの個人設定も外して試すと、一時的に表示が揃った後、上下移動でまた崩れました。フロートを98%に収めてNeovimを再起動しても症状は残りました。どの描画処理が原因かは特定できていません。
Neovim内のYaziを止め、右側のExplorerで探す
Yaziでは、知らないディレクトリを階層とプレビューから探していました。ファイルを作る・名前を直す・移動する操作は、もともとOil.nvimを使っています。そこでNeovim内のyazi.nvimを無効にし、探索の入口をSnacks Explorerへ替えました。ファイル名が分かる時の<Space>ff、本文から探す時の<Space>sgもそのままです。
Explorerは<Space>eで開き、hとlで階層をたどれます。初期表示はサイドバーで、Pを押すとプレビューを切り替えられます。ファイルを開いた後、右側のExplorerへ戻るには、ノーマルモードでCtrl+w、続けてlを押します。左側のファイルへ戻るならCtrl+w、続けてhです。私は一覧を右側に置きたいので、lua/plugins/ui.luaのSnacks設定に次の要点を加えました。ディレクトリを直接開いた時は引き続きOilを使うため、Snacks側のnetrw置換も無効にしています。
explorer = { replace_netrw = false },
picker = {
sources = {
explorer = {
layout = { layout = { position = "right" } },
},
},
}
両方のNeovim設定でyazi.nvimを無効にし、<Space>fyの割り当ても外しました。Yazi本体は削除していません。WSL2側では、Neovimを再起動してExplorerが右側に開くこと、-でOilが開くこと、Explorerからファイルを開いた後にCtrl+w、lで戻れることを確認しました。
WSL2とWindowsで切り替えた
設定ファイルはWSL2側の~/.config/nvimとWindows側の%LOCALAPPDATA%\nvimに分かれています。最初は両方でYaziのフロートを100%にし、その後WSL2側だけ98%へ直しました。今回、両方の設定でYazi連携を止め、Explorerを右側へ配置しました。Windows版Neovimの実画面はまだ確認していません。
掲載画像は、変更前後の比較ではない
9月28日のYazi画像は折り返し設定を追加する前、9月30日の画像は追加後のものです。後者でも文字は左側へはみ出しています。98%へ直した後やExplorerへ切り替えた後の実画面は、まだ撮っていません。LazyGitも撮影時の画面が1枚だけで、98%にする前との比較には使えません。Pickerの変更前後を比較できる画像もありません。

wrap = "yes"を追加しましたが、9月30日の再確認でも表示の崩れは残っていました。

今のところ、WSL2版Neovimでは右側のExplorerへ戻る操作まで確認できています。Yaziが崩れる描画処理は特定できておらず、Explorerへ替えた後の作業効率もまだ判断していません。
同じ時期に調整したLazyGitとPickerの表示
Yaziの文字崩れとは別に、LazyGitで差分を読む時の余白と、検索Pickerでプレビューが占める幅も調整しました。以下の設定はYaziの表示崩れへの対処ではありません。
LazyGitは幅も高さも98%にする
LazyGitはsnacks.nvimから開いています。Snacks.nvimではlazygit.winにウィンドウ設定を渡せます。既定のフロートは幅・高さともに90%なので、差分を読む時に残る余白を減らすため、lua/plugins/ui.luaの既存のfolke/snacks.nvim設定へ次を加えました。
lazygit = {
win = {
width = 0.98,
height = 0.98,
},
},
LazyGitを100%にしなかったのは、フロートの境界が分かる余白を少し残したかったからです。
Snacks Pickerは98%に広げ、プレビューを6割にする
ファイル検索や全文検索で使うのは、独立したfzfコマンドではなく、Snacks.nvimのPickerです。検索の入力にはfzf形式の絞り込み構文も使えます。標準レイアウトは画面幅・高さの80%で、候補一覧とプレビューがほぼ半分ずつでした。候補の下側をたくさん表示するより、選択中のファイルの中身を読みたいので、Picker全体を98%にし、幅の6割をプレビューへ割り当てました。
picker = {
layout = { preset = "wide" },
layouts = {
wide = {
layout = {
box = "horizontal",
width = 0.98,
height = 0.98,
{
box = "vertical",
border = true,
title = "{title} {live} {flags}",
{ win = "input", height = 1, border = "bottom" },
{ win = "list", border = "none" },
},
{ win = "preview", title = "{preview}", border = true, width = 0.6 },
},
},
},
}
残りの約40%を入力欄と候補一覧に使います。Files、Grep、Git FilesなどのPicker全体に適用する設定です。
確認した公式情報
- yazi.nvim README:
floating_window_scaling_factorの既定値と割合 - Snacks.nvim LazyGit documentation:
lazygit.winの設定 - Snacks.nvim Picker documentation:Pickerの検索構文とレイアウト
- Snacks.nvim Explorer documentation:Explorerの階層操作とプレビュー
- Snacks.nvim styles documentation:フロートの幅・高さの既定値
- Yazi configuration:
[preview].wrapによるプレビュー内の折り返し
2026年9月26日の設定記録。Yaziの表示は9月30日、公式情報は公開前の10月1日に再確認しました。

コメント