about summary refs log tree commit diff
path: root/contrib/update-unicode/README
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/update-unicode/README')
-rw-r--r--contrib/update-unicode/README20
1 files changed, 20 insertions, 0 deletions
diff --git a/contrib/update-unicode/README b/contrib/update-unicode/README
new file mode 100644
index 000000000000..151a1970419f
--- /dev/null
+++ b/contrib/update-unicode/README
@@ -0,0 +1,20 @@
+TL;DR: Run update_unicode.sh after the publication of a new Unicode
+standard and commit the resulting unicode-widths.h file.
+
+The long version
+================
+
+The Git source code ships the file unicode-widths.h which contains
+tables of zero and double width Unicode code points, respectively.
+These tables are generated using update_unicode.sh in this directory.
+update_unicode.sh itself uses a third-party tool, uniset, to query two
+Unicode data files for the interesting code points.
+
+On first run, update_unicode.sh clones uniset from Github and builds it.
+This requires a current-ish version of autoconf (2.69 works per December
+2016).
+
+On each run, update_unicode.sh checks whether more recent Unicode data
+files are available from the Unicode consortium, and rebuilds the header
+unicode-widths.h with the new data. The new header can then be
+committed.