SVN commit 703986 by mitchell: Fix Czech character-to-ASCII translation for Generic Media Devices. Patch by Mate(j Laitl <strohel@gmail.com>. BUG: 149125 M +13 -4 src/app.cpp --- amarok/src/app.cpp~ 2007-08-07 19:48:28.000000000 +0200 +++ amarok/src/app.cpp 2007-08-26 16:22:22.000000000 +0200 @@ -1355,18 +1355,27 @@ result.replace( QChar(0x00fd), "y" ).replace( QChar(0x00dd), "Y" ); result.replace( QChar(0x00f1), "n" ).replace( QChar(0x00d1), "N" ); + // czech letters with carons + result.replace( QChar(0x0161), "s" ).replace( QChar(0x0160), "S" ); + result.replace( QChar(0x010d), "c" ).replace( QChar(0x010c), "C" ); + result.replace( QChar(0x0159), "r" ).replace( QChar(0x0158), "R" ); + result.replace( QChar(0x017e), "z" ).replace( QChar(0x017d), "Z" ); + result.replace( QChar(0x0165), "t" ).replace( QChar(0x0164), "T" ); + result.replace( QChar(0x0148), "n" ).replace( QChar(0x0147), "N" ); + result.replace( QChar(0x010f), "d" ).replace( QChar(0x010e), "D" ); + // accented vowels QChar a[] = { 'a', 0xe0,0xe1,0xe2,0xe3,0xe5, 0 }; QChar A[] = { 'A', 0xc0,0xc1,0xc2,0xc3,0xc5, 0 }; - QChar E[] = { 'e', 0xe8,0xe9,0xea,0xeb, 0 }; - QChar e[] = { 'E', 0xc8,0xc9,0xca,0xcb, 0 }; - QChar i[] = { 'i', 0xec,0xed,0xee,0xef, 0 }; + QChar e[] = { 'e', 0xe8,0xe9,0xea,0xeb,0x11b, 0 }; + QChar E[] = { 'E', 0xc8,0xc9,0xca,0xcb,0x11a, 0 }; + QChar i[] = { 'i', 0xec,0xed,0xee,0xef, 0 }; QChar I[] = { 'I', 0xcc,0xcd,0xce,0xcf, 0 }; QChar o[] = { 'o', 0xf2,0xf3,0xf4,0xf5,0xf8, 0 }; QChar O[] = { 'O', 0xd2,0xd3,0xd4,0xd5,0xd8, 0 }; - QChar u[] = { 'u', 0xf9,0xfa,0xfb, 0 }; - QChar U[] = { 'U', 0xd9,0xda,0xdb, 0 }; - QChar nul[] = { 0 }; + QChar u[] = { 'u', 0xf9,0xfa,0xfb,0x16f, 0 }; + QChar U[] = { 'U', 0xd9,0xda,0xdb,0x16e, 0 }; + QChar nul[] = { 0 }; QChar *replacements[] = { a, A, e, E, i, I, o, O, u, U, nul }; for( uint i = 0; i < result.length(); i++ )