このIssueはPandocの理解度upに参考になる…かも。
このIssue、現時点でopenなのですが、初見だとなかなか面白い挙動なので見ておくと良いです。
これを、以下のようにplain2をつくって渡してあげるとmb1とmb2は同じになります。1度でも参照してしまうとダメぽい。
local plain = {pandoc.Plain("test")} local plain2 = {pandoc.Plain("test")} local mb1 = pandoc.MetaBlocks(plain) local mb2 = pandoc.MetaBlocks(plain2)
下記のようにしてあげればいいわけですが、これは書き方の例としてどこかにあった方が良い気はしますね…
function Pandoc (doc) doc.meta.b1 = doc.blocks doc.meta.b2 = doc.blocks return doc end
MetaBlockはBlockと基本的に同じ挙動のはずなので、これ以外は特に変なものはない…と思うけど。
Issueを読むと、こういう使い方をする人がいるんだなぁと学びがありますねぇ…。