カメリアの記事

意味があることやないことを綴ります

ブログ上のシンタックスハイライトに関する悶々

はてなブログシンタックスハイライトするのに highlight.js を使っています。ちょっとイマイチだな、と感じています。派手さが。 VS Code なんかで見るシンタックスハイライトと比較してにぎやかさがないんですよね。そこで目を付けたのが Prism.js です。

ちょっと使ってみました。とりあえず JavaScript に関して言うと highlight.js より地味。白い文字が多いです。これは面白くないですね。それにコードブロックに class="language-javascript" とか書かないと動作しません。 highlight.js は書かないでも適当に判断して動作してくれます。シンタックスハイライトされたくないときには class="nohighlight" と書いてやるんですが。 Prism.js には多くのオプション機能があって優れている面もあります。でも僕の需要とはマッチしないようです。

一番確実なのは VS Code で書いたコードをそのままはてなブログの見たまま編集にペーストすることです。 VS Code で見たままが反映されます。素晴らしいです。でも僕としては情報管理アプリ ObsidianMarkdown を使って記事を書きたいので、やはり僕の需要とはマッチしないのです。

2 番目に確実そうなのがはてな記法を使うことでしょうか。はてな記法にはスーパーpre記法(シンタックス・ハイライト)というのが用意されていて、サーバ側でシンタックスハイライトしてくれるようですから、フロントエンドで動作する highlight.js や Prism.js より高度なことができるでしょう。ただこれも、 Obsidian で書きたいという要望にマッチしないのです。はてな記法を使うには HTML 編集ができなくなりますから、 Obsidian からのペーストができないのです。

僕としては十分に満足な方法が見付からないわけですね。自分で書けと言われそうだし、そうしようかという選択肢がないわけではないのですが、ちょと面倒過ぎます。プログラミング言語の構造とかをよく理解してないと書けないでしょうから、まずはそこから始めないと。

ということで、なんだか悶々としているわけです。まぁ将来的には自分で書いてみるのもいいかもしれませんね。 JavaScript だけならどうにかなるかもしれません。