]> git.openstreetmap.org Git - nominatim.git/commitdiff
Merge remote-tracking branch 'upstream/master'
authorSarah Hoffmann <lonvia@denofr.de>
Wed, 19 Feb 2025 19:51:20 +0000 (20:51 +0100)
committerSarah Hoffmann <lonvia@denofr.de>
Wed, 19 Feb 2025 19:51:20 +0000 (20:51 +0100)
13 files changed:
.github/actions/setup-postgresql/action.yml
.github/workflows/ci-tests.yml
settings/icu-rules/variants-ca.yaml
settings/icu-rules/variants-en.yaml
settings/icu-rules/variants-es.yaml
settings/icu-rules/variants-fr.yaml
settings/icu-rules/variants-it.yaml
settings/icu-rules/variants-no.yaml
settings/icu-rules/variants-ru.yaml
settings/icu_tokenizer.yaml
src/nominatim_api/query_preprocessing/normalize.py
src/nominatim_api/search/icu_tokenizer.py
test/bdd/api/search/structured.feature

index 331d094a0a57fd24ddf4e209c1e1ba731de2621f..7a9590c14987aa8403b419cdad11a617557c8060 100644 (file)
@@ -11,10 +11,8 @@ runs:
     steps:
         - name: Remove existing PostgreSQL
           run: |
+              sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -y
               sudo apt-get purge -yq postgresql*
-              sudo apt install curl ca-certificates gnupg
-              curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null
-              sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
               sudo apt-get update -qq
 
           shell: bash
index f453aefb561048e8037cd9fd09b27e377722ab92..f1d9f028c5cedd172bb783d48d05516dee66677b 100644 (file)
@@ -37,10 +37,10 @@ jobs:
         needs: create-archive
         strategy:
             matrix:
-                flavour: ["ubuntu-20", "ubuntu-24"]
+                flavour: ["ubuntu-22", "ubuntu-24"]
                 include:
-                    - flavour: ubuntu-20
-                      ubuntu: 20
+                    - flavour: ubuntu-22
+                      ubuntu: 22
                       postgresql: 12
                       lua: '5.1'
                       dependencies: pip
@@ -81,7 +81,7 @@ jobs:
                   sudo make install
                   cd ../..
                   rm -rf osm2pgsql-build
-              if: matrix.ubuntu == '20'
+              if: matrix.ubuntu == '22'
               env:
                   LUA_VERSION: ${{ matrix.lua }}
 
index fab36dec5aebcef014b09496b3583407b70025fa..943ead5148cd17f7a57c643917527dada0a2c8a9 100644 (file)
@@ -4,7 +4,7 @@
     -  aparcament -> aparc
     -  apartament -> apmt
     -  apartat -> apt
-    - àtic -> àt
+    -  àtic -> àt
     -  autopista -> auto
     -  autopista -> autop
     -  autovia -> autov
@@ -19,7 +19,6 @@
     -  biblioteca -> bibl
     -  bloc -> bl
     -  carrer -> c
-    -  carrer -> c/
     -  carreró -> cró
     -  carretera -> ctra
     -  cantonada -> cant
@@ -58,7 +57,6 @@
     -  número -> n
     -  sense número -> s/n
     -  parada -> par
-    -  parcel·la -> parc
     -  passadís -> pdís
     -  passatge -> ptge
     -  passeig -> pg
index 5508fcd1e9a89e6a5defad05ece02006cec3a48f..99cd6da66954e867004e076d33f13164db092185 100644 (file)
@@ -1,4 +1,5 @@
 # Source: https://wiki.openstreetmap.org/wiki/Name_finder:Abbreviations#English
+# Source: https://pe.usps.com/text/pub28/28apc_002.htm
 - lang: en
   words:
     -  Access -> Accs
@@ -11,6 +12,7 @@
     -  Alley -> Aly
     -  Alleyway -> Alwy
     -  Amble -> Ambl
+    -  Anex -> Anx
     -  Apartments -> Apts
     -  Approach -> Apch
     -  Approach -> App
     -  Banan -> Ba
     -  Basin -> Basn
     -  Basin -> Bsn
+    -  Bayou -> Byu
     -  Beach -> Bch
-    -  Bend -> Bend
     -  Bend -> Bnd
     -  Block -> Blk
+    -  Bluff -> Blf
+    -  Bluffs -> Blfs
     -  Boardwalk -> Bwlk
+    -  Bottom -> Btm
     -  Boulevard -> Blvd
     -  Boulevard -> Bvd
     -  Boundary -> Bdy
     -  Bowl -> Bl
     -  Brace -> Br
     -  Brae -> Br
-    -  Brae -> Brae
+    -  Branch -> Br
     -  Break -> Brk
     -  Bridge -> Bdge
     -  Bridge -> Br
     -  Bridge -> Brdg
+    -  Bridge -> Brg
     -  Bridge -> Bri
     -  Broadway -> Bdwy
     -  Broadway -> Bway
     -  Broadway -> Bwy
     -  Brook -> Brk
+    -  Brooks -> Brks
     -  Brow -> Brw
-    -  Brow -> Brow
     -  Buildings -> Bldgs
     -  Buildings -> Bldngs
     -  Business -> Bus
+    -  Burg -> Bg
+    -  Burgs -> Bgs
     -  Bypass -> Bps
     -  Bypass -> Byp
     -  Bypass -> Bypa
     -  Byway -> Bywy
+    -  Camp -> Cp
+    -  Canyon -> Cyn
+    -  Cape -> Cpe
     -  Caravan -> Cvn
     -  Causeway -> Caus
     -  Causeway -> Cswy
     -  Causeway -> Cway
     -  Center -> Cen
     -  Center -> Ctr
+    -  Centers -> Ctrs
     -  Central -> Ctrl
     -  Centre -> Cen
     -  Centre -> Ctr
     -  Chase -> Ch
     -  Church -> Ch
     -  Circle -> Cir
+    -  Circles -> Cirs
     -  Circuit -> Cct
     -  Circuit -> Ci
     -  Circus -> Crc
     -  Circus -> Crcs
     -  City -> Cty
+    -  Cliff -> Clf
+    -  Cliffs -> Clfs
     -  Close -> Cl
+    -  Club -> Clb
     -  Common -> Cmn
     -  Common -> Comm
+    -  Commons -> Cmns
     -  Community -> Comm
     -  Concourse -> Cnc
     -  Concourse -> Con
     -  Copse -> Cps
+    -  Corner -> Cor
     -  Corner -> Cnr
     -  Corner -> Crn
+    -  Corners -> Cors
     -  Corso -> Cso
     -  Cottages -> Cotts
     -  County -> Co
     -  County Road -> CR
     -  County Route -> CR
+    -  Course -> Crse
     -  Court -> Crt
     -  Court -> Ct
+    -  Courts -> Cts
     -  Courtyard -> Cyd
     -  Courtyard -> Ctyd
     -  Cove -> Ce
     -  Cove -> Cov
-    -  Cove -> Cove
     -  Cove -> Cv
+    -  Coves -> Cvs
     -  Creek -> Ck
     -  Creek -> Cr
     -  Creek -> Crk
     -  Crossing -> Csg
     -  Crossing -> Xing
     -  Crossroad -> Crd
+    -  Crossroad -> Xrd
+    -  Crossroads -> Xrds
     -  Crossway -> Cowy
     -  Cul-de-sac -> Cds
     -  Cul-de-sac -> Csac
     -  Curve -> Cve
+    -  Curve -> Curv
     -  Cutting -> Cutt
     -  Dale -> Dle
-    -  Dale -> Dale
+    -  Dam -> Dm
     -  Deviation -> Devn
-    -  Dip -> Dip
     -  Distributor -> Dstr
+    -  Divide -> Dv
     -  Down -> Dn
     -  Downs -> Dn
     -  Drive -> Dr
     -  Drive -> Drv
     -  Drive -> Dv
+    -  Drives -> Drs
     -  Drive-In => Drive-In # prevent abbreviation here
     -  Driveway -> Drwy
     -  Driveway -> Dvwy
     -  Driveway -> Dwy
     -  East -> E
     -  Edge -> Edg
-    -  Edge -> Edge
     -  Elbow -> Elb
-    -  End -> End
     -  Entrance -> Ent
     -  Esplanade -> Esp
     -  Estate -> Est
+    -  Estates -> Ests
     -  Expressway -> Exp
     -  Expressway -> Expy
     -  Expressway -> Expwy
     -  Expressway -> Xway
     -  Extension -> Ex
+    -  Extensions -> Exts
     -  Fairway -> Fawy
     -  Fairway -> Fy
+    -  Falls -> Fls
     -  Father -> Fr
     -  Ferry -> Fy
+    -  Ferry -> Fry
     -  Field -> Fd
+    -  Field -> Fld
+    -  Fields -> Flds
     -  Fire Track -> Ftrk
     -  Firetrail -> Fit
     -  Flat -> Fl
-    -  Flat -> Flat
+    -  Flat -> Flt
+    -  Flats -> Flts
     -  Follow -> Folw
     -  Footway -> Ftwy
+    -  Ford -> Frd
+    -  Fords -> Frds
     -  Foreshore -> Fshr
+    -  Forest -> Frst
     -  Forest Service Road -> FSR
+    -  Forge -> Frg
+    -  Forges -> Frgs
     -  Formation -> Form
+    -  Fork -> Frk
+    -  Forks -> Frks
     -  Fort -> Ft
     -  Freeway -> Frwy
     -  Freeway -> Fwy
     -  Front -> Frnt
     -  Frontage -> Fr
     -  Frontage -> Frtg
