openstreetmap / iD

🆔 The easy-to-use OpenStreetMap editor in JavaScript.
https://www.openstreetmap.org/edit?editor=id
ISC License
3.35k stars 1.2k forks source link

Serching tags using non Latin keyboard #8015

Open pedjas opened 4 years ago

pedjas commented 4 years ago

I have two problems when entering data in languages that use non Latin characters but both have the same root.

I use ID which is set to English language. That is required.

The first problem is, as I enter non Latin text on map I have keyboard appropriately set for that language. Now, if I want to set specific tag I have to switch to Latin keyboard, search tag and then switch back to non Latin keyboard to enter value. This is quite odd especially as most of the work I do in ID is done using non Latin keyboard.

In some earlier version of ID this happens on most tags but name tags were handled fine - if I type in language name in native script I got exact tag I needed. That is the second problem; in the latest ID this does not work anymore. I have to switch to Latin keyboard each time. This really slows me down and I constantly make typing errors as I have wrong keyboard set. Forkflow is really odd and slow.

Here is how it looks: left image shows current ID version and right image shows how it was on some older version. In current version I have to type in Latin to get needed language, In older version it did not matter, I could type in Latin or Cyrillic.

id-language

My sugestion is this:

For searching all tags, ID could do search as typed in and also search by text transliterated to Latin (for most non latin languages there are transliteration tables to Latin characters). That would be tremendous help as user would not be required to switch keyboard for each tag.

Similar thing could be done for searching presets, as there is the same problem if current keyboard is not Latin.

For searching language names (name tags), search should be done in both Latin and native script, as for name tags native language names are available (just not used anymore as it was in older version).

BriskySK commented 4 years ago

Hi, I would like to participate to try to solve this problem.

quincylvania commented 4 years ago

@krisThis-some This might be a complex issue, but if you'd like to try it then check out our contributing guide to get started. The modules/ui/fields/localized.js file would be a good place to get started. Let us know if you have questions, good luck!

pedjas commented 4 years ago

I guess this could help:

Displayed value should be presented in both native and Latin (or English script). That should solve most of the cases (actually that was how it was done in older version of ID, and it was satisfactory). So solution was already there, it is removed.

Additional approach is to transliterate whatever user types in into Latin and do search both in original typed text and Latin version.