logo separator

[mkgmap-dev] What about accentuated letters

From Marko Mäkelä marko.makela at iki.fi on Mon May 4 09:24:00 BST 2009

On Mon, May 04, 2009 at 09:01:49AM +0200, frmas wrote:
> Hello,
> Using the latest svn trunk code (dated may 3rd), I cannot see any longer
> accentuated letters on the map generated for my Garmin gps.

I haven’t had problems with äö with mkgmap-r1024 --latin1, but I did
notice that the UTF-8 apostrophe ’ (U+2019), properly mapped to 0x92,
is displayed as the font substitution character by the Edge 705.
It should probably be mapped to the straight single quote ' (U+0027).
I'd suggest this translation for all the funny quotes:

map U+2018..U+201B (‘’‚‛) to ' (U+0027)
map U+201C..U+201F (“”„‟) to " (U+0022)

I just tested this:

perl -e 'for($i=128;$i<256;$i++){printf "%c",$i}print "\r\n"'|
recode -f cp1252..utf8

All code points of cp1252 except 0x81, 0x8d, 0x90, 0x9d, 0x9e can be
translated into UTF-8 by GNU Recode 3.6.  (Maybe those code points
are undefined in cp1252?)

Then I created four 32-char labels in utf-8 and generated a small
map containing four POIs carrying these names:

€(81)‚ƒ„…†‡ˆ‰Š‹Œ(8d)Žž(90)‘’“”•–—˜™š›œ(9d)(9e)Ÿ
 ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿
ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞß
àáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ

The ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞß is displayed with an initial cap,
with one peculiarity: × is mapped to ÷.

The lower-case string àáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ is displayed in
all-caps.  ÿ is displayed as a black diamond, similar to the Unicode
font substitution character � (U+FFFD), but without a question mark inside.

The strings €(81)‚ƒ„…†‡ˆ‰Š‹Œ(8d)Žž(90)‘’“”•–—˜™š›œ(9d)(9e)Ÿ and
 ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ are mostly garbage (font substitution
characters).  These are the only non-� codes in the 0x80..0xbf range:

… is displayed properly as ... (ellipsis)
™ is displayed properly as TM (trade mark)
¡ is displayed properly as inverted !
© is displayed properly as (C) (copyright sign)
® is displayed properly as (R) (registered trademark sign)
° is displayed properly as degree sign
± is displayed properly as plus-minus sign
¿ is displayed properly as inverted ?
º (0xba, U+00BA) is displayed incorrectly as blank (should be
the ordinal, superscript underlined 'o')

By checking the gmapsupp.img file, I found these translation errors
in mkgmap-r1029 --latin1:

ƒ is translated into '?' (0x3f) instead of 0x83
ž is translated into 'Ž' (0x8e) instead of 0x8f
µ is translated into '?' (0x3f) instead of 0xb5
ß is translated into 'ss' (0x53 0x53) instead of 0xdf
The ß is a ligature, of the fraktur lower case s and z.
(In all-caps, it should be written as SS, e.g., STRASSE for STREET.)

	Marko



More information about the mkgmap-dev mailing list