-    -  Gap -> Gap
     -  Garden -> Gdn
     -  Gardens -> Gdn
     -  Gardens -> Gdns
     -  Gates -> Ga
     -  Gates -> Gte
     -  Gateway -> Gwy
+    -  Gateway -> Gtwy
     -  George -> Geo
     -  Glade -> Gl
     -  Glade -> Gld
     -  Glade -> Glde
     -  Glen -> Gln
-    -  Glen -> Glen
+    -  Glens -> Glns
     -  Grange -> Gra
     -  Green -> Gn
     -  Green -> Grn
+    -  Greens -> Grns
     -  Ground -> Grnd
     -  Grove -> Gr
     -  Grove -> Gro
+    -  Grove -> Grv
+    -  Groves -> Grvs
     -  Grovet -> Gr
     -  Gully -> Gly
     -  Harbor -> Hbr
+    -  Harbors -> Hbrs
     -  Harbour -> Hbr
     -  Haven -> Hvn
     -  Head -> Hd
     -  Highroad -> Hird
     -  Highroad -> Hrd
     -  Highway -> Hwy
-    -  Hill -> Hill
     -  Hill -> Hl
     -  Hills -> Hl
     -  Hills -> Hls
+    -  Hollow -> Holw
     -  Hospital -> Hosp
     -  House -> Ho
     -  House -> Hse
     -  Industrial -> Ind
+    -  Inlet -> Inlt
     -  Interchange -> Intg
     -  International -> Intl
     -  Island -> I
     -  Island -> Is
+    -  Islands -> Iss
+    -  Junction -> Jct
     -  Junction -> Jctn
     -  Junction -> Jnc
+    -  Junctions -> Jcts
     -  Junior -> Jr
-    -  Key -> Key
+    -  Key -> Ky
+    -  Keys -> Kys
+    -  Knoll -> Knl
+    -  Knolls -> Knls
     -  Lagoon -> Lgn
+    -  Lake -> Lk
     -  Lakes -> L
+    -  Lakes -> Lks
     -  Landing -> Ldg
+    -  Landing -> Lndg
     -  Lane -> La
-    -  Lane -> Lane
     -  Lane -> Ln
     -  Laneway -> Lnwy
-    -  Line -> Line
+    -  Light -> Lgt
+    -  Lights -> Lgts
     -  Line -> Ln
-    -  Link -> Link
     -  Link -> Lk
     -  Little -> Lit
     -  Little -> Lt
+    -  Loaf -> Lf
+    -  Lock -> Lck
+    -  Locks -> Lcks
     -  Lodge -> Ldg
     -  Lookout -> Lkt
-    -  Loop -> Loop
     -  Loop -> Lp
     -  Lower -> Low
     -  Lower -> Lr
     -  Lower -> Lwr
-    -  Mall -> Mall
     -  Mall -> Ml
     -  Manor -> Mnr
+    -  Manors -> Mnrs
     -  Mansions -> Mans
     -  Market -> Mkt
     -  Meadow -> Mdw
     -  Meander -> Mr
     -  Medical -> Med
     -  Memorial -> Mem
-    -  Mews -> Mews
     -  Mews -> Mw
     -  Middle -> Mid
     -  Middle School -> MS
     -  Mile -> Mi
     -  Military -> Mil
+    -  Mill -> Ml
+    -  Mills -> Mls
+    -  Mission -> Msn
     -  Motorway -> Mtwy
     -  Motorway -> Mwy
     -  Mount -> Mt
     -  Mountain -> Mtn
     -  Mountains -> Mtn
+    -  Mountains -> Mtns
     -  Municipal -> Mun
     -  Museum -> Mus
     -  National Park -> NP
     -  National Recreation Area -> NRA
     -  National Wildlife Refuge Area -> NWRA
+    -  Neck -> Nck
     -  Nook -> Nk
-    -  Nook -> Nook
     -  North -> N
     -  Northeast -> NE
     -  Northwest -> NW
+    -  Orchard -> Orch
     -  Outlook -> Out
     -  Outlook -> Otlk
+    -  Overpass -> Opas
     -  Parade -> Pde
     -  Paradise -> Pdse
-    -  Park -> Park
     -  Park -> Pk
     -  Parklands -> Pkld
     -  Parkway -> Pkwy
     -  Parkway -> Pky
     -  Parkway -> Pwy
-    -  Pass -> Pass
+    -  Parkways -> Pkwy
     -  Pass -> Ps
     -  Passage -> Psge
-    -  Path -> Path
     -  Pathway -> Phwy
     -  Pathway -> Pway
     -  Pathway -> Pwy
     -  Piazza -> Piaz
     -  Pike -> Pk
+    -  Pine -> Pne
+    -  Pines -> Pnes
     -  Place -> Pl
     -  Plain -> Pl
