|
|
Classification: |
C++ |
Category: |
Development |
Created: |
07/19/99 |
Modified: |
09/19/2001 |
Number: |
FAQ-0641 |
Platform: |
Symbian OS v6.0, Symbian OS v6.1 |
|
Question: When I build my resource files with the latest version of RCOMP, I get a string of warnings such as:
eikon.RSS(969) : Warning: Deprecated non-unicode value in source stream
What does this mean, and what should I do about it?
Answer: Note that this applies only to Unicode builds, so v6.0 and beyond, and also ER5u (but not ER5).
This warning comes from RCOMP, and means that the input stream expects Unicode character constants, but some of the CP1525-specific
character codes have been detected. Rather than break everything, RCOMP assumes that people want the Unicode equivalent and
does the relevant translation - the warning is to make people fix the problem!
A typical example:
#define KEllipsis 0x85
RESOURCE MENU_PANE r_word_fileoptions_menu { items= { MENU_ITEM { command=EEikCmdFileSaveAs; txt="Save as" }, // and so on...
The specified value of the Ellipsis character ("...") is one of the Codepage 1252 encodings which is not also the Unicode
encoding for the same character, so RCOMP warns you of the problem and translates 0x85 into 0x2026, which is the Unicode equivalent.
The full table of characters which need to be converted is given below, but note that RCOMP will only complain about characters
in the range 128-159.
character narrow build (hex) Unicode build (hex) paragraph delimiter 06 2029 line break 07 2028 page break 08 000C non-break tab 0A none; use 0009 (tab) + FEFF (zero-width non-break space) non-break hyphen 0B 2011 potential hyphen 0C 00AD picture 0E FFFC visible space 0F none; visible versions of characters are no longer defined in a public header non-break space 10 00A0
Euro currency symbol 80 20AC single low-9 quotation mark 82 201A small f with hook 83 0192 double low-9 quotation mark 84 201E horizontal ellipsis 85 2026 dagger 86 2020 double dagger 87 2021 modifier circumflex 88 02C6 (see also below) per mil 89 2030 S caron 8A 0160 single left angle quote 8B 2039 OE ligature 8C 0152 Z caron 8E 017D left single quote 91 2018 right single quote 92 2019 left double quote 93 201C right double quote 94 201D bullet 95 2022 en dash 96 2013 em dash 97 2014 small tilde 98 02DC trademark sign 99 2122 s caron 9A 0161 single right angle quote 9B 203A oe ligature 9C 0153 z caron 9E 017E Y umlaut 9F 0178
About the modifier circumflex, hex 88 / 02C6, Tim Band notes: For the circumflex to automatically combine with the previous
letter, it is much better to use U+0302, "combining circumflex".
|
|
|