giggls / mapnik-german-l10n

OSM map l10n functions
Other
28 stars 40 forks source link

Abkürzungen für Strassen / Orte in Französisch #22

Closed chatelao closed 4 years ago

chatelao commented 4 years ago

Guten Tag, es gibt auch im Französischen jede Menge an Abkürzungen für Orte / Strassen Prefixes:

Häufig gebraucht:

giggls commented 4 years ago

Ja klar, die gibt es noch in vielen weiteren Sprachen, siehe auch meine Vorträge, die im Wiki verlinkt sind.

Mein französisch ist aber ganz sicher nicht gut genug das selbst zu implementieren. Schau in street_abbrv.sql ich freue mich über pull-requests!

Einfach osml10n_street_abbrev_fr äquivalent zum Beispiel zu osml10n_street_abbrev_en erzeugen. Ich prüfe den fertigen Code dann gerne auf korrektes Funktionieren.

Mit sind Muttersprachler (native speakers) an dieser Stelle wichtig, denn es geht auch darum dass solche Abkürzungen überrhaupt gebräuchlich sind und das kann ich nun schon gar nicht abschätzen.

chatelao commented 4 years ago

Mein Vater ist frz. Muttersprache. Ich schaue mir die gängigen und sinnvoll möglichen Abkürzungen mit ihm an.

Sven Geggus notifications@github.com schrieb am Mo., 14. Okt. 2019, 17:04:

Ja klar, die gibt es noch in vielen weiteren Sprachen, siehe auch meine talks.

Mein französisch ist aber ganz sicher nicht gut genug das selbst zu implementieren. Schau in street_abbrv.sql https://github.com/giggls/mapnik-german-l10n/blob/master/plpgsql/street_abbrv.sql ich freue mich über pull-requests!

Einfach osml10n_street_abbrev_fr äquivalent zum Beispiel zu osml10n_street_abbrev_en erzeugen. Ich prüfe den fertigen Code dann gerne auf korrektes Funktionieren.

Mit sind Muttersprachler (native speakers) an dieser Stelle wichtig, denn es geht auch darum dass solche Abkürzungen überrhaupt gebräuchlich sind und das kann ich nun schon gar nicht abschätzen.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/giggls/mapnik-german-l10n/issues/22?email_source=notifications&email_token=AASY6XHDXWP5OGJSHQTJPNTQOSC7DA5CNFSM4JAQIIS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBFDDZQ#issuecomment-541733350, or unsubscribe https://github.com/notifications/unsubscribe-auth/AASY6XHLZKYGCQKIRWGE3RDQOSC7DANCNFSM4JAQIISQ .

chatelao commented 4 years ago

Erste Fragestellung @giggls

Wie ist mit Begriffen umzugehen, die es Englisch als auch Französisch identisch gibt, die aber anders abgekürzt werden:

Bsp.: https://www.openstreetmap.de/karte.html?zoom=18&lat=46.80203&lon=7.1506&layers=B000TT

  1. Boulevard: "Blvd." (Englisch), eigentlich "Boul"
  2. Avenue: "Ave." (Englisch), eigentlich "Av"

Gibt es eine Liste mit den dominanten Sprachen am Ort der Übersetzung, die verwendet werden könnte?

giggls commented 4 years ago

Der Code weiß nicht in welcher Sprache der lokale Name geschrieben ist. Woher auch?

Straßen sind nur ganz selten mehrsprachig getaggt. Zeige mir ein Real-World Beispiel wo der gegenwärtig verwendete Code schief geht. Es gibt eine harte Reihenfolge der Priorität lateinischer Sprachen, die genommen werden, wenn die Zielsprache nicht zur Verfügung steht: latin_langs text[] := '{"en","fr","es","pt","de"}';

chatelao commented 4 years ago

Tönt unter den gegebenen Umständen vernünftig.

Schief geht er hier in Fribourg (Im Üchtland):

giggls commented 4 years ago

Da kann man sich vielleicht eine Eigenschaft des französischen zu Nutze machen, dass es dort meist heißt: "Avenue de la ..." während es im englischen "... Avenue" ist. Also "Avenue " abkürzen als "Av. ", " Avenue" abkürzen als " Ave."

Nicht vergessen, dass die ganze Sache hier sowieso keine 100% Lösung ist. In den meisten Fällen ist die lokalisierte Version besser aber ganz sicher nicht in allen.

chatelao commented 4 years ago

