summaryrefslogtreecommitdiffstats
path: root/upstream/mageia-cauldron/man1/piconv.1
blob: e0160cc72119a6bc797d9b4c7afef7ce12e47d66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
.    if \nF \{\
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.        if !\nF==2 \{\
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "PICONV 1"
.TH PICONV 1 2023-12-15 "perl v5.38.2" "Perl Programmers Reference Guide"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH NAME
piconv \-\- iconv(1), reinvented in perl
.SH SYNOPSIS
.IX Header "SYNOPSIS"
.Vb 6
\&  piconv [\-f from_encoding] [\-t to_encoding]
\&         [\-p|\-\-perlqq|\-\-htmlcref|\-\-xmlcref] [\-C N|\-c] [\-D] [\-S scheme]
\&         [\-s string|file...]
\&  piconv \-l
\&  piconv \-r encoding_alias
\&  piconv \-h
.Ve
.SH DESCRIPTION
.IX Header "DESCRIPTION"
\&\fBpiconv\fR is perl version of \fBiconv\fR, a character encoding converter
widely available for various Unixen today.  This script was primarily
a technology demonstrator for Perl 5.8.0, but you can use piconv in the
place of iconv for virtually any case.
.PP
piconv converts the character encoding of either STDIN or files
specified in the argument and prints out to STDOUT.
.PP
Here is the list of options.  Some options can be in short format (\-f)
or long (\-\-from) one.
.IP "\-f,\-\-from \fIfrom_encoding\fR" 4
.IX Item "-f,--from from_encoding"
Specifies the encoding you are converting from.  Unlike \fBiconv\fR,
this option can be omitted.  In such cases, the current locale is used.
.IP "\-t,\-\-to \fIto_encoding\fR" 4
.IX Item "-t,--to to_encoding"
Specifies the encoding you are converting to.  Unlike \fBiconv\fR,
this option can be omitted.  In such cases, the current locale is used.
.Sp
Therefore, when both \-f and \-t are omitted, \fBpiconv\fR just acts
like \fBcat\fR.
.IP "\-s,\-\-string \fIstring\fR" 4
.IX Item "-s,--string string"
uses \fIstring\fR instead of file for the source of text.
.IP \-l,\-\-list 4
.IX Item "-l,--list"
Lists all available encodings, one per line, in case-insensitive
order.  Note that only the canonical names are listed; many aliases
exist.  For example, the names are case-insensitive, and many standard
and common aliases work, such as "latin1" for "ISO\-8859\-1", or "ibm850"
instead of "cp850", or "winlatin1" for "cp1252".  See Encode::Supported
for a full discussion.
.IP "\-r,\-\-resolve \fIencoding_alias\fR" 4
.IX Item "-r,--resolve encoding_alias"
Resolve \fIencoding_alias\fR to Encode canonical encoding name.
.IP "\-C,\-\-check \fIN\fR" 4
.IX Item "-C,--check N"
Check the validity of the stream if \fIN\fR = 1.  When \fIN\fR = \-1, something
interesting happens when it encounters an invalid character.
.IP \-c 4
.IX Item "-c"
Same as \f(CW\*(C`\-C 1\*(C'\fR.
.IP \-p,\-\-perlqq 4
.IX Item "-p,--perlqq"
Transliterate characters missing in encoding to \ex{HHHH} where HHHH is the
hexadecimal Unicode code point.
.IP \-\-htmlcref 4
.IX Item "--htmlcref"
Transliterate characters missing in encoding to &#NNN; where NNN is the
decimal Unicode code point.
.IP \-\-xmlcref 4
.IX Item "--xmlcref"
Transliterate characters missing in encoding to &#xHHHH; where HHHH is the
hexadecimal Unicode code point.
.IP \-h,\-\-help 4
.IX Item "-h,--help"
Show usage.
.IP \-D,\-\-debug 4
.IX Item "-D,--debug"
Invokes debugging mode.  Primarily for Encode hackers.
.IP "\-S,\-\-scheme \fIscheme\fR" 4
.IX Item "-S,--scheme scheme"
Selects which scheme is to be used for conversion.  Available schemes
are as follows:
.RS 4
.IP from_to 4
.IX Item "from_to"
Uses Encode::from_to for conversion.  This is the default.
.IP decode_encode 4
.IX Item "decode_encode"
Input strings are \fBdecode()\fRd then \fBencode()\fRd.  A straight two-step
implementation.
.IP perlio 4
.IX Item "perlio"
The new perlIO layer is used.  NI\-S' favorite.
.Sp
You should use this option if you are using UTF\-16 and others which
linefeed is not $/.
.RE
.RS 4
.Sp
Like the \fI\-D\fR option, this is also for Encode hackers.
.RE
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fBiconv\fR\|(1)
\&\fBlocale\fR\|(3)
Encode
Encode::Supported
Encode::Alias
PerlIO