PukiWikiでの「一覧」は日本語ページ名の物は全て「日本語」というカテゴリでひとくくりになる。
これをChaSenやKAKASIの漢字→仮名変換機能を利用して、日本語ページ名の読みを取得し、一覧表示(?cmd=list)の五十音順分類に役立てる。
日本語ページ名の五十音順分類。
この機能を使用しない場合、日本語ページ名は「日本語」というカテゴリにまとめられ、その中で文字コード順に配置されるが、この機能を使用すると、日本語ページ名の1文字目のカナ順で配置されるようになる。
pukiwiki.ini.phpの以下の項目を設定することで、ChaSen、KAKASIを利用した読みの取得が可能になる。
ページ名の読みを取得するかどうかを設定する。
// ChaSen, KAKASI による、ページ名の読みの取得 (0:無効,1:有効) $pagereading_enable = 0;
デフォルトは0になっているので使用する場合は1にする。
ChaSenとKAKASIのどちらを利用するかを設定する。
// ChaSen or KAKASI //$pagereading_kanji2kana_converter = 'chasen'; $pagereading_kanji2kana_converter = 'kakasi';
デフォルトではKAKASIを選択している。
ChaSenを使用する場合はKAKASIを選択している行をエスケープし、ChaSenのエスケープを外す。
データの受け渡しに使用する文字コードを選択。
ChaSen/KAKASI が扱える文字コードを指定して下さい。PukiWiki本体の文字コード(SOURCE_ENCODING)設定とは別物です。
// ChaSen/KAKASI との受け渡しに使う漢字コード (UNIX系は EUC、Win系は SJIS が基本) $pagereading_kanji2kana_encoding = 'EUC'; //$pagereading_kanji2kana_encoding = 'SJIS';
デフォルトではEUCを選択している。
SJISを使用する場合はEUCを選択している行をエスケープし、SJISのエスケープを外す。
ChaSen、またはKAKASIのパスを設定する。
// ChaSen/KAKASI の実行ファイル (各自の環境に合わせて設定) $pagereading_chasen_path = '/usr/local/bin/chasen'; //$pagereading_chasen_path = 'c:\progra~1\chasen21\chasen.exe'; $pagereading_kakasi_path = '/usr/local/bin/kakasi'; //$pagereading_kakasi_path = 'c:\kakasi\bin\kakasi.exe';
各自の環境に合わせて設定する。
ChaSen、またはKAKASIによって取得されたページ名の格納場所を設定する。
// ページ名読みを格納したページの名前 $pagereading_config_page = ':config/PageReading';
※ChaSenのパスはデフォルトのままにしています。
UNIX系の場合
// ChaSen, KAKASI による、ページ名の読みの取得 (0:無効,1:有効) $pagereading_enable = 1; // ChaSen or KAKASI $pagereading_kanji2kana_converter = 'chasen'; //$pagereading_kanji2kana_converter = 'kakasi'; // ChaSen/KAKASI との受け渡しに使う漢字コード (UNIX系は EUC、Win系は SJIS が基本) $pagereading_kanji2kana_encoding = 'EUC'; //$pagereading_kanji2kana_encoding = 'SJIS'; // ChaSen/KAKASI の実行ファイル (各自の環境に合わせて設定) $pagereading_chasen_path = '/usr/local/bin/chasen'; //$pagereading_chasen_path = 'c:\progra~1\chasen21\chasen.exe'; //$pagereading_kakasi_path = '/usr/local/bin/kakasi'; //$pagereading_kakasi_path = 'c:\kakasi\bin\kakasi.exe'; // ページ名読みを格納したページの名前 $pagereading_config_page = ':config/PageReading';
Win系の場合
// ChaSen, KAKASI による、ページ名の読みの取得 (0:無効,1:有効) $pagereading_enable = 1; // ChaSen or KAKASI $pagereading_kanji2kana_converter = 'chasen'; //$pagereading_kanji2kana_converter = 'kakasi'; // ChaSen/KAKASI との受け渡しに使う漢字コード (UNIX系は EUC、Win系は SJIS が基本) //$pagereading_kanji2kana_encoding = 'EUC'; $pagereading_kanji2kana_encoding = 'SJIS'; // ChaSen/KAKASI の実行ファイル (各自の環境に合わせて設定) //$pagereading_chasen_path = '/usr/local/bin/chasen'; $pagereading_chasen_path = 'c:\progra~1\chasen21\chasen.exe'; //$pagereading_kakasi_path = '/usr/local/bin/kakasi'; //$pagereading_kakasi_path = 'c:\kakasi\bin\kakasi.exe'; // ページ名読みを格納したページの名前 $pagereading_config_page = ':config/PageReading';
※KAKASIのパスはデフォルトのままにしています。
UNIX系の場合
// ChaSen, KAKASI による、ページ名の読みの取得 (0:無効,1:有効) $pagereading_enable = 1; // ChaSen or KAKASI //$pagereading_kanji2kana_converter = 'chasen'; $pagereading_kanji2kana_converter = 'kakasi'; // ChaSen/KAKASI との受け渡しに使う漢字コード (UNIX系は EUC、Win系は SJIS が基本) $pagereading_kanji2kana_encoding = 'EUC'; //$pagereading_kanji2kana_encoding = 'SJIS'; // ChaSen/KAKASI の実行ファイル (各自の環境に合わせて設定) //$pagereading_chasen_path = '/usr/local/bin/chasen'; //$pagereading_chasen_path = 'c:\progra~1\chasen21\chasen.exe'; $pagereading_kakasi_path = '/usr/local/bin/kakasi'; //$pagereading_kakasi_path = 'c:\kakasi\bin\kakasi.exe'; // ページ名読みを格納したページの名前 $pagereading_config_page = ':config/PageReading';
Win系の場合
// ChaSen, KAKASI による、ページ名の読みの取得 (0:無効,1:有効) $pagereading_enable = 1; // ChaSen or KAKASI //$pagereading_kanji2kana_converter = 'chasen'; $pagereading_kanji2kana_converter = 'kakasi'; // ChaSen/KAKASI との受け渡しに使う漢字コード (UNIX系は EUC、Win系は SJIS が基本) //$pagereading_kanji2kana_encoding = 'EUC'; $pagereading_kanji2kana_encoding = 'SJIS'; // ChaSen/KAKASI の実行ファイル (各自の環境に合わせて設定) //$pagereading_chasen_path = '/usr/local/bin/chasen'; //$pagereading_chasen_path = 'c:\progra~1\chasen21\chasen.exe'; //$pagereading_kakasi_path = '/usr/local/bin/kakasi'; $pagereading_kakasi_path = 'c:\kakasi\bin\kakasi.exe'; // ページ名読みを格納したページの名前 $pagereading_config_page = ':config/PageReading';
上記の設定を施した後で、「一覧表示」をすると「:config/PageReading」というページが出来る。
それにChaSenまたはKAKASIが作成した読みが格納されている。
読みが誤っているものは、「:config/PageReading」を直接編集する。
-[[高崎]] タカサキ -[[高松]] タカマツ -[[高知]] コウチ -[[高知県]] コウチケン
「高知」を「タカチ」と読ませたい場合は
-[[高知]] タカチ
と書き換える。
現状では、見出しを分類する時に読みの先頭の一文字のみが使用されているので、「高崎」の場合は「タ」、「高知県」の場合は「コ」でも構わない。
ChaSenまたはMeCabのバージョン、及び利用する辞書(ipadic)のバージョンによって、うまく動作しない。BugTrack/496参照。
BugTrack/562を参照