Die Prä-/Postfix Unterscheidung ist eine gute Idee. Ich schaue mir das mal an. Soviel RegExp sollte ich noch hinkriegen.

dieterdreist commented 4 years ago

Am Do., 17. Okt. 2019 um 09:57 Uhr schrieb Sven Geggus < notifications@github.com>:

Da kann man sich vielleicht eine Eigenschaft des französischen zu Nutze machen, dass es dort meist heißt: "Avenue de la ..." während es im englischen "... Avenue" ist. Also "Avenue " abkürzen als "Av. ", " Avenue" abkürzen als " Ave."

Nicht vergessen, dass die ganze Sache hier sowieso keine 100% Lösung ist. In den meisten Fällen ist die lokalisierte Version besser aber ganz sicher nicht in allen.

die Präpositionen sind im Französischen dort, wo es um Orte geht, also Avenue d'Italie, oder Avenue de Choisy, oder Avenue d'Ivry, während bei Personen, und das sind ebenfalls sehr viele, keine Präpositionen dazukommen: Avenue Paul Vaillant-Couturier oder Avenue Marx Dormoy oder Avenue Victor Hugo. Es stimmt, im Französischen steht Avenue oder Boulevard oder Rue etc. praktisch immer vorn (wie auch im Italienischen und evtl. in allen romanischen Sprachen), während es im Englischen normalerweise hinten steht: Paris Avenue, oder 5th Avenue, etc.

giggls commented 4 years ago

Eben und genau das kann man sich zu Nutze machen um in einem Fall Av. im anderen Fall Ave. abzukürzen. BTW, wenn wir schon dabei sind, du könntest italienische Abkürzungen beitragen. In Südtirol gibt es vermutlich sogar Städte wo das sinnvoll ist, weil deutsch und italienisch gerendert wird.

Als Vorlage kann generell auch das hier dienen: https://github.com/mapbox/geocoder-abbreviations/tree/master/tokens

@chatelao: Ergänze bitte auch tests für solche Straßennamen.

dieterdreist commented 4 years ago

Am Do., 17. Okt. 2019 um 10:41 Uhr schrieb Sven Geggus < notifications@github.com>:

Eben und genau das kann man sich zu Nutze machen um in einem Fall Av. im anderen Fall Ave. abzukürzen. BTW, wenn wir schon dabei sind, du könntest italienische Abkürzungen beitragen. In Südtirol gibt es vermutlich sogar Städte wo das sinnvoll ist, weil deutsch und italienisch gerendert wird.

das habe ich (nicht alleine) bereits hier getan: https://wiki.openstreetmap.org/wiki/Name_finder:Abbreviations#Italiano_-_Italian

Frage: kürzt Ihr auch Vornamen ab? Das ist im italienischen ein großes Thema, weil sehr viele Straßen nach Personen benannt sind, diese immer mit Vor- und Nachnamen heißen, aber im Sprachgebrauch und ggf. auch auf Karten sofern der Platz es erfordert, werden nur Straßenart und Nachname verwendet. Bis auf Ausnahmen, wo eine unbedeutendere Persönlichkeit mit demselben Nachnamen von einer bekannten Person unterschieden werden muss. Z.B. Via Garibaldi (der Einiger Italiens) und Via Rosa Raimondi Garibaldi (eine Frau mit demselben Nachnamen). Nominatim war dem bisher leider nicht sehr aufgeschlossen gegenüber (der Rat war, erstmal mit alt_name oder short_name das händisch zu machen, oder die Personen mit wikidata zu vertaggen), ist aber auch Thema in anderen Ländern, AFAIR Spanien.

Was man auch z.B. oft weglassen kann im italienischen sind Präpositionen: anstatt "Via del Monte di Minchia" "Via Monte di Minchia".

giggls commented 4 years ago

Ich orientiere mich im allgemeinen daran wie das auf Straßenschildern und oder auf gedruckten Karten gemacht wird. Wenn Du in den Code schaust kannst du sehen, dass wir im deutschen Titel wie Doktor oder Professor abkürzen. Mal schaun, vielleicht baue ich am WE mal die Tabelle aus dem Wiki zumindest für einige weiterre Sprachen in das Script ein.

chatelao commented 4 years ago

Ihr seid lustig, die Tabelle.sieht doch sehr ähnlich jener, die ich aus der kanadischen Postempfehlung entworfen habe:

Das kommt gut.

dieterdreist commented 4 years ago

sent from a phone

On 17. Oct 2019, at 11:42, Sven Geggus notifications@github.com wrote:

