Help us understand the problem. What is going on with this article?

tmux環境でenhancd実行時にパネルが分割されるのを防ぐ

はじめに

最近新たにTerminal環境を作り直した際に表題の現象に遭遇しました。当初は何らかの設定ミスが悪さをしているものだと思っていたのですが、至ってenhancdの想定内の挙動というオチでした。簡単にまとめておこうと思います。

環境

  • macOS
  • tmux
  • fish shell
  • fisher
  • enhancd
  • fzf

問題

下の動画のように、tmux環境下でenhancdを実行するとfzfが実行されるものの、パネルが分割されています。

demo_tmux-enhancd.gif

原因

enhancdはデフォルトでは検索にfzfよりもfzf-tmuxコマンドが優先的に実行されるためです。fzf-tmuxは動画のようにfzfをtmuxの別パネルで実行するコマンドであり、macのhomebrewではfzfのインストールに同封されています。

enhancdではフィルタリングを行うコマンドに複数対応していますが、初期化スクリプト内に各コマンドの優先順位が記載されています。
https://github.com/b4b4r07/enhancd/blob/master/init.fish#L35

これによると確かにfzfよりもfzf-tmuxが先に記載されて優先度が高く指定されていることがわかります。

解決策

enhancdにはちゃんとフィルタリングコマンドを指定することが可能です。

次のように環境変数を指定する1行をfishの設定ファイルに追記することで、fzf-tmuxが実行されないようにしました。(デフォルトの検索コマンドリストからfzf-tmuxを消しただけ)

~/.config/fish/config.fish
# 下行を追加
set -gx ENHANCD_FILTER "fzy:fzf:peco:percol:gof:pick:icepick:sentaku:selecta"

終わりに

tmuxのパネル分割のショートカットを別キーに設定した後だったこともあって、それが影響していると思い込んでいたのですが全くの勘違いでした。至って想定どおりの挙動。思い込みって怖い。

参考文献

icchi_h
都内のメディア企業で働く高専出身エンジニア
https://icchi.me
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした