このブログではスクリプトを掲載することが時々あります。
ご覧になった方が「これはスクリプトだ」とわかるように、Crayon Syntax Highlighterというプラグインを使用して、強調表示するようにしています。
しかしながらCrayon Syntax Highlighterでは、”>”や”<“といった記号が”>”や”<”といった表記になってしまい、記述した内容が正しく表示されない事象が発生しておりました。
ブログ運営的な内容ですが、これを修正いたしましたので書いていきます。
Crayon Syntax Highlighterの修正
環境
- WordPress 5.5.3
- Crayon Syntax Highlighter バージョン 2.8.4
発生していた事象
冒頭でも記述しましたが、”>”や”<“といった記号が”>”や”<”に変更されていました。
具体的な事例を画像で提示します。
↑はASUSルーターで使えるコマンドという記事の画像です。
本来は”>”と表記される部分が悉く”$gt;”という表記に変わってしまっています。
この記事の内容としては、lsコマンドの結果を表示しているだけで、結果をコピーして使用することはないと思うので問題はないですが気持ち悪いです。
続いての例
これは、先日公開したOSSなWeb会議システム Jitsi meetを構築してみましたという記事の抜粋です。
これはひどいです。
この記事の場合は、スクリプトを実際にコピーして使う可能性が高く、このまま貼り付けてもエラーが発生してしまい、再現性がまったくない状態になっています。
このような状態になっていましたので、修正しました。
修正
修正はプラグインエディターで行います。
WordPressの管理画面から、プラグイン > プラグインエディターと進みます。
プラグインの修正は推奨されていません。
誤った変更をしてしまった場合に備えて、修正前のバックアップを取得しておきます。
プラグインエディターの画面で、Crayon Syntax Highlighterを選択します。
そして次の2つのファイルを修正していきます。
crayon_formatter.class.phpの修正
crayon_formatter.class.phpというファイルを選択します。
(ファイルパス:crayon-syntax-highlighter/crayon_formatter.class.php)
このファイルの553行目~555行目をコメントアウトします。
コメントアウト開始場所に /* を追記し、終了場所に */ を追記していきます。
1 2 3 |
/*if ($escape) { $code = CrayonUtil::htmlspecialchars($code); }*/ |
修正が完了したら、[ファイルを更新]をクリックします。
operator.txtの修正
crayon-syntax-highlighter/langs/default/operator.txt
続いて、operator.txtを修正します。
[langs] ⇒ [default] の中にoperator.txtがあります。
(ファイルパス:crayon-syntax-highlighter/langs/default/operator.txt)
operator.txtの13行目と39行目に#を付けてコメントアウトします。
1 2 3 4 5 |
13行目 #&= 39行目 #& |
修正が完了したら、[ファイルを更新]をクリックします。
Crayon Syntax Highlighterの修正は以上で終了です。
さっそくページを開いて修正結果を確認します。
実際にコマンドを実行したときと同様の出力結果になりました。
こちらも想定通り、修正ができていました。
記事に掲載しているスクリプトは、実際に実行した結果を載せています。
そのため、再現性があるものです。
今回の修正によって、各記事に掲載されたスクリプトが再現性のある内容になったと思います。
コメント