Ich orientiere mich im allgemeinen daran wie das auf Straßenschildern und oder auf gedruckten Karten gemacht wird.

auf Schildern werden die Vornamen oft weggelassen, offiziell sind sie praktisch immer Namensbestandteil.

giggls commented 4 years ago

Sehe ich nicht wie man das automatisiert machen könnte. Gegen eine Liste wegzulassender Vornamen abgleichen? Echt?

dieterdreist commented 4 years ago

Am Do., 17. Okt. 2019 um 17:43 Uhr schrieb Sven Geggus < notifications@github.com>:

Sehe ich nicht wie man das automatisiert machen könnte. Gegen eine Liste wegzulassender Vornamen abgleichen? Echt?

Lonvias Vorschlag für Nominatim war, einen wikidata link für die Herkunft / den Bezug des Straßennamens zu setzen, so dass man aus Wikidata sehen kann, was Vorname und was Nachname ist (sofern das dort eingetragen ist). (Rein hypothetisch, das ist nichts, was derzeit programmiert wird soweit ich vermute).

giggls commented 4 years ago

Den Renderer (für den diese Software ja ist) von Wikidata abhängig zu machen halte ich für völlig abwegig.

dieterdreist commented 4 years ago

Alternativ könnte man eine Liste wenigstens der häufigsten Personen pflegen, und wie man sie abkürzen kann. Es gibt (mind., aber sehen wirs mal so für diesen Kontext) 2 Arten von Personen nach denen Straßen benannt werden: Lokalhelden und allgemein bekannte (national oder international, z.B. John Fitzgerald Kennedy). Die Lokalhelden werden wohl nur wenige Male vorkommen (in ihrer Gegend), während die anderen immer und immer wieder auftauchen. Für diese zweiten, allgemeinen Personen, wäre eine eigene Liste vermutlich schaffbar und auch sinnvoller. Für die anderen könnte man es über wikidata machen (was aber auch auf das cachen der Resultate und damit auf eine eigene Liste hinausläuft, nur dass sie automatisch erstellt wäre).

Typischer Fall ist "Via Cavour", der mit vollem Namen "Camillo Paolo Filippo Giulio Benso, conte di Cavour, di Cellarengo e di Isolabella" heißt, oder auch "kurz" "Camillo Benso di Cavour" oder "Camillo Benso conte di Cavour". Oder halt einfach "Cavour".

dieterdreist commented 4 years ago

Am Do., 17. Okt. 2019 um 17:59 Uhr schrieb Martin Koppenhoefer < dieterdreist@gmail.com>:

Typischer Fall ist "Via Cavour", der mit vollem Namen "Camillo Paolo Filippo Giulio Benso, conte di Cavour, di Cellarengo e di Isolabella" heißt, oder auch "kurz" "Camillo Benso di Cavour" oder "Camillo Benso conte di Cavour". Oder halt einfach "Cavour".

Hier ist sein Wikidata item: https://www.wikidata.org/wiki/Q166092 Wie man sieht ist es ggf. noch komplizierter, der Herr wäre mit einer Liste von uns einfacher zu handeln, weil "Benso" ist der Nachname, "Cavour" eigentlich nur eine Abkürzung seines Titels (bzw. Namensbestandteils, je nachdem wie man es sieht) "Graf von Cavour", aber das ist der Name unter dem er am bekanntesten ist.

dieterdreist commented 4 years ago

von Cavour finde ich über 1000 über Taginfo: https://taginfo.openstreetmap.org/search?q=name%3Dvia+camillo+benso+

chatelao commented 4 years ago

Meine Lieben, aktuell kommt mindestens die "en/fr" Unterscheidung ein wenig voran:

Any feedback welcome

giggls commented 4 years ago

Das sieht gut aus:

sven=> select regexp_replace('Avenue de la gare','^Avenue\M','Av.');
 regexp_replace 
----------------
 Av. de la gare
(1 Zeile)

sven=> select regexp_replace('5th Avenue','(?!^)Avenue\M','Ave.');
 regexp_replace 
----------------
 5th Ave.
(1 Zeile)

Wobei ich mich frage ob man das de la eigentlich ebenfalls abgekürzt wird.

@dieterdreist: Das mit den Vornamen ist mir zu kompliziert. Einen pull request würde ich trotzdem nehmen :)

dieterdreist commented 4 years ago

sent from a phone

On 17. Oct 2019, at 18:52, Sven Geggus notifications@github.com wrote:

