merge(third_party/git): Merge squashed git subtree at v2.23.0
Merge commit '1b593e1ea4' as 'third_party/git'
This commit is contained in:
commit
7ef0d62730
3629 changed files with 1139935 additions and 0 deletions
3
third_party/git/contrib/update-unicode/.gitignore
vendored
Normal file
3
third_party/git/contrib/update-unicode/.gitignore
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
uniset/
|
||||
UnicodeData.txt
|
||||
EastAsianWidth.txt
|
||||
20
third_party/git/contrib/update-unicode/README
vendored
Normal file
20
third_party/git/contrib/update-unicode/README
vendored
Normal file
|
|
@ -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.
|
||||
33
third_party/git/contrib/update-unicode/update_unicode.sh
vendored
Executable file
33
third_party/git/contrib/update-unicode/update_unicode.sh
vendored
Executable file
|
|
@ -0,0 +1,33 @@
|
|||
#!/bin/sh
|
||||
#See http://www.unicode.org/reports/tr44/
|
||||
#
|
||||
#Me Enclosing_Mark an enclosing combining mark
|
||||
#Mn Nonspacing_Mark a nonspacing combining mark (zero advance width)
|
||||
#Cf Format a format control character
|
||||
#
|
||||
cd "$(dirname "$0")"
|
||||
UNICODEWIDTH_H=$(git rev-parse --show-toplevel)/unicode-width.h
|
||||
|
||||
wget -N http://www.unicode.org/Public/UCD/latest/ucd/UnicodeData.txt \
|
||||
http://www.unicode.org/Public/UCD/latest/ucd/EastAsianWidth.txt &&
|
||||
if ! test -d uniset; then
|
||||
git clone https://github.com/depp/uniset.git &&
|
||||
( cd uniset && git checkout 4b186196dd )
|
||||
fi &&
|
||||
(
|
||||
cd uniset &&
|
||||
if ! test -x uniset; then
|
||||
autoreconf -i &&
|
||||
./configure --enable-warnings=-Werror CFLAGS='-O0 -ggdb'
|
||||
fi &&
|
||||
make
|
||||
) &&
|
||||
UNICODE_DIR=. && export UNICODE_DIR &&
|
||||
cat >$UNICODEWIDTH_H <<-EOF
|
||||
static const struct interval zero_width[] = {
|
||||
$(uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD)
|
||||
};
|
||||
static const struct interval double_width[] = {
|
||||
$(uniset/uniset --32 eaw:F,W)
|
||||
};
|
||||
EOF
|
||||
Loading…
Add table
Add a link
Reference in a new issue