+    -  Plain -> Pln
     -  Plains -> Pl
+    -  Plains -> Plns
     -  Plateau -> Plat
     -  Plaza -> Pl
     -  Plaza -> Plz
     -  Pocket -> Pkt
     -  Point -> Pnt
     -  Point -> Pt
-    -  Port -> Port
+    -  Points -> Pts
+    -  Port -> Prt
     -  Port -> Pt
+    -  Ports -> Prts
     -  Post Office -> PO
+    -  Prairie -> Pr
     -  Precinct -> Pct
     -  Promenade -> Prm
     -  Promenade -> Prom
-    -  Quad -> Quad
     -  Quadrangle -> Qdgl
     -  Quadrant -> Qdrt
     -  Quadrant -> Qd
     -  Quay -> Qy
     -  Quays -> Qy
     -  Quays -> Qys
+    -  Radial -> Radl
     -  Ramble -> Ra
     -  Ramble -> Rmbl
+    -  Ranch -> Rnch
     -  Range -> Rge
     -  Range -> Rnge
+    -  Rapid -> Rpd
+    -  Rapids -> Rpds
     -  Reach -> Rch
     -  Reservation -> Res
     -  Reserve -> Res
     -  Reservoir -> Res
-    -  Rest -> Rest
     -  Rest -> Rst
     -  Retreat -> Rt
     -  Retreat -> Rtt
     -  Return -> Rtn
     -  Ridge -> Rdg
     -  Ridge -> Rdge
+    -  Ridges -> Rdgs
     -  Ridgeway -> Rgwy
     -  Right of Way -> Rowy
     -  Rise -> Ri
-    -  Rise -> Rise
     -  River -> R
     -  River -> Riv
     -  River -> Rvr
     -  Roadside -> Rdsd
     -  Roadway -> Rdwy
     -  Roadway -> Rdy
-    -  Robert -> Robt
     -  Rocks -> Rks
     -  Ronde -> Rnde
     -  Rosebowl -> Rsbl
     -  Round -> Rnd
     -  Route -> Rt
     -  Route -> Rte
-    -  Row -> Row
-    -  Rue -> Rue
-    -  Run -> Run
     -  Saint -> St
     -  Saints -> SS
     -  Senior -> Sr
     -  Serviceway -> Swy
     -  Serviceway -> Svwy
+    -  Shoal -> Shl
+    -  Shore -> Shr
+    -  Shores -> Shrs
     -  Shunt -> Shun
     -  Siding -> Sdng
     -  Sister -> Sr
+    -  Skyway -> Skwy
     -  Slope -> Slpe
     -  Sound -> Snd
     -  South -> S
     -  South -> Sth
     -  Southeast -> SE
     -  Southwest -> SW
-    -  Spur -> Spur
+    -  Spring -> Spg
+    -  Springs -> Spgs
+    -  Spurs -> Spur
     -  Square -> Sq
+    -  Squares -> Sqs
     -  Stairway -> Strwy
     -  State Highway -> SH
     -  State Highway -> SHwy
     -  Station -> Stn
     -  Strand -> Sd
     -  Strand -> Stra
+    -  Stravenue -> Stra
+    -  Stream -> Strm
     -  Street -> St
+    -  Streets -> Sts
     -  Strip -> Strp
     -  Subway -> Sbwy
+    -  Summit -> Smt
     -  Tarn -> Tn
-    -  Tarn -> Tarn
     -  Terminal -> Term
     -  Terrace -> Tce
     -  Terrace -> Ter
     -  Terrace -> Terr
     -  Thoroughfare -> Thfr
     -  Thoroughfare -> Thor
+    -  Throughway -> Trwy
     -  Tollway -> Tlwy
     -  Tollway -> Twy
-    -  Top -> Top
-    -  Tor -> Tor
     -  Towers -> Twrs
     -  Township -> Twp
     -  Trace -> Trce
     -  Track -> Tr
+    -  Track -> Trak
     -  Track -> Trk
+    -  Trafficway -> Trfy
     -  Trail -> Trl
     -  Trailer -> Trlr
     -  Triangle -> Tri
     -  Trunkway -> Tkwy
     -  Tunnel -> Tun
+    -  Tunnel -> Tunl
     -  Turn -> Tn
     -  Turn -> Trn
-    -  Turn -> Turn
     -  Turnpike -> Tpk
     -  Turnpike -> Tpke
     -  Underpass -> Upas
     -  Underpass -> Ups
+    -  Union -> Un
+    -  Unions -> Uns
     -  University -> Uni
     -  University -> Univ
     -  Upper -> Up
     -  Upper -> Upr
     -  Vale -> Va
-    -  Vale -> Vale
+    -  Valley -> Vly
     -  Valley -> Vy
