ファジィディレクトリ検索が遅い

ファジィディレクトリ検索が遅い

gitリポジトリを見つけるには、次のbashスクリプトがあります。

echo "$(fd -I -i -H -E '.local' -E '.cargo' -E '.password-store' -t d ^.git$ ~ -x 'echo' '{//}' | sk)"

fd検索結果がsk見つかったら(fzf Rustの代替案)に送信してください。ただし、fd完了するまで待つには1つを選択してください。したがって、実際に使用するディレクトリを選択した後、sk実際に編集するディレクトリまで約2秒の遅延が発生しますecho。私も同じ行動を見ることができますfzf

遅延を避ける方法はありますか?

答え1

数時間後、私はこれを見つけました。より良い解決策があるかもしれませんが、この方法も効果があります。

#!/bin/env bash

quick_exit ()
{
  read VAR
  if [ ! -z "${VAR}" ]; then
    echo $VAR
    PID=$$
    kill $PID 2&> /dev/null
  fi
}

fd -I -i -H \
  -E '.local' \
  -E '.cargo' \
  -E '.password-store' \
  -t d ^.git$ ~ \
  -x 'echo' '{//}' | sk | quick_exit

関連情報