Conversion from MARC8 to UTF8 (in e.g. Z3950 search) converts a lot of accented characters to the Unicode decomposed form of [letter without accent][accent only] in Unicode. Most characters originating from the Latin1 character set are not displayed properly in various browsers (in that decomposed form). When we convert to the composed form, these characters are mapped to one unicode character with accent. Presentation improves in various browsers. This patch adds a syspref making this optional behavior. It makes the needed changes in ModBiblioMarc.
I am not sure this should be optional. NFC is required by Zebra, and in theory ModZebra was already patched to force NFC a couple of years ago (though this was apparently unsuccessful). I would be comfortable with forcing NFC all the time, because anyone who disables the NFC composition would end up with a system that had both display and searching issues.
I may have been too fast with this record. I now think that we probably only need to call SetUTF8Flag without second parameter more in one or two places. This function normalizes to NFC. Only some export scripts send out NFD.
s/record/report
I know that there currently is a problem when downloading records from an utf8 source that gives you the decomposed form. It would be great if that could be corrected automatically.
This problem seems to be resolved by bug 8610.