mintty で ag, percol を使う備忘録

Environment
Photo by hyt.

前回の記事

mintty で pt, peco が使えない備忘録
Cygwin の mintty で Google の Go 言語で書かれた pt とか peco とかを使ってみた備忘録です.一応使えるようにはなりましたが,今のところ実用にはなっていません. pt, peco って何? 何かの件で Web...

で Cygwin だと pt と peco が現状だと実用にならないことが分かりましたので,代わりに ag と percol を導入してみます.

Ag (The Silver Searcher)

The Silver Searcher で,銀なので ag という名前みたいですね.元ページ

GitHub - ggreer/the_silver_searcher: A code-searching tool similar to ack, but faster.
A code-searching tool similar to ack, but faster. Contribute to ggreer/the_silver_searcher development by creating an ac...

から分かる通り高速版 ack です.pt が超高速,ag が高速, ack が低速コマンドだと思えば良さそうです.で,調べてみると,何と ag は Cygwin の標準パッケージとなっています.Util カテゴリの the_silver_searcher: Ag がそれで,setup.exe で導入すれば良いだけです.

percol

peco と同様の interactive filterling tool です.元ページは

GitHub - mooz/percol: adds flavor of interactive filtering to the traditional pipe concept of UNIX shell
adds flavor of interactive filtering to the traditional pipe concept of UNIX shell - mooz/percol

ですが,これはどうも pythonで作られているようで,まずは python のパッケージ管理ツールである pip をインストールしなければなりません.

Cygwin に導入される python は今だと 2.7 系列と 3.4 系列の2系統です.共存させたかったので,Cygwin の標準パッケージから

  • python-setuptools
  • python3-setuptools

を入れ,その後,

$ easy_install-3.4 pip
$ easy_install-2.7 pip

の順に pip をインストールします.これで pip で 2.7 系列,pip3 で 3.4 系列のパッケージを導入することができます.なお,percol を使うだけならはどちらか片方を入れれば良いです.

で,ここまで来れば,percol は

$ pip3 install percol

とするだけで使えるようになります.

応用例について

percol の元ページには,percol の応用として,

  • Interactive pgrep / pkill
  • zsh history search
  • tmux

の設定が載せられています.使ってみるとどれも結構便利です.と言うことで peco を導入した MacOS でも使えるよう

$ ln -s /usr/local/bin/peco /usr/local/bin/percol

とリンクを張りました.これだけで使えるようになります.

ag, pt, percol, peco 雑感

Cygwin の場合,ag, percol の導入は pt, peco に比べれば圧倒的に簡単です.また,表示が崩れるようなこともありませんので非常に実用的.まぁ動作速度については pt, peco の方が上の様なので,Google の golang が Cygwin で使えるようになったら(そんな日は来ないような気もしますが)改めて導入したいと考えています.

Environment
スポンサーリンク
Following hyt!
タイトルとURLをコピーしました