典型的な使い方はこうだ。何かを始める時、wikiでページを作り、firefoxで情報を検索、使えそうなリンクをMakeLinkでwikiにリンクを貼り付ける。次に、リンク先のページを読み、使えそうな情報をwikiに書きこんでいく。
私は技術的な内容で公開してもいいwikiと仕事上の内容で公開していいwikiを使っていて、あと割と最近、個人用の非公開のwikiを作った。非公開のものは何でも書けてしまうので本当に便利である。非公開のものはアクセスできるドメインを職場と自宅のネットワークに限定し、それ以外からはパスワードを要求するようにしている。
そんなに気に入っているwikiだが1つ困った事がある。pukiwikiには、ページの一覧を参照する機能があり、ページ名の最初の一文字で分類されてページが表示される。ページ名が日本語のものは、日本語という1つのグループで表示される。まぁそれは仕方ないし実用上問題もないのだが、英字の最初の一文字が大文字と小文字で区別されてしまうのだ。
wikiを長く使っていてよくあるのが、よく似た名前のページをいくつも作ってしまうこと。内容も似ていたりする。そこで、こんな名前のページ作ったっけ?と一覧をみることが多いのだが、ページ名を大文字で始めたか小文字で始めたかなんて覚えている必要がないので、例えばFTDIというページを探すのであれば'F'と'f'の両方をチェックする必要がある。これが場所も離れていて面倒なのである。
前置きが長くなったがこれを解消するパッチを紹介する。要は大文字小文字変換関数を挿入するだけなのだが、挿入すべき場所を探すのに苦労した。共用の関数の動作を変えているが、他の場所に支障は出ていないので大丈夫だと思われる。
pukiwikiの lib/func.phpファイルを修正している。PukiWiki 1.4.7で確認した。
*** 381,387 ****
$head = $other;
}
} else {
! $head = (preg_match('/^([A-Za-z])/', $page, $matches)) ? $matches[1] :
(preg_match('/^([ -~])/', $page, $matches) ? $symbol : $other);
}
--- 381,387 ----
$head = $other;
}
} else {
! $head = (preg_match('/^([A-Za-z])/', $page, $matches)) ? strtoupper($matches[1]) :
(preg_match('/^([ -~])/', $page, $matches) ? $symbol : $other);
}
簡単でしょ?










