マクロツイーター

はてダから移行した記事の表示が崩れてますが、そのうちに直せればいいのに(えっ)

Markdownでデカイ文字を書けて便利な話(ただしPandoc)

聞くところによると、Markdownでとにかくデカイ文字が簡単に書けると便利なようです。

しかし残念なことに、元来のMarkdownは意味的なマークアップを指向したものであるため、今世にあるMarkdownの各種方言はどれも「見出しを書く」ことができても「デカイ文字を書く」ことができません。このことがデカイ文字の熱狂的ファンがMarkdownの採用を躊躇する一因となっていることは否めないでしょう。

というわけで、Markdownでデカイ文字を書くためのPandocフィルタを作ってみました

文字をデカくする

このフィルタを使う場合、デカイ文字は「bigクラスをつけたspan要素」として表されます。Pandoc Markdownの記法では次のように書きます。

[sample1.md]

Pandocは[アレ]{.big}。

早速このMarkdownをHTMLに変換してみましょう。

pandoc sample1.md --lua-filter biggggg.lua -s -o sample1.html

f:id:zrbabbler:20190731210533p:plain
HTMLでデカイ文字

デカイ! 便利!

今度はLuaLaTeX経由でPDFに変換してみましょう。

pandoc sample1.md --lua-filter biggggg.lua -o sample1.pdf --pdf-engine=lualatex -V documentclass=bxjsarticle -V classoption=pandoc

f:id:zrbabbler:20190731210622p:plain
PDFでデカイ文字

デカイ! 便利!

※現状では、対応する出力形式はHTMLとLaTeX(経由のPDF)に限ります。

文字をもっともっとデカくする

「これだけのデカさでは物足りない」という人はもっともっとデカイ文字も使えます。クラス名としてbigの代わりにbiggbigggbigggg、……とすることで、文字をどんどんデカくできます。

[sample2.md]

Pandocは[アレ]{.bigg}[アレ]{.bigggg}
[アレ]{.bigggggg}[アレ]{.bigggggggg}。

※見やすさのため、Markdown中に改行を入れました。この改行は(空白にならずに)無視されてほしいので、pandoc実行時にオプションに-f markdown+ignore_line_breaksを追加することにします。

f:id:zrbabbler:20190731210654p:plain
HTMLでもっともっとデカイ文字
f:id:zrbabbler:20190731210716p:plain
PDFでもっともっとデカイ文字

もっともっとデカイ! 便利!

強調文字もデカくする

もちろん、デカイ文字を他の文字装飾と組み合わせることもできます。

[sample3.md]

Pandocは[アレ]{.bigg}、TeXは[超絶**アレ**]{.bigggggg}。

f:id:zrbabbler:20190731211010p:plain
HTMLでデカイ強調文字
f:id:zrbabbler:20190731211035p:plain
PDFでデカイ強調文字

強調付きでデカイ! 便利!

まとめ

Pandocはネタ記事を書くのに便利!(えっ)