@dieterdreist: Das mit den Vornamen ist mir zu kompliziert. Einen pull request würde ich trotzdem nehmen :)

nimmst du die short_name-Werte fall vorhanden in den tags wenn der name nicht passt?

giggls commented 4 years ago

Nein, kein Short name. Es geht hier primär um Lokalisierung, das scheint mir irgendwie gerade in Vergessenheit zu geraten.

Mir wäre außerdem nicht bekannt wie und ob man in Mapnik den zu rendernden String je nach Länge des Objekts unterschiedlich wählen kann.

dieterdreist commented 4 years ago

sent from a phone

On 17. Oct 2019, at 22:25, Sven Geggus notifications@github.com wrote:

Mir wäre außerdem nicht bekannt wie und ob man in Mapnik den zu rendernden String je nach Länge des Objekts unterschiedlich wählen kann.

über placements

https://github.com/mapnik/mapnik/wiki/TextSymbolizer

bin mir nicht sicher ob das bei Straßen funktionieren würde, aber bei Plätzen, Brücken und anderen Punkten geht es AFAIK damit.

giggls commented 4 years ago

Die Frage wäre ja wie ich ins SQL einen Kennwert für die gewünschte Länge des name Strings rein kriege. Momentan kürzt der Code einfach immer stur doof ab, auch wenn es aufgrund der Länge des Straßenobjektes nicht notwendig wäre.

dieterdreist commented 4 years ago

Am Fr., 18. Okt. 2019 um 09:57 Uhr schrieb Sven Geggus < notifications@github.com>:

Die Frage wäre ja wie ich ins SQL einen Kennwert für die gewünschte Länge des name Strings rein kriege. Momentan kürzt der Code einfach immer stur doof ab, auch wenn es aufgrund der Länge des Straßenobjektes nicht notwendig wäre.

evtl. einfach erst eine Regel für den längeren Namen und danach eine für den kürzeren Namen, wenn der lange schon gerendert wurde passt der kürzere nicht mehr hin. Geht wie gesagt bei Straßen eher nicht, bei Brücken und Plätzen aber schon (gerade für Plätze hat man oft auch wenig "Platz" und sie sind doch oft Hauptorientierungspunkte).

Und, ich weiß nicht ob du das machst, Zusammenfassung von gleichnamigen, gleichrangigen Segmenten würde oft auch viele nützliche Straßennamen zutage fördern, die wegen Abbiegebeschränlungen, wechselnden maxspeed, route-Relationen etc. zu fragmentiert fürs Rendering sind.

giggls commented 4 years ago

Wenn das bei Straßen ohnehin keine Option ist, dann sollten wir diese Diskussion hiermit beenden, denn osml10n_get_streetname_from_tags wird derzeit ausschließlich für linienförmige Objekte verwendet. Wenn nicht, dann ist das ein Fehler im Kartenstil.

giggls commented 4 years ago

Hm, keine Regel ohne Außnahme!

Quebec Kanada: 1ere Avenue 2e Avenue

Ob man den Regulären Ausdruck so umbiegen kann, dass er das französisch abkürzt?

chatelao commented 4 years ago

Ich schaue mir das kurz an und schreibe den Patch.

Das Schwesterprojekt macht schon Fortschritte, aber ist noch nicht spruchreif: https://github.com/chatelao/osm-abbrev, insb.: https://github.com/chatelao/osm-abbrev/tree/master/src

giggls commented 4 years ago

Das hier scheint zu tun, kann man aber bestimmt noch schöner machen:

diff --git a/plpgsql/street_abbrv.sql b/plpgsql/street_abbrv.sql
index 22c8c14..078f5ce 100644
--- a/plpgsql/street_abbrv.sql
+++ b/plpgsql/street_abbrv.sql
@@ -50,9 +50,10 @@ CREATE or REPLACE FUNCTION osml10n_street_abbrev_all(longname text) RETURNS TEXT
  DECLARE
   abbrev text;
  BEGIN
+  // make shure to call this before osml10n_street_abbrev_en
+  abbrev=osml10n_street_abbrev_fr(abbrev);
   abbrev=osml10n_street_abbrev_en(longname);
   abbrev=osml10n_street_abbrev_de(abbrev);
-  abbrev=osml10n_street_abbrev_fr(abbrev);
   abbrev=osml10n_street_abbrev_ru(abbrev);
   abbrev=osml10n_street_abbrev_uk(abbrev);
   return abbrev;