+    -  Valleys -> Vlys
     -  Viaduct -> Vdct
     -  Viaduct -> Via
     -  Viaduct -> Viad
     -  View -> Vw
-    -  View -> View
+    -  Views -> Vws
     -  Village -> Vill
+    -  Village -> Vlg
+    -  Villages -> Vlgs
     -  Villas -> Vlls
+    -  Ville -> Vl
+    -  Vista -> Vis
     -  Vista -> Vst
     -  Vista -> Vsta
-    -  Walk -> Walk
     -  Walk -> Wk
     -  Walk -> Wlk
+    -  Walks -> Walk
     -  Walkway -> Wkwy
     -  Walkway -> Wky
     -  Waters -> Wtr
-    -  Way -> Way
     -  Way -> Wy
+    -  Well -> Wl
+    -  Wells -> Wls
     -  West -> W
     -  Wharf -> Whrf
     -  William -> Wm
     -  Wynd -> Wyn
-    -  Wynd -> Wynd
-    -  Yard -> Yard
     -  Yard -> Yd
 - lang: en
   country: ca
index 5c5e6abe1b3ee038c65bdf56a5c0a1619df96656..fbe40b5408526a9f9f3fae1e529ccbe9dd6f3956 100644 (file)
@@ -30,7 +30,6 @@
     -  Bloque -> Blq
     -  Bulevar -> Blvr
     -  Boulevard -> Blvd
-    -  Calle -> C/
     -  Calle -> C
     -  Calle -> Cl
     -  Calleja -> Cllja
index 0fd9c3377dafeb8bcffe56faad0339f9dfbe99bf..b9cfc493fb5dedadbfb66b8c997a61096731f933 100644 (file)
@@ -3,20 +3,16 @@
   words:
     -  Abbaye -> ABE
     -  Agglomération -> AGL
-    -  Aire -> AIRE
     -  Aires -> AIRE
     -  Allée -> ALL
-    -  Allée -> All
     -  Allées -> ALL
     -  Ancien chemin -> ACH
     -  Ancienne route -> ART
     -  Anciennes routes -> ART
-    -  Anse -> ANSE
     -  Arcade -> ARC
     -  Arcades -> ARC
     -  Autoroute -> AUT
     -  Avenue -> AV
-    -  Avenue -> Av
     -  Barrière -> BRE
     -  Barrières -> BRE
     -  Bas chemin -> BCH
     -  Berges -> BER
     -  Bois -> BOIS
     -  Boucle -> BCLE
-    -  Boulevard -> Bd
     -  Boulevard -> BD
     -  Bourg -> BRG
     -  Butte -> BUT
-    -  Cité -> CITE
     -  Cités -> CITE
-    -  Côte -> COTE
     -  Côteau -> COTE
-    -  Cale -> CALE
-    -  Camp -> CAMP
     -  Campagne -> CGNE
     -  Camping -> CPG
     -  Carreau -> CAU
     -  Chaussées -> CHS
     -  Chemin -> Ch
     -  Chemin -> CHE
-    -  Chemin -> Che
     -  Chemin vicinal -> CHV
     -  Cheminement -> CHEM
     -  Cheminements -> CHEM
     -  Chemins -> CHE
     -  Chemins vicinaux -> CHV
-    -  Chez -> CHEZ
     -  Château -> CHT
     -  Cloître -> CLOI
-    -  Clos -> CLOS
-    -  Col -> COL
     -  Colline -> COLI
     -  Collines -> COLI
     -  Contour -> CTR
@@ -74,9 +61,7 @@
     -  Corniches -> COR
     -  Cottage -> COTT
     -  Cottages -> COTT
-    -  Cour -> COUR
     -  Cours -> CRS
-    -  Cours -> Crs
     -  Darse -> DARS
     -  Degré -> DEG
     -  Degrés -> DEG
     -  Domaine -> DOM
     -  Domaines -> DOM
     -  Écluse -> ECL
-    -  Écluse -> ÉCL
     -  Écluses -> ECL
-    -  Écluses -> ÉCL
     -  Église -> EGL
-    -  Église -> ÉGL
     -  Enceinte -> EN
     -  Enclave -> ENV
     -  Enclos -> ENC
     -  Espace -> ESPA
     -  Esplanade -> ESP
     -  Esplanades -> ESP
-    -  Étang -> ETANG
-    -  Étang -> ÉTANG
     -  Faubourg -> FG
-    -  Faubourg -> Fg
     -  Ferme -> FRM
     -  Fermes -> FRM
     -  Fontaine -> FON
-    -  Fort -> FORT
     -  Forum -> FORM
     -  Fosse -> FOS
     -  Fosses -> FOS
     -  Foyer -> FOYR
     -  Galerie -> GAL
     -  Galeries -> GAL
-    -  Gare -> GARE
     -  Garenne -> GARN
     -  Grand boulevard -> GBD
     -  Grand ensemble -> GDEN
     -  Haut chemin -> HCH
     -  Hauts chemins -> HCH
     -  Hippodrome -> HIP
