(1)はこちら、(2)はこちらから。
最小限のコードで書く
最後に、最近作ったばかりの小さなツールを紹介します。
拡張子が異なる同名ファイルを同時に開く
現在筆者が勤めるヴェルク(株)では、自社サービス『board』のヘルプ記事をGitで管理しています[1]。この際、本文データとそれ以外のデータ(タイトル・メタ情報など)をHTMLファイルとYAMLファイルに分けて記述し、たとえば「お問い合わせ方法」に関するヘルプ記事のソースファイルであれば、リポジトリの次の場所に配置しています。
筆者はかつて編集者だった経験を活かして、こうしたヘルプ記事の文字校正を行っていますが、その際にはそれら2本のテキストファイルを両方開いておく必要があります。
しかし、これを毎回MacのFinderで探して開くのはたいへんです。そこで、この作業を省力化するために作ったのがfind-file-open.pl
です。
本ツールは、これまでに紹介した中でもとりわけ短いコードでできています。
シェルコマンドのfind
とopen
を少し使っている以外はPerlで書かれており、そのどれもが入門書の前半に書かれているような初歩的な構文です。もしこのツールを不特定多数のユーザーが使うのであれば、想定外の入力にも対応できる複雑なしくみが必要になるかもしれませんが、自分だけが限定的な用途で使う前提であれば、このような最小限のコードでも十分に目的を果たせます。
使い方
では、実際に使ってみましょう。ルートディレクトリで、対象となる複数のファイル名に共通するフレーズ(ここではhelp_how_to_contact
)を引数として渡して実行します。なお、ここではfo
というエイリアスで呼び出します。
すると、次のように検索にヒットしたファイルが列記されます。その対象で問題がなければy
で決定し、意図しない結果であれば条件を変えてやりなおします。
この場合は、表示された2本のファイルが同時に開かれます。
このツールによって、以前は数分かかっていたファイルの準備が数秒で済むようになりました。同サービスには400本弱のヘルプ記事があることを考えると、この小さなプログラムがもたらした効果は非常に大きなものだと言えるでしょう。
まとめ
本稿では、筆者が日々の生活の中でPerlをどのように活用しているか、実例とともに解説しました。扱った内容は必ずしもPerlに特有のものではなく、ほかのプログラミング言語で実現できるものもあると思います。もし気になったアイデアがあれば、手に馴染んだ環境に置き換えて、ぜひ試してみてください。
さて、次回の執筆者は尾形鉄次さんで、テーマは「正規表現の勘所」です。お楽しみに。
- 特集1
イミュータブルデータモデルで始める
実践データモデリング
業務の複雑さをシンプルに表現!
- 特集2
いまはじめるFlutter
iOS/Android両対応アプリを開発してみよう
- 特集3
作って学ぶWeb3
ブロックチェーン、スマートコントラクト、NFT