日記

r7k

久しぶりに、あさましくもブログエンジンに少しだけ手を入れた。

Markdownの本文中に含まれるリンクを走査して、Amazon.co.jpのリンクであればトラッキングID(a.k.a. アソシエイトタグ)を付ける、という簡単な仕事を追加しただけ。すごく雑な実装だけど、テストもあるし型もあるしきちんと動いているのでよし。

pulldown-cmarkではこのように、Markdownをパース結果がイベント列として表現されるので、パターンマッチを使いながら別のイベント列に変換することでそれなりの変換処理を実現できる、という世界観になっている。今回のように簡単な変換処理であれば非常に扱いやすいけれど、イベント列からイベント列への変換で表現できないような複雑な変換処理というのは苦手そうで、その場合はどうするのだろうね。イベント列といっても木構造を成しているはずなので、そういった複雑なケースではNokogiriのように木構造に対して処理を行う機構が必要になってきそうだ。

r7kamura/workflows

主に自分用のGitHub Actions Workflow集が本当に便利。

例えばRust向けには、次のようなWorkflow達を用意している。

  • Linterやテストを一通り行ってくれるWorkflow
  • バージョンを上げると勝手にタグを発行してくれるWorkflow
  • タグが発行されると勝手にリリースを発行してくれるWorkflow
  • リリースされると勝手にバイナリをビルドして紐付けてくれるWorkflow

ライブラリの更新方法やその作法なんかを覚えていなくても、基本的にこの辺が面倒見てくれるので助かる。何か問題が発覚したときなどに、一括して処理内容を変更できるというのも良い。