PelicanでHTML生成後に任意の置換をするプラグインを作りました

Replacer

PelicanでHTMLが生成される度に起動し、生成後のHTMLファイルに対して任意の置換を行うことのできるプラグインを開発しました。

このブログはreStructuredTextからHTMLをPelicanを使って生成しています。reStructuredTextでは、reStructuredTextから生成されるHTMLタグに対して、自由にCSSのクラスを付与することができません。(一部のディレクティブはCSSを受け取ることが可能です。)任意のCSSクラスを付与できなくても基本的には問題がないのですが、今回、Tableタグに対してTwitter Bootstrapのクラスを付与したかったので、プラグインを開発して対応することにしました。 Twitter bootstrapに特化したプラグインではないので、置換で対処可能なら、他のことにも使えます。

成果は ReplacerとしてGitHub で公開します。

ReplacerはPelicanの設定ファイルで置換前と置換後の組のタプルをリストやタプルで受け取ります。HTMLが生成される度に生成されたHTMLを読み、置換を行うというとてもシンプルな仕組みです。

類似プラグイン

ingwinlu/pelican-bootstrapify というプラグインを見つけましたが、このプラグインはMarkdown用なためか、私の環境では動作しませんでした。Pelican側の変更があったのかは分かりませんが、そのプラグインでは現在は置換ができないように見えました。 このプラグインは任意の置換を目的としたものではなく、あくまでBootstrapのために置換を行っています。

コメント

2015 - 2017 (c) 成瀬基樹