Ok, I have an app where database is SQL Server and it’s defined as Case insensitive and Accent insensitive.
This way, textual searches against database made by users are pretty clear and fast. This is specially good on several autocomplete fields placed on search forms along the app.
However I’ve just realized that when you type the start of the text you want to select on a select field, the default filtering behaviour on the combo is accent sensitive.
Now I wonder if there’s any way to alter this default behaviour or if I should modify data input in some forms to avoid lengthy combos, as now seems pretty inconsistent to me that all the app ignores accent sensitivity except combo boxes.
I suppose you mean that if we have e.g. the following in HTML, then pressing “A” or “E” when focused in the control takes us nowhere:
I’m afraid this is how browsers behave. There is no specification of this behavior, but browsers seem to move to the item starting with a letter when a letter key is pressed. And they take a very literal view on letters here; e.g., È, É, and E are three distinct letters. It seems that this behavior is strictly letter key dependent; e.g., on my keyboard, as on many European keyboards, pressing first the “´” key and then the “E” key produces “é”, but this does not take me to “École” (and this does not depend on the case of letters). I can get there if I switch to French keyboard settings where I can type “é” using a single key.
There’s a kludgy workaround. Replace the accented letters by unaccented letters followed by combining diacritic marks:
Problems with this: Combining diacritic marks are not supported by all fonts. Therefore they might (on some old browsers) be not displayed at all, or they might (even in new browsers) get displayed in a font different from the base text, causing typographic mess of some kind. Perhaps the most serious problem, though, is that now you cannot use keys like É and Å when available on a keyboard. So this would probably make sense only when you expect that people are using something like US keyboards, with no letters with diacritic marks.