-    -  HLM -> HLM
-    -  Île -> ILE
-    -  Île -> ÎLE
     -  Immeuble -> IMM
     -  Immeubles -> IMM
     -  Impasse -> IMP
-    -  Impasse -> Imp
     -  Impasses -> IMP
     -  Jardin -> JARD
     -  Jardins -> JARD
     -  Lieu-dit -> LD
     -  Lotissement -> LOT
     -  Lotissements -> LOT
-    -  Mail -> MAIL
     -  Maison forestière -> MF
     -  Manoir -> MAN
     -  Marche -> MAR
     -  Marches -> MAR
     -  Maréchal -> MAL
-    -  Mas -> MAS
     -  Monseigneur -> Mgr
     -  Mont -> Mt
     -  Montée -> MTE
     -  Métro -> MÉT
     -  Nouvelle route -> NTE
     -  Palais -> PAL
-    -  Parc -> PARC
-    -  Parcs -> PARC
     -  Parking -> PKG
     -  Parvis -> PRV
     -  Passage -> PAS
-    -  Passage -> Pas
-    -  Passage -> Pass
     -  Passage à niveau -> PN
     -  Passe -> PASS
     -  Passerelle -> PLE
     -  Petite rue -> PTR
     -  Petites allées -> PTA
     -  Place -> PL
-    -  Place -> Pl
     -  Placis -> PLCI
     -  Plage -> PLAG
     -  Plages -> PLAG
     -  Plaine -> PLN
-    -  Plan -> PLAN
     -  Plateau -> PLT
     -  Plateaux -> PLT
     -  Pointe -> PNT
-    -  Pont -> PONT
-    -  Ponts -> PONT
     -  Porche -> PCH
-    -  Port -> PORT
     -  Porte -> PTE
     -  Portique -> PORQ
     -  Portiques -> PORQ
     -  Pourtour -> POUR
     -  Presqu’île -> PRQ
     -  Promenade -> PROM
-    -  Promenade -> Prom
-    -  Pré -> PRE
-    -  Pré -> PRÉ
     -  Périphérique -> PERI
     -  Péristyle -> PSTY
     -  Quai -> QU
-    -  Quai -> Qu
     -  Quartier -> QUA
     -  Raccourci -> RAC
     -  Raidillon -> RAID
     -  Rampe -> RPE
     -  Rempart -> REM
-    -  Roc -> ROC
     -  Rocade -> ROC
     -  Rond point -> RPT
     -  Roquet -> ROQT
     -  Rotonde -> RTD
     -  Route -> RTE
-    -  Route -> Rte
     -  Routes -> RTE
     -  Rue -> R
     -  Rue -> R
     -  Sentier -> SEN
     -  Sentiers -> SEN
     -  Square -> SQ
-    -  Square -> Sq
     -  Stade -> STDE
     -  Station -> STA
     -  Terrain -> TRN
     -  Terre plein -> TPL
     -  Tertre -> TRT
     -  Tertres -> TRT
-    -  Tour -> TOUR
     -  Traverse -> TRA
     -  Vallon -> VAL
     -  Vallée -> VAL
     -  Venelle -> VEN
     -  Venelles -> VEN
-    -  Via -> VIA
     -  Vieille route -> VTE
     -  Vieux chemin -> VCHE
     -  Villa -> VLA
     -  Villas -> VLA
     -  Voie -> VOI
     -  Voies -> VOI
-    -  Zone -> ZONE
     -  Zone artisanale -> ZA
     -  Zone d'aménagement concerté -> ZAC
     -  Zone d'aménagement différé -> ZAD
     -  Esplanade -> ESPL
     -  Passage -> PASS
     -  Plateau -> PLAT
-    -  Rang -> RANG
     -  Rond-point -> RDPT
     -  Sentier -> SENT
     -  Subdivision -> SUBDIV
index 3e45521e96e2987f2e54e4f882888953a9ec2a51..55678e1adce6817c4d3e57e993742550494950e4 100644 (file)
@@ -29,7 +29,6 @@
     -  Prima -> I
     -  Primo -> I
     -  Primo -> 1
-    -  Primo -> 1°
     -  Quarta -> IV
     -  Quarto -> IV
     -  Quattro -> IV
index de75e3c389e003cd837f38c2b36cbeb9b1c9cf7b..dd17408ff21030a3b376bd921ab87073f17a02dd 100644 (file)
@@ -1,11 +1,10 @@
 # Source: https://wiki.openstreetmap.org/wiki/Name_finder:Abbreviations#Norsk_-_Norwegian
-- lang: no
+- lang: "no"
   words:
     # convert between Nynorsk and Bookmal here
