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