@@ -69,9 +70,10 @@ CREATE or REPLACE FUNCTION osml10n_street_abbrev_latin(longname text) RETURNS TE
  DECLARE
   abbrev text;
  BEGIN
+  // make shure to call this before osml10n_street_abbrev_en
+  abbrev=osml10n_street_abbrev_fr(abbrev);
   abbrev=osml10n_street_abbrev_en(longname);
   abbrev=osml10n_street_abbrev_de(abbrev);
-  abbrev=osml10n_street_abbrev_fr(abbrev);
   return abbrev;
  END;
 $$ LANGUAGE 'plpgsql' IMMUTABLE;
@@ -148,6 +150,9 @@ CREATE or REPLACE FUNCTION osml10n_street_abbrev_fr(longname text) RETURNS TEXT
  BEGIN
   abbrev=longname;
   abbrev=regexp_replace(abbrev,'^Avenue\M','Av.');
+  // this should fix the issue with invalid usage of english abbreviations in canada
+  abbrev=regexp_replace(abbrev,'^([0-9]+)e Avenue\M','\1e Av.');
+  abbrev=regexp_replace(abbrev,'^1ere Avenue\M','1ere Av.');
   abbrev=regexp_replace(abbrev,'^Boulevard\M','Bd');
   abbrev=regexp_replace(abbrev,'^Chemin\M','Ch.');
   abbrev=regexp_replace(abbrev,'^Esplanade\M','Espl.');
chatelao commented 4 years ago

Auswertung in Montreal, es gibt folgende Testfälle:

Das Overpass Turbo Query dazu: https://overpass-turbo.eu/s/O1a

[out:csv (name; false)];
(
 way["highway"]["name"~"Avenue"]({{bbox}});
);
// print results
out body;
>;
out skel qt;
giggls commented 4 years ago

Wie kürzt man den 1., 2., 3. generell auf französisch ab?

chatelao commented 4 years ago

https://francais.lingolia.com/fr/vocabulaire/nombres-date-et-heure/les-nombres-ordinaux - Besser könnte ich das wohl nicht beschreiben:

chatelao commented 4 years ago

In-Extremis könnte man gleich die Superscripte aus den Unicode Tabellen nehmen:

https://en.wikipedia.org/wiki/Unicode_subscripts_and_superscripts#Latin_and_Greek_tables

1ʳᵉ Avenue / 2ᵉ Avenue etc. - Ob dies der Lesbarkeit dienlich wäre- wohl eher nicht. Und wahrscheinlich unterstützen nicht alle Fonts diese Zeichen.

giggls commented 4 years ago

Müsste das dann nicht 1re heißen, weil Avenue weiblich ist?

giggls commented 4 years ago

Da wir ohnehin nur Noto verwenden wäre das schnell überprüft.

chatelao commented 4 years ago

Passt doch. Vielleicht versuche ich für "en" den Lookback anzupassen, dass die Reihenfolge keine Rolle spielt. Aber da muss mir Google noch etwas helfen.

giggls commented 4 years ago

Eventuell mal visual-regexp anschaun, das verwende ich immer.

chatelao commented 4 years ago

Zur Ergänzung eine alternative Schreibweise mit Lookbehind RegExp 🧙:

  1. French (Positive Lookbehind): sql abbrev=regexp_replace(abbrev,'(?<=^|[0-9]re |[0-9]e )Avenue\M','Av.');
  2. English (Negative Lookbehind): sql abbrev=regexp_replace(abbrev,'(?<!^|[0-9]re |[0-9]e )Avenue\M','Ave.');
giggls commented 4 years ago

Das erzeugt jedoch definitiv etwas anderes als mein Code.

Ich sehe gerade ich habe ein ^ zu viel, aber das stört anscheinend nicht. So sollte das aussehen: regexp_replace(abbrev,'^1[eè]?re Avenue\M','1re Av.');

Das erlaubt 1ere, 1ère und 1re. Eventuell solle ich auch alle drei in einen Test stecken.

Wenn Du das was mein Code macht mit einem einzigen regexp_replace hinkriegst, dann mach mir einen pull request. In den Tests kannst Du ja sehen ob es klappt.

Es sollte aber halt schon das selbe tun wie mein Code.

Wenn ich Dein Regex richtig verstehe berücksichtigt er außerdem keine mehrstelligen Nummern.

22e Avenue oder so.

Was man IMO generell nicht machen sollte ist falsch gemapptes Zeug korrigieren, dass sollen die Mapper fixen, nicht die Nutzer der Daten.

