[Nikola] ファイルをコピーするだけのプラグインを作った
2018-10-17

目次

警告

pathlib を使っているので Python 3.4 以上でないと動作しません。

Nikola では 設定ファイルにて 記事としてビルドするファイルを GLOB 指定するんですが これは嬉しい半面、記事ディレクトリに置いた記事以外のファイルは ブラウザから参照できない (output/ に出力されない) という問題がありました。

備考

conf.py (設定ファイル) の POSTS*.png を追加してみたんですが バイナリファイルはビルド対象に指定できないようです。

あちらを立てればこちらが立たずとはまさにこのことですね

解決するために GLOB に一致したファイルを output に出力する プラグインを作りました。

導入方法 (Installation)

plugins ディレクトリに リポジトリをクローンするだけです

  1. ブログディレクトリのトップに移動する
  2. git clone https://github.com/righ/nikola-copy-shortcode plugins/copy_shortcode

使い方 (Usage)

記事中に {{% copy コピーしたいファイルのGLOB コピー先のパス(省略可) %}} のように記述します。

例えば PNG ファイルをコピーしたい場合、記事ファイルの何処かに {{% copy *.png %}} と記述します。

コピーしたいファイルタイプが複数ある場合は

{{% copy *.png %}}
{{% copy *.jpg %}}

のように複数記述すれば OK です。

警告

はわざと全角にしていますが、実際に利用する際には 半角の % に変換してください。

コードブロック中でも shortcode は実行されちゃいます。

以上、気軽にスターください。 righ/nikola-copy-shortcode