Bug 10579

Summary: Can't encode to UTF-8 without --nosmart
Product: Sisyphus Reporter: Evgenii Terechkov <evg>
Component: convmvAssignee: 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
5.8.7 (Encode 2.10), когда ВСЕ имена считаются уже перекодированными в UTF-8,
обойдена в версий 1.09. Однако оно наблюдается у нас в такой конфигураций:

~$ R -q convmv perl-base perl-Encode perl-Unicode-Normalize
convmv-1.10-alt0.1
perl-base-5.8.8-alt5
perl-Encode-2.18-alt1
perl-Unicode-Normalize-1.01-alt1
Comment 1 Vitaly Lipatov 2007-01-20 11:12:16 MSK
Проверьте пожалуйста с
perl-base-5.8.8-alt6
Comment 2 Vitaly Lipatov 2007-01-20 11:27:33 MSK
Предупреждение  с сайта таково:
Perl 5.8.7 seems to have a broken decode_utf8() function
Comment 3 Vitaly Lipatov 2007-01-27 17:43:28 MSK
искания автора выглядят так:
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 :)
Comment 4 Vitaly Lipatov 2007-01-27 17:44:51 MSK
Если что, здесь документация:
http://www.ayni.com/perldoc/perl5.8.0/pod/perluniintro.html
Comment 5 Vitaly Lipatov 2008-05-29 17:07:32 MSD
А что сейчас?
Comment 6 Evgenii Terechkov 2008-05-30 18:19:56 MSD
Не знаю, мне уже давно проверять не на чём. :-)

Замнём для ясности.
Comment 7 Michael Shigorin 2008-12-14 20:22:57 MSK
Ну это не заминание, а будет на чём -- проверь 1.14, что ли. :)
Comment 8 Evgenii Terechkov 2008-12-14 21:19:51 MSK
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
мама_мыла_раму