Open10

fzf-zsh-pluginのエラー対応

fjtkfmfjtkfm

sheldon経由で fzf-zsh-plugin をインストールしたらエラーが出たので調査

fjtkfmfjtkfm

エラー内容

/Users/fjtkfm/.fzf.zsh:source:13: no such file or directory: /Users/fjtkfm/.fzf/shell/key-bindings.zsh
Can't find a fzf configuration file at /Users/fjtkfm/.fzf/fzf.zsh, creating a default one
cp: /Users/fjtkfm/.fzf/fzf.zsh: No such file or directory

どうもfzfの設定ファイルが見つからないらしい

fjtkfmfjtkfm

fzf自体は homebrew 経由でインストール済み

~ ➜ which fzf
/opt/homebrew/bin/fzf
~ ➜ fzf --version
0.49.0 (brew)
fjtkfmfjtkfm

上記ポストのコマンドをちょっと変えて実行
.fzf/shell というディレクトリを作り、 .fzf/shell/key-bindings.zsh を参照できるようにする

~ ➜ mkdir .fzf
~ ➜ cd .fzf
~/.fzf ➜ ln -s /opt/homebrew/Cellar/fzf/0.49.0/shell shell
fjtkfmfjtkfm

参考

~ ➜ ls /opt/homebrew/Cellar/fzf/0.49.0/shell
completion.bash  completion.zsh  key-bindings.bash  key-bindings.fish  key-bindings.zsh
fjtkfmfjtkfm

zshを再起動するとデフォルトの設定ファイルが作られ、無事動くようになった

Can't find a fzf configuration file at /Users/takafumi.fujii/.fzf/fzf.zsh, creating a default one
~ ➜ fif
Need a string to search for!
fjtkfmfjtkfm

いろいろ試した結果、以下の環境変数を設定するのが一番いいのでは?という結論に至った

export FZF_PATH=/opt/homebrew/opt/fzf

fzf-zsh-plugin は FZF_PATH を参照して設定ファイルを読み込む。
これが設定されていない場合は ${HOME}/.fzf を見に行く
なので、あらかじめこれをhomebrewでインストールしたfzfのディレクトリに設定しておけばよいのでは?と思う