2018-10-17

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

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

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

info
  • conf.py (設定ファイル) の POSTS*.png を追加してみたんですが バイナリファイルはビルド対象に指定できないようです。
  • あちらを立てればこちらが立たずとはまさにこのことですね

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

導入方法

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

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

使い方

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

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

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

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

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

warning
  • はわざと全角にしていますが、実際に利用する際には 半角の % に変換してください。
  • コードブロック中でも shortcode は実行されちゃいます。

以上、気軽にスターください。 GitHub - righ/nikola-copy-shortcodeContribute to righ/nikola-copy-shortcode development by creating an account on GitHub.https://github.com/righ/nikola-copy-shortcode