Highlighting Code Blockの中で、&num
が#
として表示されてしまってちょっと困ってしまいましたが、原因がわかったので残しておきます。
Highlighting Code Blockとは
Highlighting Code Block
prism.js を使用したシンタックスハイライト機能付きのコードブロックを追加します。 (Gutenberg とクラシックエディター共に利用可能)
WordPressのプラグインで、プログラムをきれいに表示してくれる機能があります。
例えば以下のような。
int number = 123;
number += 100;
cout << number << endl; // 223
型に色をつけてくれたりします。対応する言語を選択できるので、その言語に沿った表示をしてくれて、コードを解説するときにわかりやすく表示してくれます。
&numが#として表示されちゃう・・・
ここで、ちょっと問題にあたってしまいました。
Highlighting Code Blockの中で、&num
が#
として表示されてしまうのです・・・。
int num = 123;
int *pointer;
pointer = # // &numって書いてるのにー!
pointer = &nom;
ちょっと困りました。&nom
は表示できるので、&num
だとダメらしい・・・。
解決方法
調べると、&num
は#
のHTML entityらしい・・・
HTML entityとは
予約済み文字や見えない文字を表示するために使います。&から始まり;で終わる形式とのこと。
例えばHTMLのコードをペタッとブログに貼る時に、そのまま貼っちゃうとコードを実行してしまいますが、
コードをそれぞれHTML entityで置き換えてあげると、コードは実行せずに、コードをそのまま表示することができます。
それに使うようですね。なので、Highlighting Code Blockの中で#
が#
になってしまったようです。
回避策としては、&
をHTML entityで置き換えればいいんですよね。なので、
&
のHTML entityである&
に置き換えて、&num;
としてあげると・・
int num = 123;
int *pointer;
pointer = &num;
できました!
地味にHTML entityを書いてしまってる可能性があるので気をつけろってことですねー。
にほんブログ村に参加しております!よろしければクリックお願いします 🙂
にほんブログ村
コメント