| Summary: | Can't encode to UTF-8 without --nosmart | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Evgenii Terechkov <evg> |
| Component: | convmv | Assignee: | Vitaly Lipatov <lav> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | major | ||
| Priority: | P2 | CC: | at, lav, mike |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
| URL: | http://freshmeat.net/projects/convmv/ | ||
| Bug Depends on: | |||
| Bug Blocks: | 10446 | ||
|
Description
Evgenii Terechkov
2007-01-01 18:07:21 MSK
Проверьте пожалуйста с perl-base-5.8.8-alt6 Предупреждение с сайта таково: Perl 5.8.7 seems to have a broken decode_utf8() function искания автора выглядят так:
sub this_is_valid_utf8() {
my $string = shift;
# until 1.08 I used to used decode_utf8() but see perl bug #37757
(perl 5.8.7/8)
# let's look for a different way to find valid utf-8 ...:
#utf8::decode() is experimental and might disappear says utf8(3pm):
#if (utf8::decode($string) != undef) {
# Encode::decode does not work as one might expect:
#if (Encode::decode(utf8,$string,Encode::FB_QUIET) == undef) {
# from_to() works for all Perl versions (at the moment ;)
if (from_to($string,utf8,utf8,Encode::FB_QUIET) == undef) {
return undef;
} else {
return 1;
}
}
Поскольку perl оказывается глобально сломанным на предмет определения того
факта, что строка в UTF8 (или же на предмет понимания кем-либо как это
определить) предлагаю заинтересованным лицам повесить баг на perl :)
Если что, здесь документация: http://www.ayni.com/perldoc/perl5.8.0/pod/perluniintro.html А что сейчас? Не знаю, мне уже давно проверять не на чём. :-) Замнём для ясности. Ну это не заминание, а будет на чём -- проверь 1.14, что ли. :) evg@evg ~/tmp/convmv $ convmv --notest -f koi8-r -t utf-8 $'\315'$'\301'$'\315'$'\301'_$'\315'$'\331'$'\314'$'\301'_$'\322'$'\301'$'\315'$'\325' mv "./��_��_��" "./мама_мыла_раму" Ready! evg@evg ~/tmp/convmv $ ls мама_мыла_раму |