1Text::LineFold(3)     User Contributed Perl Documentation    Text::LineFold(3)
2
3
4

NAME

6       Text::LineFold - Line Folding for Plain Text
7

SYNOPSIS

9           use Text::LineFold;
10           $lf = Text::LineFold->new();
11
12           # Fold lines
13           $folded = $lf->fold($string, 'PLAIN');
14           $indented = $lf->fold(' ' x 8, ' ' x 4, $string);
15
16           # Unfold lines
17           $unfolded = $lf->unfold($string, 'FIXED');
18

DESCRIPTION

20       Text::LineFold folds or unfolds lines of plain text.  As it mainly
21       focuses on plain text e-mail messages, RFC 3676 flowed format is also
22       supported.
23
24   Public Interface
25       new ([KEY => VALUE, ...])
26           Constructor.  About KEY => VALUE pairs see config method.
27
28       $self->config (KEY)
29       $self->config ([KEY => VAL, ...])
30           Instance method.  Get or update configuration.  Following KEY =>
31           VALUE pairs may be specified.
32
33           Charset => CHARSET
34               Character set that is used to encode string.  It may be string
35               or MIME::Charset object.  Default is "UTF-8".
36
37           Language => LANGUAGE
38               Along with Charset option, this may be used to define
39               language/region context.  Default is "XX".  See also "Context"
40               in Unicode::LineBreak option.
41
42           Newline => STRING
43               String to be used for newline sequence.  Default is "\n".
44
45           OutputCharset => CHARSET
46               Character set that is used to encode result of fold()/unfold().
47               It may be string or MIME::Charset object.  If a special value
48               "_UNICODE_" is specified, result will be Unicode string.
49               Default is the value of Charset option.
50
51           TabSize => NUMBER
52               Column width of tab stops.  When 0 is specified, tab stops are
53               ignored.  Default is 8.
54
55           BreakIndent
56           CharMax
57           ColMax
58           ColMin
59           ComplexBreaking
60           EAWidth
61           HangulAsAL
62           LBClass
63           LegacyCM
64           Prep
65           Urgent
66               See "Options" in Unicode::LineBreak.
67
68       $self->fold (STRING, [METHOD])
69       $self->fold (INITIAL_TAB, SUBSEQUENT_TAB, STRING, ...)
70           Instance method.  fold() folds lines of string STRING and returns
71           it.  Surplus SPACEs and horizontal tabs at end of line are removed,
72           newline sequences are replaced by that specified by Newline option
73           and newline is appended at end of text if it does not exist.
74           Horizontal tabs are treated as tab stops according to TabSize
75           option.
76
77           By the first style, following options may be specified for METHOD
78           argument.
79
80           "FIXED"
81               Lines preceded by ">" won't be folded.  Paragraphs are
82               separated by empty line.
83
84           "FLOWED"
85               "Format=Flowed; DelSp=Yes" formatting defined by RFC 3676.
86
87           "PLAIN"
88               Default method.  All lines are folded.
89
90           Second style is similar to "wrap()" in Text::Wrap.  All lines are
91           folded.  INITIAL_TAB is inserted at beginning of paragraphs and
92           SUBSEQUENT_TAB at beginning of other broken lines.
93
94       $self->unfold (STRING, METHOD)
95           Conjunct folded paragraphs of string STRING and returns it.
96
97           Following options may be specified for METHOD argument.
98
99           "FIXED"
100               Default method.  Lines preceded by ">" won't be conjuncted.
101               Treat empty line as paragraph separator.
102
103           "FLOWED"
104               Unfold "Format=Flowed; DelSp=Yes" formatting defined by RFC
105               3676.
106
107           "FLOWEDSP"
108               Unfold "Format=Flowed; DelSp=No" formatting defined by RFC
109               3676.
110

BUGS

112       Please report bugs or buggy behaviors to developer.
113
114       CPAN Request Tracker:
115       <http://rt.cpan.org/Public/Dist/Display.html?Name=Unicode-LineBreak>.
116

VERSION

118       Consult $VERSION variable.
119

SEE ALSO

121       Unicode::LineBreak, Text::Wrap.
122

AUTHOR

124       Copyright (C) 2009-2012 Hatuka*nezumi - IKEDA Soji
125       <hatuka(at)nezumi.nu>.
126
127       This program is free software; you can redistribute it and/or modify it
128       under the same terms as Perl itself.
129
130
131
132perl v5.36.0                      2022-07-22                 Text::LineFold(3)
Impressum