差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン次のリビジョン両方とも次のリビジョン | ||
dokuwiki:localize [2005/12/08 18:41] – osamu | dokuwiki:localize [2007/07/29 12:14] – osamu | ||
---|---|---|---|
行 1: | 行 1: | ||
====== DokuWikiの日本語対応 ====== | ====== DokuWikiの日本語対応 ====== | ||
- | [[doku> | + | [[doku> |
<code php> | <code php> | ||
$conf[' | $conf[' | ||
</ | </ | ||
- | と記述すると、ユーザーインターフェースの文字列などは日本語になる。 | + | と記述されて、ユーザーインターフェースの文字列などは日本語になる。 |
機能面での日本語対応を強化するために、次の改造を加える。 | 機能面での日本語対応を強化するために、次の改造を加える。 | ||
行 72: | 行 72: | ||
^D</ | ^D</ | ||
のように、入力した文字が分かち書きされて表示されればOK。 | のように、入力した文字が分かち書きされて表示されればOK。 | ||
+ | |||
行 93: | 行 94: | ||
function idx_getPageWords($page)の | function idx_getPageWords($page)の | ||
<code php> | <code php> | ||
- | | + | |
</ | </ | ||
- | の後ろに | + | と |
+ | <code php> | ||
+ | $body = strtr($body, | ||
+ | </ | ||
+ | の間に | ||
<code php> | <code php> | ||
| | ||
行 150: | 行 155: | ||
を追加。 | を追加。 | ||
- | //2005-12-8 - Mecabのプロセスがハングアップして残ってしまうのを避けるために'' | + | DokuWikiの最近のバージョンでは、日本語を含むアジア圏の文字を1文字1単語とみなして検索する修正が入っているが、これを使うと例えば「文字を探す」で検索すると「文」「字」「を」「探」「す」のすべての文字が検索結果でハイライトされたりして具合がよくない。上記の修正を加えたときは、idx_tokenizer($string,& |
+ | <code php> | ||
+ | $asia = @preg_replace('/ | ||
+ | if(!is_null($asia)) $word = $asia; //recover from regexp failure | ||
+ | </ | ||
+ | という2行をコメントアウトする。 | ||
+ | また、indexer.phpにwordlen()という関数があるが、これも同じくアジア圏の文字は1文字1単語とみなす処理が入っているので | ||
+ | <code php> | ||
+ | if(preg_match('/' | ||
+ | $l += ord($w) - 0xE1; // Lead bytes from 0xE2-0xEF | ||
+ | </ | ||
+ | の2行もコメントアウトする。 | ||
+ | |||
+ | //2005-12-8 - Mecabのプロセスがハングアップして残ってしまうのを避けるために'' | ||
+ | //2007-7-29 - DokuWikiの最近のバージョンにあわせて、修正箇所の説明を変更// | ||
==== 全文検索インデクサーの不具合修正 ==== | ==== 全文検索インデクサーの不具合修正 ==== | ||
行 168: | 行 188: | ||
http:// | http:// | ||
- | + | // 追記: この不具合は、現在配布されているバージョンでは修正されています。// |