By the convention, names in OSM database are entered in their full name. So we have "Avenue" instead of "Ave", "Generała" instead of "Gen." and so on. This makes results not necessarily accurate when the user enters the abbreviated form.
A good starting point would be the list from this program which is used in Osmapa.pl Mapnik style to shorten (e.g. street) names that don't fit on a low zoom level.
https://github.com/balrog-kun/shrtnms/blob/master/shorten.c
It's under 2-clause BSD license, so should be compatible.
By the convention, names in OSM database are entered in their full name. So we have "Avenue" instead of "Ave", "Generała" instead of "Gen." and so on. This makes results not necessarily accurate when the user enters the abbreviated form. A good starting point would be the list from this program which is used in Osmapa.pl Mapnik style to shorten (e.g. street) names that don't fit on a low zoom level. https://github.com/balrog-kun/shrtnms/blob/master/shorten.c It's under 2-clause BSD license, so should be compatible.