Unicode unifies the CJK (Chinese, Japanese, Korean) range. HTML has introduced the LANG attribute. The spec says that this is to be used for CJK disambiguation, among other things. So if the CSS resolves to a generic font like "serif", then we need to select the right font (C, J or K) depending on the language. The LANG attribute can be specified for individual elements, and is inherited from parent elements. If the HTML document does not have any LANG attributes, the HTTP headers should be examined for the Content-Language header. If that is missing too, the LANG should be NULL in nsFont. In that case, we can use the charset of the document as a fallback (heuristic). A separate bug report will be filed for the charset. Since LANG is an ASCII string, the nsFont field can be either char* or nsString. If it is simpler to use nsString, please do so.
Erik is dependent upon this before M7.
Adding lang to nsFont is not the right location, the style system re-uses nsFont for different content nodes which may be in dofferent languages.
See peterl's 08/06/99 16:01 comment in bug 6451.