… | |
… | |
2 | Convert::UUlib - Perl interface to the uulib library (a.k.a. |
2 | Convert::UUlib - Perl interface to the uulib library (a.k.a. |
3 | uudeview/uuenview). |
3 | uudeview/uuenview). |
4 | |
4 | |
5 | SYNOPSIS |
5 | SYNOPSIS |
6 | use Convert::UUlib ':all'; |
6 | use Convert::UUlib ':all'; |
7 | |
7 | |
8 | # read all the files named on the commandline and decode them |
8 | # read all the files named on the commandline and decode them |
9 | # into the CURRENT directory. See below for a longer example. |
9 | # into the CURRENT directory. See below for a longer example. |
10 | LoadFile $_ for @ARGV; |
10 | LoadFile $_ for @ARGV; |
11 | for (my $i = 0; my $uu = GetFileListItem $i; $i++) { |
11 | for (my $i = 0; my $uu = GetFileListItem $i; $i++) { |
12 | if ($uu->state & FILE_OK) { |
12 | if ($uu->state & FILE_OK) { |
13 | $uu->decode; |
13 | $uu->decode; |
… | |
… | |
55 | OPT_TINYB64 detect short B64 outside of Mime |
55 | OPT_TINYB64 detect short B64 outside of Mime |
56 | OPT_ENCEXT extension for single-part encoded files |
56 | OPT_ENCEXT extension for single-part encoded files |
57 | OPT_REMOVE remove input files after decoding (dangerous) |
57 | OPT_REMOVE remove input files after decoding (dangerous) |
58 | OPT_MOREMIME strict MIME adherence |
58 | OPT_MOREMIME strict MIME adherence |
59 | OPT_DOTDOT ".."-unescaping has not yet been done on input files |
59 | OPT_DOTDOT ".."-unescaping has not yet been done on input files |
60 | OPT_RBUF set default read I/O buffer size in bytes *EXPERIMENTAL* |
60 | OPT_RBUF set default read I/O buffer size in bytes |
61 | OPT_WBUF set default write I/O buffer size in bytes *EXPERIMENTAL* |
61 | OPT_WBUF set default write I/O buffer size in bytes |
|
|
62 | OPT_AUTOCHECK automatically check file list after every loadfile |
62 | |
63 | |
63 | Result/Error codes |
64 | Result/Error codes |
64 | RET_OK everything went fine |
65 | RET_OK everything went fine |
65 | RET_IOERR I/O Error - examine errno |
66 | RET_IOERR I/O Error - examine errno |
66 | RET_NOMEM not enough memory |
67 | RET_NOMEM not enough memory |
… | |
… | |
142 | If you are desperate, try to call "Smerge" with increasing $pass |
143 | If you are desperate, try to call "Smerge" with increasing $pass |
143 | values, beginning at 0, to try to merge parts that usually would not |
144 | values, beginning at 0, to try to merge parts that usually would not |
144 | have been merged. |
145 | have been merged. |
145 | |
146 | |
146 | Most probably this will result in garbled files, so never do this by |
147 | Most probably this will result in garbled files, so never do this by |
147 | default. |
148 | default, except: |
|
|
149 | |
|
|
150 | If the "OPT_AUTOCHECK" option has been disabled (by default it is |
|
|
151 | enabled) to speed up file loading, then you *have* to call "Smerge |
|
|
152 | -1" after loading all files as an additional pre-pass (which is |
|
|
153 | normally done by "LoadFile"). |
148 | |
154 | |
149 | $item = GetFileListItem $item_number |
155 | $item = GetFileListItem $item_number |
150 | Return the $item structure for the $item_number'th found file, or |
156 | Return the $item structure for the $item_number'th found file, or |
151 | "undef" of no file with that number exists. |
157 | "undef" of no file with that number exists. |
152 | |
158 | |
… | |
… | |
302 | # the following non-trivial FileNameCallback takes care |
308 | # the following non-trivial FileNameCallback takes care |
303 | # of some subject lines not detected properly by uulib: |
309 | # of some subject lines not detected properly by uulib: |
304 | SetFileNameCallback sub { |
310 | SetFileNameCallback sub { |
305 | return unless $_[1]; # skip "Re:"-plies et al. |
311 | return unless $_[1]; # skip "Re:"-plies et al. |
306 | local $_ = $_[0]; |
312 | local $_ = $_[0]; |
307 | |
|
|
308 | return $1 if /(\S+\s+IMG_\d+.jpg)/i; |
|
|
309 | |
313 | |
310 | # the following rules are rather effective on some newsgroups, |
314 | # the following rules are rather effective on some newsgroups, |
311 | # like alt.binaries.games.anime, where non-mime, uuencoded data |
315 | # like alt.binaries.games.anime, where non-mime, uuencoded data |
312 | # is very common |
316 | # is very common |
313 | |
317 | |