Simplicityの特徴 › フォーラム › Simplicityについての質問 › highlight 機能にて lisp ソースコードがハイライトされない
-
投稿者投稿
-
-
2016年11月23日 2:58 PM #47815
しんや
ゲストお世話になります。
ソースコードのハイライト表示機能について質問させてください。Simplicity2 はデフォルトでソースコードのハイライト機能があると思います。
それを使って、lisp のコードをハイライトしたいと考えています。そこで、下記のように記述してみました。
<pre class="lisp">;; ログイン名に応じてプロキシの設定を行う. (if (equal (user-login-name) "hoge_user_name") (setq url-proxy-services '(("http" . "proxy.hoge.co.jp:8080") ("https" . "proxy.hoge.co.jp:8080") ))) </pre>すると下記のサイトのように表示されます。コメントなど認識できておらず、lispでない言語と認識されているようです。
サーバに
simplicity2/highlight-js/languages/lisp.js
というファイルがあったのでlispも対応していると思っているのですが、認識あっていますでしょうか。ちなみにですが、C言語のソースコードは期待通りハイライトされています。
以上、お手数おかけし恐縮ですが、ご助言いただけますと幸いです。
-
2016年11月23日 5:34 PM #47834
わいひらキーマスターソースコードを見てみると、以下のようにbashクラスが勝手に挿入されてしまいますね。何でだろう。
<pre class="lisp hljs bash">
手元の開発環境でも同様の動作を確認したんですが、highlight.jsの自動判別が勝手に挿入してるっぽいのですが、何か自動判別を無効化する文字列を挿入しないとダメなのかな。
ちょっと後で、highlight.jsの書式について調べてみます。 -
2016年11月23日 5:38 PM #47836
わいひらキーマスターC言語のページの方も、C++のクラスが自動判別で挿入されてるっぽいですね。
<pre class="c hljs cpp">
同系の言語だから、見た目的には問題ないようですが。やはり何か、自動判別が関係しているのかもしれません。 -
2016年11月23日 5:56 PM #47839
しんや
ゲストわいひらさん
早速のご返答ありがとうございます。
class指定しているのに自動判別処理が動いてしまっているのですね。。。 -
2016年11月23日 6:38 PM #47843
わいひらキーマスターsimplicity2/highlight-jsの中身のhighlight.min.jsを以下のものと入れ替えるとうまくいくと思います。多分。
https://wp-simplicity.com/wp-content/uploads/2016/11/highlight.min_.zip
上記のファイルは、lispも含め以下の言語全てにチェックを付けたパッケージスクリプトです。
https://highlightjs.org/download/
とりあえずは、全言語を含めましたが、必要な言語に絞って変更してもOKだと思います。参考:
javascript – Why the highlight.js ignores the language classes? – Stack Overflow -
2016年11月23日 7:06 PM #47844
しんや
ゲストわいひらさま
ありがとうございます!下記の通り、いただいた highlight.min.js を使うことで Lisp も期待通りハイライトできました。
lisp コードをハイライトしようとしているページhighlight.min.js がデフォルト設定だったんで Lisp は非対応だったんですね。助かりました!ありがとうございました!!
-
2016年11月23日 10:34 PM #47849
わいひらキーマスターうまくいったようでよかったです。
おそらく、highlight.jsの仕様変更といってもいいのかもしれません。
以前は確か.言語を選んでダウンロードするといった配布方法ではなかったので。
でもいずれにせよ、以前配布していてSimplicityが適用していたファイルは、lisp対応してなかったのかもしれません。新しいスクリプトファイルは、Simplicity安定版に適用させようと思います。
-
-
投稿者投稿
- トピック「highlight 機能にて lisp ソースコードがハイライトされない」には新しい返信をつけることはできません。