brewで入れたfish 2.7.0でitermのwarningが出ないようにする。

github上では修正対応されたプルリクがマージされたようだが、brewではまだインストール出来ないので自分で修正して対応した。

現在、brewでインストールできるfish shell 2.7.0をmacOSでインストールしてiTerm上で起動すると、iTerm上に次のようなwarningが表示される。

Looks like paste bracketing was keft on when an ssh session ended unexpectedly or an app misbehaved. Turn if off?

これについて、すでに本家のgithubリポジトリ上では対応が行われて、2.7.1というバージョンでは修正がされている。
ところが、brewではまだこれをインストールすることができない。

そこで、直接修正内容をローカルのファイル上に書き込んでwarningが出ないようにした。
幸いなことに修正されたのが実行ファイルのビルドに関わるファイルではなかったので、簡単に対応できた。

まずは修正対応の入ったプルリクを確認する。

fix #4521 by arkbriar · Pull Request #4575 · fish-shell/fish-shell

この中の「Files changed」タブを開くと、実際に修正されたファイルとその内容が表示される。
今回の場合、「share/functions/__fish_config_interactive.fish」が一箇所修正されているのがわかる。
この修正をローカルにある同じファイルに行う。

ちなみに、ローカルだとこのファイルのパスは「/usr/local/Cellar/fish/2.7.0/share/fish/functions/__fish_config_interactive.fish」になっていた。
share以下のディレクトリ構成が微妙に違っていることに注意。

このファイルに対してプルリクにあった修正内容を書き込むと、たしかにiTerm上からwarningが消えた。
そのうちbrewでも対応済みのバージョンがインストール可能になると思うが、気になる人は試してみると良い。