NAME Text::HikiDoc - 「テキスト→HTML」変換ツール 'HikiDoc' の Perl による実装 SYNOPSIS use Text::HikiDoc; # $text = '!Title'; # $html = '

Title

'; $obj = Text::HikiDoc->new(); $html = $obj->to_html($text); or $obj = Text::HikiDoc->new($text); $html = $obj->to_html(); # $text = "!Title\n----\n!!SubTitle"; # $html = "

Title

\n
\n

SubTitle

"; $obj = Text::HikiDoc->new({ string => $text, level => 2, empty_element_suffix => ' />', br_mode => 'true', table_border => 'false', }); or $obj = Text::HikiDoc->new($text, 2, ' />', 'true', 'false'); $html = $obj->to_html(); # $text = "!Title\n----\n!!SubTitle\nhogehoge{{br}}fugafuga"; # $html = "

Title

\n
\n

SubTitle

\n

hogehoge
fugafuga

\n"; $obj = Text::HikiDoc->new(); $obj->enable_plugin('br'); $html = $obj->to_html($text); $obj->enable_plugin('br','ins'); @plugins = $obj->plugin_list; # br, ins $obj->is_enabled('br'); # 1 $obj->is_enabled('pr'); # 0 DESCRIPTION 'HikiDoc' は「テキスト→ HTML」変換ツールです。書きやすく読みやすい 文法の テキストをまともな HTML (や XHTML) に変換します。 オリジナルの 'HikiDoc' は Ruby による実装です。 本ライブラリは、Pure Perl による 'HikiDoc' の実装です。オリジナルの 'HikiDoc' と互換性を保っています。 Methods new HikiDoc オブジェクトを生成します。下記のパラメータを指定できます。 string 変換するテキストデータです。 level

タグに変換する際のレベル指定です。デフォルトは 1 です。 2 を設定すれば、HTML変換時

から始めます。 empty_element_suffix 閉タグがないタグ (

など) の閉じ方を指定します。デフォ ルトは「 />」です。
のようになります。
としたい場合は 「>」を設定してください。 br_mode br_mode を「true」にすると、

内の改行を
に変換します。 デフォルトは「false」です。 このパラメータは、本ライブラリ独自の拡張です。 table_border table_border を「true」にすると に、「false」 にすると
に変換します。デフォルトは「true」です。 このパラメータは、本ライブラリ独自の拡張です。 to_html HTML に変換します。 string 変換するテキストデータです。もし new と to_html の両方で string を設定した場合は、to_html の方が優先されます。 enable_plugin(@args) プラグインを有効にします。「@args」はプラグインの名前リストです plugin_list 有効になっているプラグインの名前リストを返します is_enabled($str) プラグイン $str が有効かどうか 1 か 0 で返します。有効なら 1 を返し ます Plugin Text::HikiDoc はプラグインによる拡張が可能です。enable_plugin() を 使って、プラグインを有効にできます Text::HikiDoc::Plugin::aa {{aa " (__) (oo) /-------\/ / | || * ||----|| ~~ ~~ "}} を下記のように変換します
                       (__)
                      (oo)
               /-------\/
              / |     ||
             *  ||----||
                ~~    ~~
          
Text::HikiDoc::Plugin::texthighlight か Text::HikiDoc::Plugin::vimcolor が有効なら、下記のように書く事もできます <<< aa (__) (oo) /-------\/ / | || * ||----|| ~~ ~~ >>> Text::HikiDoc::Plugin::br {{br}} を下記のように変換します
Text::HikiDoc::Plugin::e {{e('hearts')}} {{e('9829')}} を下記のように変換します ♥ ♥ Text::HikiDoc::Plugin::ins {{ins 'insert part'}} を下記のように変換します insert part Text::HikiDoc::Plugin::sub H{{sub('2')}}O を下記のように変換します H2O Text::HikiDoc::Plugin::sup 2{{sup(3)}}=8 を下記のように変換します 23=8 Text::HikiDoc::Plugin::texthighlight pre に、Text::Highlight を使ったシンタックスハイライトを追加します 下記の表記は、Perl のソースコードとしてハイライトされます。 「<<< Perl」のかわりに「<<<」と記述すれば、ハイライトされない通常 の pre になります <<< Perl sub dummy { $string = shift; $string =~ /$PLUGIN_RE/; print "s:$string\tm:$1\ta:$2\n"; $a = $2; $a =~ s/^\s*(.*)\s*$/$1/; if ( $a =~ /($PLUGIN_RE)/ ) { &hoge($a); } return $string; } >>> NOTE: このプラグインの実装方法は将来変わるかもしれません Text::HikiDoc::Plugin::vimcolor pre に、Text::VimColor を使ったシンタックスハイライトを追加します NOTE: このプラグインの実装方法は将来変わるかもしれません SEE ALSO 本家 'HikiDoc' サイト http://http://projects.netlab.jp/hikidoc/ Text::HikiDoc::Plugin Text::HikiDoc::Plugin::aa Text::HikiDoc::Plugin::br Text::HikiDoc::Plugin::e Text::HikiDoc::Plugin::ins Text::HikiDoc::Plugin::sub Text::HikiDoc::Plugin::sup Text::HikiDoc::Plugin::texthighlight Text::HikiDoc::Plugin::vimcolor AUTHORS オリジナルの 'HikiDoc' はかずひこ氏 によって 作られました。 本ライブラリの本リリースは、川端 一道 (Higemaru) によって作られました。 http://haro.jp/ COPYRIGHT AND LICENSE This library 'HikiDoc.pm' is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Copyright (C) 2006- Kawabata, Kazumichi (Higemaru)