Pukiwiki-1.5.1にSyntaxHighlighterを設定する

正式にはサポートされなくなった(?)のか
Pluginが消えてしまった。

仕方がないので、Pukiwiki-1.4.7で使用していたPluginを
そのまま使用してみた。

【導入手順】
(1) プラグイン sh.inc.phpをダウンロードし、解凍後、
Pukiwikiのpluginフォルダに配置してください。
(なお、このプラグインは、現在リンク切れになっているので、筆者のパソコンに設定してあったものです。
利用する場合は、自己責任でどうぞ)
(3) SyntaxHighlighterをダウンロードし、解凍します。
解凍したフォルダ内の「scripts」、「styles」の両フォルダを、pukiwiki フォルダ内の skin/sh フォルダにそのままコピーします。
(4) pukiwiki.ini.php の56行目付近を次のように変更します。

<br />
//define('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK', 1); // 1 = Disabled この行をコメントアウトします<br />
define('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK', 0); // 1 = Disabled  この行を追加します<br />

これで、ハイライト表示が可能になるが、見映えを改善するため
pukiwiki 内の、skin/sh/styles にある「shCore.css」に次の変更を加えます。

(1) 表示領域の右側に、無条件に縦スクロールバーが表示されるので
それを表示しないようにする

55行目付近

<br />
.syntaxhighlighter {<br />
  width: 100% !important;<br />
  margin: 1em 0 1em 0 !important;<br />
  position: relative !important;<br />
  overflow: auto !important;<br />
  font-size: 1em !important;<br />
  overflow-y: hidden !important;  /* この行を追加する */<br />
}<br />

(2) フォントスタイルを変更する

47行目付近

<br />
font-family: &quot;Consolas&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important;<br />


<br />
font-family: &quot;Meiry UI&quot;,メイリオ,&quot;Consolas&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important;<br />

好みのフォントを追加する。

【使い方】

<br />
#sh(brush){{</p>
<p>ここにコードを配置する</p>
<p>}}<br />

brush の種類は、こちら を見てください。

UTF-8へのコード変換

コードを変換(UTF-8へ)

ubuntu(bash)において、拡張子が .html のファイルのエンコードをEUCからUTF-8へ変換する。

<br />
find -name &quot;*.html&quot; | xargs nkf --overwrite -w<br />

文字コード

  • -j : ISO-2022-JP
  • -s : Shify-JIS
  • -e : EUC-JP
  • -w : UTF-8

(注)nkfのインストール方法は次の通り。

<br />
sudo apt-get install nkf<br />

「charset=euc-jp」を含む行の削除

<br />
# 3行目を削除し上書き保存する<br />
sed -i -e &quot;3d&quot; *.html</p>
<p># 複数行を削除する場合の例<br />
# 5~10行目を削除し上書き保存する<br />
sed -i -e &quot;5,10d&quot; *.html<br />

「charset=”UTF-8″」を追加

<br />
# 3行目に追加する<br />
sed -i -e '3i &lt;meta charset=&quot;utf-8&quot;&gt;' *.html</p>
<p># PHPのDOMを使用する場合は次のようにする<br />
sed -i -e '3i &lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;' *.html<br />