-    -  vei, veg => v,vn,vei,veg
-    -  veien, vegen -> v,vn,veien,vegen
-    -  gate -> g,gt
+    -  ~vei, ~veg -> v,vei,veg
+    -  ~veien, ~vegen -> vn,veien,vegen
     # convert between the two female forms
-    -  gaten, gata => g,gt,gaten,gata
+    -  gate, gaten, gata -> g,gt
     -  plass, plassen -> pl
     -  sving, svingen -> sv
index 2092e32e359082c4730550a417df050c50437393..87f872c5588c43ef59294007c0885d8c091ec38f 100644 (file)
 # Source: https://wiki.openstreetmap.org/wiki/Name_finder:Abbreviations#.D0.A0.D1.83.D1.81.D1.81.D0.BA.D0.B8.D0.B9_-_Russian
+# Source: https://www.plantarium.ru/page/help/topic/abbreviations.html
+# Source: https://dic.academic.ru/dic.nsf/ruwiki/1871310
 - lang: ru
   words:
+    -  Академик, Академика -> Ак
+    -  акционерное общество -> АО
     -  аллея -> ал
+    -  архипелаг -> арх
+    -  атомная электростанция -> АЭС
+    -  аэродром -> аэрд
+    -  аэропорт -> аэрп
+    -  Башкирский, Башкирская, Башкирское, Башкирские -> Баш, Башк, Башкир
+    -  Белый, Белая, Белое. Белые -> Бел
+    -  болото -> бол
+    -  больница -> больн
+    -  Большой, Большая, Большое, Большие -> Б, Бол
+    -  брод -> бр
     -  бульвар -> бул
+    -  бухта -> бух
+    -  бывший, бывшая, бывшее, бывшие -> бывш
+    -  Великий, Великая, Великое, Великие -> Вел
+    -  Верхний, Верхняя, Верхнее, Верхние -> В, Верх
+    -  водокачка -> вдкч
+    -  водопад -> вдп
+    -  водохранилище -> вдхр
+    -  вокзал -> вкз, вокз
+    -  Восточный, Восточная, Восточное, Восточные -> В, Вост
+    -  вулкан -> влк
+    -  гидроэлектростанция -> ГЭС
+    -  гора -> г
+    -  город -> г
+    -  дворец культуры, дом культуры -> ДК
+    -  дворец спорта -> ДС
+    -  деревня -> д, дер
+    -  детский оздоровительный лагерь -> ДОЛ
+    -  дом -> д
+    -  дом отдыха -> Д О
+    -  железная дорога -> ж д
+    -  железнодорожный, железнодорожная, железнодорожное -> ж-д
+    -  железобетонных изделий -> ЖБИ
+    -  жилой комплекс -> ЖК
+    -  завод -> з-д
+    -  закрытое административно-территориальное образование -> ЗАТО
+    -  залив -> зал
+    -  Западный, Западная, Западное, Западные -> З, Зап, Запад
+    -  заповедник -> запов
+    -  имени -> им
+    -  институт -> инст
+    -  исправительная колония -> ИК
+    -  километр -> км
+    -  Красный, Красная, Красное, Красные -> Кр, Крас
+    -  лагерь -> лаг
+    -  Левый, Левая,Левое, Левые -> Л, Лев
+    -  ледник -> ледн
+    -  лесничество -> леснич
+    -  лесной, лесная, лесное -> лес
+    -  линия электропередачи -> ЛЭП
+    -  Малый, Малая, Малое, Малые -> М, Мал
+    -  Мордовский, Мордовская, Мордовское, Мордовские -> Мордов
+    -  морской, морская, морское -> мор
+    -  Московский, Московская, Московское, Московские -> Мос, Моск
+    -  мыс -> м
     -  набережная -> наб
+    -  Нижний, Нижняя, Нижнее, Нижние -> Ниж, Н
+    -  Новый, Новая, Новое, Новые -> Нов, Н
+    -  обгонный пункт -> обг п
+    -  область -> обл
+    -  озеро -> оз
+    -  особо охраняемая природная территория -> ООПТ
+    -  остановочный пункт -> о п
+    -  остров -> о
+    -  острова -> о-ва
+    -  парк культуры и отдыха -> ПКиО
+    -  перевал -> пер
     -  переулок -> пер
+    -  пещера -> пещ
+    -  пионерский лагерь -> пионерлаг
+    -  платформа -> пл, платф
     -  площадь -> пл
+    -  подсобное хозяйство -> подсоб хоз
+    -  полуостров -> п-ов
+    -  посёлок -> пос, п
+    -  посёлок городского типа -> п г т, пгт
+    -  Правый, Правая, Правое, Правые -> П, Пр, Прав
     -  проезд -> пр
     -  проспект -> просп
