As it is said in xetex mailing list
Xunicode is mostly about backward compatibility, providing sensible general definitions for macros that have been defined in older packages which now should not be used with XeTeX. This allows LaTeX source to be reused, and does not force people to learn new input methods, when they have already built up experience with non-XeTeX versions of LaTeX, etc.
I wonder then why xunicode
emulates LaTeX accents by a method which differes from natural LaTeX method (see description here):
xunicode takes characters entered through the traditional TeX keystrokes (\'e for e-acute, etc.) and places the precomposed Unicode character (U+00E9 for e-acute) in the output file. (In other words, it doesn't really matter whether you enter e-acute directly, if you have a keyboard that supports it, or using the TeX keystrokes; you still get the Unicode precomposed character.) If the combination that you type using traditional TeX methods does not exist in Unicode in precomposed form (e.g., \v y, since y-caron is not a precomposed combination), xunicode inserts the combining mark after the base letter. I also notice that if I enter 'e' followed by \char"0301, the combining mark remains (i.e., xunicode does not replace this sequence with the precomposed version.)
As a result, output is not satisfactory for some of those fonts which do not have precomposed accented charcters in case if e-acute
is absent.
I mean why xunicode
outputs e\char"0301
instead of emulating true LaTeX definition of the \'{e}
command?
xunicode
is not very well implemented.xunicode
, but it is not even documented.