レンダラーはコンテンツのレンダリングに使用されます。
概要
hexo.extend.renderer.register( name, output, function (data, options) { }, sync, );
|
引数 |
説明 |
name |
入力ファイル名の拡張子(小文字、先頭「.」なし) |
output |
出力ファイル名の拡張子(小文字、先頭「.」なし) |
sync |
同期モード |
3つの引数がレンダリング関数に渡されます。
引数 |
説明 |
data |
次の2つの属性を含みます:ファイルパスpath とファイル内容text 。path は必ずしも存在するわけではありません。 |
option |
オプション |
callback |
2つのパラメーターerr とvalue を持つコールバック関数。 |
例
非同期モード
var stylus = require("stylus");
hexo.extend.renderer.register( "styl", "css", function (data, options, callback) { stylus(data.text).set("filename", data.path).render(callback); }, );
hexo.extend.renderer.register("styl", "css", function (data, options) { return new Promise(function (resolve, reject) { resolve("test"); }); });
|
同期モード
var ejs = require("ejs");
hexo.extend.renderer.register( "ejs", "html", function (data, options) { options.filename = data.path; return ejs.render(data.text, options); }, true, );
|
Nunjucks タグを無効にする
Nunjucks タグ{{ }}
または{% %}
(タグプラグインで使用)はデフォルトで処理されます。無効にする場合、次の操作を行います。
function lessFn(data, options) { }
lessFn.disableNunjucks = true;
hexo.extend.renderer.register("less", "css", lessFn);
|