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.
