Peter Kirk asked: > >In other words, if what you need is to glue things together, > >i.e. a zero width no-break space *function*, then use > >U+2060. If what you need is a BOM for the encoding scheme > >specifications, then use U+FEFF. > > > >What is *discouraged*, but not prohibited, of course, is > >using U+FEFF for a zero width no-break space *function*, > >precisely because that interacts so confusingly with > >the BOM. > > > >--Ken > > > And what if you need a ZWNBS function for something other than gluing > things together? For example, as a carrier for a string or line initial > diacritical mark when no spacing is required?
This is not something sanctioned by the standard. The carrier for a combining mark that is to display in isolation without a base character is U+0020 SPACE. If you want to also indicate the absence of a line break opportunity, then the carrier is U+00A0 NO-BREAK SPACE (NBSP). Despite its name, U+FEFF ZWNBS is *NOT* a space character. It is formally gc=Cf, not gc=Zs. It also does not have the White_Space property. So "a ZWNBS function for something other than gluing things together" is a contradiction in terms of the current definition of the standard. The *meaning* of the "ZWNBS function" is its behavior in the context of UAX #14, Line Breaking Properties. See the WJ Word joiner entry (normative) of UAX #14: http://www.unicode.org/reports/tr14/ > This is one of the > suggestions for some of the Hebrew problems, but I have had no response > to my suggestion of using U+2060, which is inappropriately named for the > function I have in mind. The function I think you have in mind is not isolated display of a combining mark, but rather trying to find a mechanism for getting around the conformance strictures of the standard, to get a combining mark to apply to a *following* base character, rather than to a *preceding* base character. Trying to use U+FEFF *or* U+2060 to do this would be inappropriate. --Ken