I18n:Updating Unicode version: Difference between revisions

Jump to navigation Jump to search
Line 3: Line 3:
This document describes the process of updating the files in the Mozilla codebase that are generated from Unicode data files.
This document describes the process of updating the files in the Mozilla codebase that are generated from Unicode data files.


== Case conversion ==
== Unicode properties ==


#Download the latest version of UnicodeData.txt from the Unicode website. The current version can be found at http://www.unicode.org/Public/UNIDATA/UnicodeData.txt.
To regenerate the tables in nsUnicodePropertyData.cpp:
#Copy this file to intl/unicharutil/tools/UnicodeData-Latest.txt in the mozilla source tree
 
#'''Until {{Bug|210501}} is fixed''' you will have to edit UnicodeData-Latest.txt by hand and delete all the lines for codepoints above FFFF
(1) Download the current Unicode data files from
#Run <tt>perl gencasetable.pl</tt> in intl/unichar/tools. This creates a new version of intl/unicharutil/src/casetable.h
 
        http://www.unicode.org/Public/UNIDATA/
 
    NB: not all the files are actually needed; currently, we require
      - UnicodeData.txt
      - Scripts.txt
      - EastAsianWidth.txt
      - BidiMirroring.txt
      - HangulSyllableType.txt
      - ReadMe.txt (to record version/date of the UCD)
      - Unihan_Variants.txt (from Unihan.zip)
    though this may change if we find a need for additional properties.
 
    The Unicode data files listed above should be together in one directory.
    We also require the file  
        http://www.unicode.org/Public/security/latest/xidmodifications.txt
    This file should be in a sub-directory "security" immediately below the
        directory containing the other Unicode data files.
 
(2) Run this tool using a command line of the form
 
        perl genUnicodePropertyData.pl \
                /path/to/hb-common.h  \
                /path/to/UCD-directory
 
    (where hb-common.h is found in the gfx/harfbuzz/src directory).
 
    This will generate (or overwrite!) the files
 
        nsUnicodePropertyData.cpp
        nsUnicodeScriptCodes.h
 
    in the current directory.


== Normalization ==
== Normalization ==
67

edits

Navigation menu