2
0

More than 1 year has passed since last update.

はじめに

greple

greple は、作者が1990年初頭から開発を続けているコマンドです。名前の通り Unix コマンドの grep と同じように、テキストから文字列を検索するためのコマンドラインツールです。le は lexical expression の意味ですが、それについてはこれからおいおい説明していきます。

読み方

読み方は特に決めていませんが、なんとなく「ぐれっぷる」と呼んでいます。アクセントは「れ」にあったり、今時の平板化した読み方だったりと、人によって様々です。英語的に発音すると「ぐれぽー」みたいになるんでしょうか。

「ぐれっぷ・えるいー」と読んでもいいけど、長いですね。アメリカ人、なんでも単語化しようとしますしね。SCSI が「すかじー」になるくらいで。昔、PCMCIA を無理やり読んでいる人がいて驚いたことがあります。

特徴

greple は、以下のような特徴を持っています。

  • 複数のキーワードを指定できる
  • 行だけではなく、検索対象ブロックを柔軟に指定できる
  • 検索対象の範囲や条件を指定できる
  • 複数行に渡るパターンを検索できる
  • 多彩な色指定が可能
  • 設定ファイルやモジュールによるカスタマイズ/拡張が可能
  • 単なる検索だけではなく、文字列処理のフレームワークとして機能する

これらの特徴や使い方について、これから毎日少しずつ解説していこうと思います。

想定される用途

元々、文章の校正作業を楽にするために作ったもので、その後もまとまった翻訳の仕事が入る度に少しずつ拡張を続けてきました。そのため、それほど多くないテキストファイル(せいぜい書籍数冊分程度)に対して、様々な条件を課して検索やそれに類する処理を行うというのが想定される主な使い方です。

大量のデータを対象にするのであれば、それに適したツールが他にたくさんあるので、そういうものを使ってください。ちなみに、ripgrep というコマンドが高速かつ高機能です。

また、greple は、すべてのデータを最初に読み込んでから処理するため、連続して生成されるデータを逐次処理していくような目的に使うことはできません。

インストール

greple は Perl で記述されていて、cpanminus (cpanm) を使ってインストールします。cpanminus の使い方や、Perl の環境設定については、他の記事を参照してください。cpan や cpanplus など、他のインストーラーでも正しく使えば問題ないはずですが、保証はできません。

$ cpanm App::Greple

-n オプションをつけると、テストを省略して短時間でインストールすることができます。

リポジトリ

ソースコードは github で管理しています。cpan にも、ほぼ最新版が上がっているので、どちらからインストールしても同じです。cpanm コマンドで、github の URL を指定してインストールすることもできます。

関連記事

SEE ALSO

  1. https://qiita.com/kaz-utashiro/items/5b6bcbe54891b3bd9db5 ←イマココ
  2. https://qiita.com/kaz-utashiro/items/eb8c7067e6de34842fe3
  3. https://qiita.com/kaz-utashiro/items/165e744d4250adedc4c1
  4. https://qiita.com/kaz-utashiro/items/439e6abcecf36c520703
  5. https://qiita.com/kaz-utashiro/items/24ac0b8fdd30b598e069
  6. https://qiita.com/kaz-utashiro/items/a1ba4e3d07cf37dc25e3
  7. https://qiita.com/kaz-utashiro/items/0c8c944c17a72724b771
  8. https://qiita.com/kaz-utashiro/items/8783c2fd0cc4315b9a3d
  9. https://qiita.com/kaz-utashiro/items/84f5a6be6bf996076c64
  10. https://qiita.com/kaz-utashiro/items/ebc7ea99f800cfc8c90c
  11. https://qiita.com/kaz-utashiro/items/25a14e75380c39b5e0af
  12. https://qiita.com/kaz-utashiro/items/ebbeb8a5538a15ff04fc
  13. https://qiita.com/kaz-utashiro/items/b265deef9c9b1953a414
  14. https://qiita.com/kaz-utashiro/items/2b20e0226cffde213ce0
  15. https://qiita.com/kaz-utashiro/items/16b5142ef7a89aa35380
  16. https://qiita.com/kaz-utashiro/items/d19fe5ee859f31ce172c
  17. https://qiita.com/kaz-utashiro/items/09a5f5cf08ce314e2add
  18. https://qiita.com/kaz-utashiro/items/6e4b1f51455e587ef743
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0