Fix #940 (Cyrrilic file names on device)

This commit is contained in:
Kovid Goyal 2008-10-08 04:10:03 -07:00
parent d2e2723d4f
commit 92ba788069

View File

@ -6,71 +6,82 @@ meaning as possible.
import re, string import re, string
MAP = { MAP = {
u"" : u"'", u"" : "'",
u"" : u"'", u"" : "'",
u"«" : u'"', u"«" : '"',
u"»" : u'"', u"»" : '"',
u"" : u"...", u"" : "...",
u"" : u"#", u"" : "#",
u"Щ" : u"Sch", u"Щ" : "Shh",
u"Щ" : u"SCH", u"Ё" : "Jo",
u"Ё" : u"Yo", u"Ж" : "Zh",
u"Ё" : u"YO", u"Ц" : "C",
u"Ж" : u"Zh", u"Ч" : "Ch",
u"Ж" : u"ZH", u"Ш" : "Sh",
u"Ц" : u"Ts", u"Ы" : "Y",
u"Ц" : u"TS", u"Ю" : "Ju",
u"Ч" : u"Ch", u"Я" : "Ja",
u"Ч" : u"CH", u"Б" : "B",
u"Ш" : u"Sh", u"Г" : "G",
u"Ш" : u"SH", u"Д" : "D",
u"Ы" : u"Yi", u"И" : "I",
u"Ы" : u"YI", u"Й" : "J",
u"Ю" : u"Yu", u"К" : "K",
u"Ю" : u"YU", u"Л" : "L",
u"Я" : u"Ya", u"П" : "P",
u"Я" : u"YA", u"Ф" : "F",
u"Б" : u"B", u"Э" : "E",
u"Г" : u"G", u"Ъ" : "`",
u"Д" : u"D", u"Ь" : "'",
u"И" : u"I", u"щ" : "shh",
u"Й" : u"J", u"ё" : "jo",
u"К" : u"K", u"ж" : "zh",
u"Л" : u"L", u"ц" : "c",
u"П" : u"P", u"ч" : "ch",
u"Ф" : u"F", u"ш" : "sh",
u"Э" : u"E", u"ы" : "y",
u"Ъ" : u"`", u"ю" : "ju",
u"Ь" : u"'", u"я" : "ja",
u"щ" : u"sch", u"б" : "b",
u"ё" : u"yo", u"в" : "v",
u"ж" : u"zh", u"г" : "g",
u"ц" : u"ts", u"д" : "d",
u"ч" : u"ch", u"з" : "z",
u"ш" : u"sh", u"и" : "i",
u"ы" : u"yi", u"й" : "j",
u"ю" : u"yu", u"к" : "k",
u"я" : u"ya", u"л" : "l",
u"б" : u"b", u"м" : "m",
u"в" : u"v", u"н" : "n",
u"г" : u"g", u"о" : "o",
u"д" : u"d", u"п" : "p",
u"з" : u"z", u"т" : "t",
u"и" : u"i", u"ф" : "f",
u"й" : u"j", u"э" : "e",
u"к" : u"k", u"ъ" : "`",
u"л" : u"l", u"ь" : "'",
u"м" : u"m", u"А" : "A",
u"н" : u"n", u"В" : "V",
u"о" : u"o", u"Е" : "Je",
u"п" : u"p", u"З" : "Z",
u"т" : u"t", u"М" : "M",
u"ф" : u"f", u"Н" : "N",
u"э" : u"e", u"О" : "O",
u"ъ" : u"`", u"Р" : "R",
u"ь" : u"'", u"С" : "S",
u"Т" : "T",
u"У" : "U",
u"Х" : "Kh",
u"Є" : "Je",
u"Ї" : "Ji",
u"а" : "a",
u"е" : "je",
u"р" : "r",
u"с" : "s",
u"у" : "u",
u"х" : "kh",
u"є" : "je",
} #: Translation table } #: Translation table
for c in string.whitespace: for c in string.whitespace:
@ -84,4 +95,3 @@ def ascii_filename(orig):
val = ord(orig[i]) val = ord(orig[i])
buf.append('_' if val < 33 or val > 126 else orig[i]) buf.append('_' if val < 33 or val > 126 else orig[i])
return (''.join(buf)).encode('ascii') return (''.join(buf)).encode('ascii')