mastodon.cardina1.red は、数々の独立したMastodonサーバーのうちのひとつです。サーバーに登録してFediverseのコミュニティに加わってみませんか。

サーバーの情報

3
人のアクティブユーザー

らりお・ザ・何らかの🈗然㊌ソムリエ

The file has been changed since reading it · Issue #18290 · neovim/neovim
github.com/neovim/neovim/issue

起票者が「これ以上時間使いたくないのでローカルでパッチ当て続けることにしたわ、こっちは閉じる」と。かなしいなぁ

GitHubThe file has been changed since reading it · Issue #18290 · neovim/neovimiio7

まあそういうこともあるよね、パッチ当てるよりもコミッターを納得させる方がダルいのであれば……

CIFS (SMB) マウントしたディレクトリにメモを置いてあって neovim で編集したりするので、割とこれ私にも刺さるイスューだったのだが。

話題にされているのは vim が編集中ファイルの最終更新日時を記憶していて、書き込み時に改めて比較して前回読んだときから更新されていたか確認する (更新されていたら vim 外での更新と見做して警告する) という機能。

一部のネットワークファイルシステムでは基本的にメタデータ (更新日時含む) がクライアント側にキャッシュされていたりするためローカルでの更新日時とサーバでの更新日時が厳密には一致せず (時計のズレや通信遅延ゆえ)、ゆえに毎回ファイルを上書き保存するたびに「前回保存時の (ローカルの) タイムスタンプと、書こうとしているファイルの (リモートで設定された) タイムスタンプが一致しない」ということになるらしい。
解決策として「メタデータのキャッシュをやめて必ず通信で取得する」というマウントオプションを設定する手があるが、つまりこれは ls -l とかでファイルの更新日時を列挙するたびにファイルの数だけメタデータのクエリが飛ぶということであり、パフォーマンスへの影響もそれなりにあるので vim のためだけに設定したいかというと……