RのコードがSyntaxHighlighter Evolvedでうまく表示されない時の対策
WordPressにPHPとかCSSとかPythonとかいろいろなコードを貼れる便利なプラグイン、SyntaxHighlighter Evolved。
ぼくも愛用してるプラグインなんですが、困ったことに特定の文字が含まれるとRのコードをちゃんと表示してくれないんですよ……。
今回はこの対策記事です。
いろいろ調べて見たところ、Rのコードに非対応というわけではないようです。(だってlang一覧のところにrって書いてるしね)
ただ普通にcode lang=”r”とかで囲ってやっても
みたいに表示が崩れちゃいます。
で、ぼくの場合こうなってしまっている原因は「<」という文字コードのせいでした。
試しにこれを削除してみると
install.packages('arules') library(arules) d.tran-read.transactions(file='input.txt',sep=',',format='basket',rm.duplicate=T) d.ap-apriori(d.tran,p=list(support=0.01,confidence=0.5,maxlen=999999,ext=TRUE),a=list(rhs="りんご",default="lhs")) inspect(head(sort(d.ap,by="support"),n=10)) afile = capture.output(inspect(head(sort(d.ap,by="lift"),n=100000))) write(afile,"aprioridata.txt")
というように正常に表示されます。
……とはいってもこの「<」という文字コード、Rのコードを記述する上で避けては通れない常用コードなのでこれを書かないわけにはいきません。
なので別の方法を考える必要がありました。
対策
・(少なくてもぼくが試した限り)SyntaxHighlighter EvolvedではRのコード表示するのは無理っぽい。
・でもコード表示用のプラグインはもう入れなくない。(複数使うと不具合が起こりやすいため)
・でもRのコードをWordPressサイトに載せたい。
という要望を叶えてくれる方法。
ずばりGitHubのGistを使うことです。
Youtubeとかニコニコ動画の埋め込みコードみたいに、Gist上で書いたコードをWordPressやHTMLサイトにそのまま載せれるような埋め込みコードを発行してます。すごく楽。
こんな感じで。
Rに限らずあらゆる言語に対応しています。むしろSyntaxHighlighter Evolvedとか入れなくてもこれ一つで全部事足りる感あるよね まぁレイアウトをいじれないけど
ざっくりとした使い方とかは以下の記事を参考にしていただければ。
参考リンクGitHubについてもう少し知ってみる。その5(Gistでお手軽コード管理)
以上、RのコードをWordpressに表示させれなくて困ってる時に何かご参考になれば幸いです。