NAME
Text::LineFold::JA_JP - プレインテキストの行折り
SYNOPSIS
use Text::LineFold;
$lf = Text::LineFold->new();
# 行折りする
$folded = $lf->fold($string, 'PLAIN');
$indented = $lf->fold(' ' x 8, ' ' x 4, $string);
# 行折りを戻す
$unfolded = $lf->unfold($string, 'FIXED');
DESCRIPTION
Text::LineFold は、プレインテキストの行折りをしたり行折りを戻したりする。 電子メールメッセージを主眼に置いており、RFC 3676 の flowed 形式にも対応する。
公開インタフェース
- new ([KEY => VALUE, ...])
-
コンストラクタ。 KEY => VALUE の対については config メソッドを参照。
- $self->config (KEY)
- $self->config ([KEY => VAL, ...])
-
インスタンスメソッド。 設定を取得または更新する。以下の KEY => VALUE 対を指定できる。
- Charset => CHARSET
-
入力文字列を符号化しているキャラクタセット。 文字列または MIME::Charset オブジェクト。 初期値は
"UTF-8"
。 - Language => LANGUAGE
-
Charset オプションとともに、言語/地域の文脈を決めるのに使える。 初期値は
"XX"
。 "Context" in Unicode::LineBreak::JA_JP オプションも参照。 - Newline => STRING
-
改行の文字列。 初期値は
"\n"
。 - OutputCharset => CHARSET
-
fold()/unfold() の結果を符号化するキャラクタセット。 文字列または MIME::Charset オブジェクト。 特殊値
"_UNICODE_"
を指定すると、結果は Unicode 文字列となる。 初期値は Charset オプションの値。 - TabSize => NUMBER
-
タブストップの桁数。 0 を指定すると、水平タブ文字を無視する。 初期値は 8。
- CharMax
- ColMax
- ColMin
- EAWidth
- HangulAsAL
- LBClass
- LegacyCM
- Prep
- Urgent
- $self->fold (STRING, [METHOD])
- $self->fold (INITIAL_TAB, SUBSEQUENT_TAB, STRING, ...)
-
インスタンスメソッド。 文字列 STRING を行折りする。 行末の余分な空白文字や水平タブ文字を除去し、 改行の文字列を Newline オプションで指定したものに置き換え、 テキスト末尾に改行がなければ追加する。 水平タブ文字は TabSize オプションによる幅のタブストップと見なす。
ひとつめの形式では、METHOD 引数に以下のオプションを指定できる。
"FIXED"
-
">"
で始まる行は行折りしない。 段落は空行で分かたれる。 "FLOWED"
-
RFC 3676 で定義される
"Format=Flowed; DelSp=Yes"
形式。 "PLAIN"
-
初期の方法。すべての行を行折りする。
ふたつめの形式は、"wrap()" in Text::Wrap に似ている。 すべての行を行折りする。段落の先頭には INITIAL_TAB を、ほかの行の先頭には SUBSEQUENT_TAB を挿入する。
- $self->unfold (STRING, METHOD)
-
文字列 STRING の行折りされた段落をつなぎ直してそれを返す。
METHOD 引数には以下のオプションを指定できる。
BUGS
バグやバグのような動作は開発者に教えてください。
CPAN Request Tracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Unicode-LineBreak.
VERSION
$VERSION 変数を見てほしい。
このモジュールの開発版が http://hatuka.nezumi.nu/repos/Unicode-LineBreak/ にある。
SEE ALSO
Unicode::LineBreak::JA_JP, Text::Wrap.
AUTHOR
Copyright (C) 2009-2011 Hatuka*nezumi - IKEDA Soji <hatuka(at)nezumi.nu>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.