Hi Dave,
I agree that the rules to set a "name" are very confusing, esp. when it
comes to roads. I guess one reason is that it took a while to discover
that a map object can have 4 labels,
another point is that we don't try to explain the Garmin format in this
manual, instead we presume that the reader knows the details of the
Garmin format quite well.
Maybe it would help to add a chapter with links to
the corresponding manuals and wiki pages.
If you have the time, please propose improvements, the sources are
almost normal text files.
Reg. your questions:
Why not addabel ?
I thought you want to see the bridge name in the map. If that is the case, you have
to set mkgmap:label:1 . If you want to be able to find the bridge in address search,
you can use addlabel without problems.
Why doesn't set name='${bridge:name}' work?
Because it sets the tag name to a new /different value. If it is not followed
by a rule that uses this value to set mkgmap:label:* you will not see a change.
Gerd
From: daveswarthout@gmail.com
Date: Wed, 20 May 2015 12:09:55 -0700
Subject: Re: [mkgmap-dev] Named bridges not displaying
To: gpetermann_muenchen@hotmail.com
Thank you very much. That worked like a charm.
As for the style manual,
4.3.6. name
This sets the first label of the element but only if it is not already set. This is a helper action. The same
effect can be produced with different notations as it is shown in the following example where all three
lines have the same effect.
{name '${name} (${ref})' | '${ref}' | '${name}'}
{add mkgmap:label:1='${name} (${ref})' | '${ref}' | '${name}'}
mkgmap:label:1!=* {set mkgmap:label:1='${name} (${ref})' | '${ref}' | '${name}'}
How one would determine that this is a situation when one must assign a mkgmap label is beyond me. I could have read that description a thousand times and not figured out what to do. What's missing is WHY one would use the name directive in this way. And then, some information about the use of mkgmap:label:1 in these circumstances would be helpful too.
In scanning the manual I noticed another directive, addlabel which would assign the next available label level. Why didn't you use that? I'm thinking it's because you already knew the tags for these two bridges so you knew mkgmap:label:1 was not being used. But wouldn't addlabel be a "safer" way to go about this in the general case?
One last question: During my struggles I tried using the set command, {set name='${bridge:name}' }, to replace the name of the section of highway that crosses the bridge with the bridge name but it didn't work. Could you venture a reason for that?