chatelao commented 4 years ago

Kurze Erläuterung zum (vereinfachten) "positive lookbehind" (?<=^|1re |[0-9]e )Avenue\M. Er prüft drei Fälle (Die Pipes "|" trennen die Fälle):

  1. ^Avenue\M - Der bisherige, allgemeine frz. Fall, am Anfang des Namens
  2. 1re Avenue\M - Die ersten Avenue(s) mit "re" (48x "1re Avenue" in Montréal")
  3. [0-9]e Avenue\M - Alle anderen Avenues mit nummerischen+"e" Prefixes (95x "1e Avenue in Montréal")

Hier die verwendete Query: https://overpass-turbo.eu/s/O4f

Die beiden Fälle 1ère und 1ere hab ich nicht mit aufgenommen, weil sie in Montreal nur 1x resp. 2x vorkommen und in der allgemeinen Beschreibung der frz. Nummerierungen nicht erwähnt werden.

Fazit: Diese beiden Regeln sind in meinen lokalen Tests, ohne "1ere" und "1ère" erfolgreich:

Englisch:

French:

=> Ich kann gerne einen spezifischen pull request erstellen und würde vorschlagen, dass wir "1ère" und "1ere" nicht berücksichtigen.

giggls commented 4 years ago

Ich finde mit

[out:csv (name; false)];
(
 way["highway"]["name"~"^1[^0-9].* Avenue"]({{bbox}});
);
// print results
out body;
>;
out skel qt;

folgendes in Montreal und Quebec:

1e Avenue
1re Avenue
1ère Avenue
1ere Avenue

Was davon jetzt falsch ist kann ich schlecht beurteilen. Ich würde falsch erfasste Namen eher unberücksichtigt lassen. Aber sind "1ère" und "1ere" wirklich falsch?

1e kommt mir auch eher falsch vor.

Sie deshalb weg zu lassen weil diese Art der Regular Expression das nicht kann oder (noch schlimmer) weil wir das nicht hinkriegen halte ich jedenfalls für keine gute Idee.

Was mir auch nicht gefällt ist dass dein Code 1re und 1e durchlässt. Da sollte ein einheitlicher Output rauskommen.

chatelao commented 4 years ago
  1. Aufgrund des Mengengerüst würde mich wundern, wenn 1e als "falsch" beurteilt würde.
  2. Die Idee mit dem Normalisieren tönt sympatisch.
  3. Vorschlag:
    • 1e Avenue => 1re Ave.
    • 1re Avenue => 1re Ave.
    • 1[eè]re Avenue => 1re Ave.

Wäre das passend (Bei [èe]re bin ich schmerzlos)? Dann passe ich die Testfälle an und schreibe den Code um. Mir sind die RegExp sympatisch, weil der Code en/fr getrennt und in beliebieger Reihenfolge ausgeführt werden kann.

giggls commented 4 years ago

Ich denke das ist doch genau das was mein momentaner Code macht. Nur halt mit einer if Kaskade und nicht mit reinen regular expressions.

Das mit der beliebigen Reihenfolge erlaubt mein Code ja auch schon das mit der Änderung der Aufrufreihenfolge habe ich verworfen.

https://github.com/giggls/mapnik-german-l10n/compare/v2.5.7..master

chatelao commented 4 years ago

Noch eine Frage: Bis zu welcher PostGre Version zurück sollte der Code funktionieren?

PS: Wenn möglich, möchte langfristig alle "if/then/else" elimineren und nur eine Liste von Regeln führen. Aber muss nicht unbedingt sein.

giggls commented 4 years ago

Von mir aus, wenn Du die selbe Funktionalität rein mit Regular Expressions hinkriegst. Momentan brauche ich wegen regexp_match mindestens PostgreSQL 10. Sollte ich im INSTALL.md mal anpassen.

chatelao commented 4 years ago

Im Debian Paket (https://github.com/giggls/mapnik-german-l10n/blob/master/debian/pgversions) wird v9.4+ erwähnt :-). Im control die v9.5 (https://github.com/giggls/mapnik-german-l10n/blob/master/debian/control).

Ich hätte fast angefangen, alles rückwärts zu portieren (geht ja irgendwie). Aber wenn das nicht nötig ist (kann ich nicht beurteilen), dann lassen wir das und schauen vorwärts nach 10/11.

giggls commented 4 years ago

9.4 is likely the version where I first started to develop this code. Fixed now.