|
Namazu for hns による簡易全文検索 詳しくは 詳細指定/ヘルプを参照して下さい |
||||||||||||||||||||||||||||||||||||||||||||
2008年06月14日(土) 旧暦 [n年日記] [更新:"2008/06/15 02:19:28"]#1 [Namazu] (File::MMagic) $magic->addMagicEntry の設定方法
恥ずかしながら、
実は namazu に filter を追加する時の
addMagicEntry の意味が良く分っていなかった。
sub add_magic ($) { my ($magic) = @_; # See perldoc File::MMagic or man 5 magic for the syntax of following line. # If the first line starts with <HTML or <html, it will be recognaized as # text/html; x-type=hoge $magic->addMagicEntry("1\tstring/c\tHTML\ttext/html; x-type=hoge"); return; }これは上の注に書いたように File::MMagic の説明を perldoc File::MMagic で見る か、更にその中に書いてある man 5 magic をすれば分る話で、 offset type (pattern) messageを" の場合には \t" か TAB で、また 'の場合なら TAB で' 区切って書く、というもの だということがやっと分った。もっともずうっと昔に mhonarch の例を見て、 見よう見真似で書いていたことはあるのだけれど。 上に示した例だと、<HTML あるいは <html と書いてあることを期待しているもので、 offset 1 なので二文字目から、 /c が付いているので大小文字の区別なく、 HTML という文字があれば(全て) text/html; x-type=hoge という文字を表示する(返す)、 という意味になる。実はこの場合には、全ての HTML 形式は x-type=hoge という形で 処理をしたい、ということ。追加した filter に、次のように書いておくと、 この magic 判定に合った場合には、ここに来るようになる。 sub mediatype() { return ('text/html; x-type=hoge'); } ( つっこみ )
|
最近の日記 2024年03月10日 ・停電 (瞬電) 2024年03月03日 ・the second try on bare-metal ・useradd 2024年02月29日 ・opendkim and senmail 2024年01月24日 ・chat/iam 0.0.8 2024年01月21日 ・uselocale vs setlocale (textproc/R-readxl) | ||