ack から pt に乗り換えた
ack少し遅いなと思いながら使っていました。ググって見ると高速grepツールは世の中に色々あるようです。
ご参考
- highway という高速検索ツールを作りました · けんごのお屋敷
- Go言語でag(The Silver Searcher)ライクな高速検索ツールをつくった。EUC-JP/Shift-JISも検索できマス。 · THINKING MEGANE
- ag(The Silver Searcher)でEUC-JP/Shift-JISのファイルも検索できるようにしてみた · THINKING MEGANE
今回はptをInstallして見ました
agは複数エンコーディングに対応していないことから、pt or highway を検討して見ました。 highwayの方が高速なようですが、pt はgoで書かれておりクロスプラットフォームで動作するようですので、 今回はptを入れて見ることにしました。
installation
binaryも用意されているようですが、macはbrewでinstall可能です。
$ brew install the_platinum_searcher
ackと比較して
計測はしていませんが、体感レベルで速くなったことを体験できます。すごい!
デフォルトgitignore を無視してくれるのも良いです。
早速 peco のwrapperをackからptに変更しました。
function pe() { #ack "$@" . | peco --exec 'awk -F : '"'"'{print "+" $2 " " $1}'"'"' | xargs less -N ' pt "$@" . | peco --exec 'awk -F : '"'"'{print "+" $2 " " $1}'"'"' | xargs less -N ' }