ひで's

こんにちは。はじめまして!

cvs2svnでコミットログの文字化け解消を試みる

2006-09-20 17:26:52 | 備忘録(ログ)

CVSのコミットログにsjisとeucが混在している環境だったので、
svn移行時に文字化け解消にtry

cvs2svn_lib/context.pyを修正。

+++ context.py.new      2006-09-20 17:27:17.000000000 +0900
@@ -90,10 +90,16 @@
     ### like --encoding is.
     for encoding in self.encoding:
       try:
-        return unicode(value, encoding, mode).encode('utf8')
+        u = unicode(value, encoding)
       except UnicodeError:
         Log().verbose("Encoding '%s' failed for string '%s'"
                       % (encoding, value))
+        try:
+          u = unicode(value, 'japanese.euc-jp')
+        except UnicodeError:
+          Log().verbose("Encoding 'euc-jp' failed for string '%s'"% (encoding, value))
+          u = unicode(value, 'iso-8859-15')
+      return u.encode('utf-8')
     raise UnicodeError

 #python初めて触ったww

thx for http://espion.just-size.jp/archives/05/330101137.html