-    -  шоссе -> ш
+    -  пруд -> пр
+    -  пустыня -> пуст
+    -  разъезд -> рзд
+    -  район -> р-н
+    -  резинотехнических изделий -> РТИ
+    -  река -> р
+    -  речной, речная, речное -> реч, речн
+    -  Российский, Российская, Российское, Российские -> Рос
+    -  Русский, Русская, Русское, Русские -> Рус, Русск
+    -  ручей -> руч
+    -  садовое некоммерческое товарищество -> СНТ
+    -  садовые участки -> сад уч
+    -  санаторий -> сан
+    -  сарай -> сар
+    -  Северный, Северная, Северное, Северные -> С, Сев
+    -  село -> с
+    -  Сибирский, Сибирская, Сибирское, Сибирские -> Сиб
+    -  Советский, Советская, Советское, Советские -> Сов
+    -  совхоз -> свх
+    -  Сортировочный, Сортировочная, Сортировочное, Сортировочные -> Сорт
+    -  станция -> ст
+    -  Старый, Старая, Среднее, Средние -> Ср
+    -  Татарский, Татарская, Татарское, Татарские -> Тат, Татар
+    -  теплоэлекстростанция -> ТЭС
+    -  теплоэлектроцентраль -> ТЭЦ
+    -  техникум -> техн
+    -  тоннель, туннель -> тун
     -  тупик -> туп
     -  улица -> ул
-    -  область -> обл
+    -  Уральский, Уральская, Уральское, Уральские -> Ур, Урал
+    -  урочище -> ур
+    -  хозяйство -> хоз, хоз-во
+    -  хребет -> хр
+    -  хутор -> хут
+    -  Чёрный, Чёрная, Чёрное, Чёрные -> Черн
+    -  Чувашский, Чувашская, Чувашское, Чувашские -> Чуваш
+    -  шахта -> шах
+    -  школа -> шк
+    -  шоссе -> ш
+    -  элеватор -> элев
+    -  Южный, Южная, Южное, Южные -> Ю, Юж, Южн
\ No newline at end of file
index 6cf30d59e55b961d32ae7fc1b9a08bf9118d1c62..bb81f80bd2b70fd2ed3a95b20782023be5a1ab10 100644 (file)
@@ -46,7 +46,7 @@ sanitizers:
     - step: strip-brace-terms
     - step: tag-analyzer-by-language
       filter-kind: [".*name.*"]
-      whitelist: [bg,ca,cs,da,de,el,en,es,et,eu,fi,fr,gl,hu,it,ja,mg,ms,nl,no,pl,pt,ro,ru,sk,sl,sv,tr,uk,vi]
+      whitelist: [bg,ca,cs,da,de,el,en,es,et,eu,fi,fr,gl,hu,it,ja,mg,ms,nl,"no",pl,pt,ro,ru,sk,sl,sv,tr,uk,vi]
       use-defaults: all
       mode: append
     - step: tag-japanese
@@ -158,7 +158,7 @@ token-analysis:
       mode: variant-only
       variants:
           - !include icu-rules/variants-nl.yaml
-    - id: no
+    - id: "no"
       analyzer: generic
       mode: variant-only
       variants:
index afb93ded3087c8e0c592fbb41efcb9241c713746..0bb0c8ed744d00e1e97c3c114b05ed9d887729d2 100644 (file)
@@ -27,5 +27,5 @@ def create(config: QueryConfig) -> QueryProcessingFunc:
 
     return lambda phrases: list(
         filter(lambda p: p.text,
-               (Phrase(p.ptype, cast(str, normalizer.transliterate(p.text)))
+               (Phrase(p.ptype, cast(str, normalizer.transliterate(p.text)).strip('-: '))
                 for p in phrases)))
index 8f2069c1a8bc57212956d1ce64d3a5914c12f920..44afce9f3f69baf6475b0090eb388906bdef3c26 100644 (file)
@@ -250,7 +250,7 @@ class ICUQueryAnalyzer(AbstractQueryAnalyzer):
             standardized form search will work with. All information removed
             at this stage is inevitably lost.
         """
-        return cast(str, self.normalizer.transliterate(text))
+        return cast(str, self.normalizer.transliterate(text)).strip('-: ')
 
     def split_query(self, query: qmod.QueryStruct) -> Tuple[QueryParts, WordDict]:
         """ Transliterate the phrases and split them into tokens.
index a1dd5b83d4621b07dd670f3311dbf8d165cc0cce..1d60992335fe2657025c947f0e74f28f85414c19 100644 (file)
@@ -67,3 +67,13 @@ Feature: Structured search queries
         Then result addresses contain
           | town |
           | Vaduz |
+
+    #3651
+    Scenario: Structured search with surrounding extra characters
+        When sending xml search query "" with address
+          | street             | city  | postalcode |
+          | "19 Am schrägen Weg" | "Vaduz" | "9491"  |
+        Then result addresses contain
+          | house_number | road |
+          | 19           | Am Schrägen Weg |
+