[OSM-talk] Rendering in a non-default language
Jon Burgess
jburgess777 at googlemail.com
Thu Jan 31 18:56:08 GMT 2008
On Thu, 2008-01-31 at 16:21 +0000, Chris Jones wrote:
> Moshe Sayag wrote:
> > Hi Everyone,
> >
> > I am interested in rendering a map with the street names and places
> > printed in Hebrew.
> >
> > So for example, if there is a place with:
> > name=Jerusalem
> > name:en=Jerusalem
> > name:he=ירושלים
> >
> > I want "ירושלים" to be printed, and only if "name:he" is not
> > specified, default to "name".
> >
> > Can this be achieved? How?
> This is exactly what I do for cyosm - http://sucs.org/~rollercow/cyosm/
>
> For that I follow the steps listed at -
> http://wiki.openstreetmap.org/index.php/Mapnik
>
> 2 changes....
>
> 1) Build osm2pgsql From source but before you make this change...
>
> $ svn diff
> Index: output-pgsql.c
> ===================================================================
> --- output-pgsql.c (revision 6728)
> +++ output-pgsql.c (working copy)
> @@ -72,6 +72,7 @@
> {"military", "text", 1},
> {"motorcar", "text", 0},
> {"name", "text", 0},
> + {"name:cy", "text", 0},
> {"natural", "text", 1},
> {"oneway", "text", 0},
> {"place", "text", 0},
>
> 2) Before you generate any tiles use the following sql to populate the
> name field with name:cy if it exists
>
> UPDATE planet_osm_line SET name = "name:cy" where "name:cy" is not null;
> UPDATE planet_osm_point SET name = "name:cy" where "name:cy" is not null;
> UPDATE planet_osm_polygon SET name = "name:cy" where "name:cy" is not null;
> UPDATE planet_osm_roads SET name = "name:cy" where "name:cy" is not null;
>
> There may be an easier way... defiantly more elegant way, making
> osm2pgsql do it all its self perhaps but I'm lazy and this works :)
>
I've got this on my osm2pgsql TODO list.
Jon
More information about the talk
mailing list