mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-11 08:01:32 +00:00
ICU-22967 Remove the git lfs support: remove tools/multi
This commit is contained in:
parent
d9505ae577
commit
ddabf0faeb
113 changed files with 0 additions and 47449 deletions
|
@ -1,7 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2009 IBM Corp. and Others. All Rights Reserved
|
||||
clean:
|
||||
-rm -rf ./tmp
|
|
@ -1,108 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2009-2013 IBM Corp. and Others. All Rights Reserved
|
||||
# multicu/c makefile
|
||||
|
||||
all:
|
||||
@echo To build all ICUs: $(MAKE) all-icus
|
||||
@echo "Using the -k option may be a good idea if some are not building properly."
|
||||
@echo ICUVERS: $(ICUVERS)
|
||||
|
||||
info:
|
||||
|
||||
#ICUCONF=sh ./configure
|
||||
ICUCONF=$(MULTICU_ROOT)/c/superconf.sh
|
||||
DOT=$(shell pwd)
|
||||
MULTICU_ROOT=$(DOT)/..
|
||||
include $(MULTICU_ROOT)/common/Makefile-multi.inc
|
||||
-include Makefile.local
|
||||
|
||||
ICUVERS:=$(shell cd $(ICUS); ls icu4c*.tgz | cut -d- -f2 | sort | uniq | fgrep -v -f $(MULTICU_ROOT)/c/old-icu.txt)
|
||||
ICU4JVERS:=$(shell cd $(ICUS); ls icu4j*.jar | cut -d- -f2 | cut -d. -f1 | sort | uniq | fgrep -v -f $(MULTICU_ROOT)/j/old-icu4j.txt)
|
||||
|
||||
BLD=$(C_BLD)
|
||||
INS=$(C_INS)
|
||||
SRC=$(C_SRC)
|
||||
|
||||
ALLICUS=$(ICUVERS:%=$(BLD)/%/$(S_BLD)) $(ICUVERS:%=$(BLD)/r%/$(S_BLD))
|
||||
RICUS=$(ICUVERS:%=$(INS)/r%/$(S_INS))
|
||||
IICUS=$(ICUVERS:%=$(INS)/%/$(S_INS)) $(RICUS)
|
||||
|
||||
|
||||
APRECIOUS=$(ICUVERS:%=$(BLD)/%/$(S_SRC)) $(ICUVERS:%=$(BLD)/r%/$(S_SRC)) $(ICUVERS:%=$(BLD)/%/$(S_BLD)) $(ICUVERS:%=$(INS)/%/$(S_INS)) $(ICUVERS:%=$(BLD)/r%/$(S_BLD)) $(ICUVERS:%=$(INS)/r%/$(S_INS))
|
||||
|
||||
.PRECIOUS: $(APRECIOUS)
|
||||
|
||||
tehprecious:
|
||||
echo $(APRECIOUS)
|
||||
|
||||
$(M_TMP) $(BLD) $(INS):
|
||||
mkdir $(M_TMP)
|
||||
mkdir $(BLD) $(SRC) $(INS)
|
||||
|
||||
$(INS)/%/$(S_INS): $(BLD)/%/$(S_BLD)
|
||||
@if [ -f $(BLD)/$*/build.err ]; then echo '###' Error for $* stored in $(BLD)/$*/build.err - remove if you want me to retry; false; fi
|
||||
( make $(MAKE_OPTS) -C $(BLD)/$*/icu/source 2>&1 all install | tee $(BLD)/$*/build.log ) || ( mv $(BLD)/$*/build.log $(BLD)/$*/build.err ; false )
|
||||
touch -c $@
|
||||
|
||||
$(INS)/r%/$(S_INS): $(BLD)/r%/$(S_BLD)
|
||||
@if [ -f $(BLD)/r$*/build.err ]; then echo '###' Error for $* stored in $(BLD)/r$*/build.err - remove if you want me to retry; false; fi
|
||||
( make $(MAKE_OPTS) -C $(BLD)/r$*/icu/source 2>&1 all install | tee $(BLD)/r$*/build.log ) || ( mv $(BLD)/r$*/build.log $(BLD)/r$*/build.err ; false )
|
||||
touch -c $@
|
||||
|
||||
$(BLD)/r%/$(S_SRC): $(ICUS)/icu4c-%-src.tgz
|
||||
-mv $(BLD)/r$* $(BLD)/r$*.old
|
||||
-( rm -rf ./$(BLD)/r$*.old& )
|
||||
mkdir -p $(BLD)/r$*
|
||||
( cd $(BLD)/r$* ; gunzip -d < $^ | tar xfp - )
|
||||
([ -f $(DOT)/patch/$* ] && patch -d $(BLD)/r$* -p1 < $(DOT)/patch/$*) || true
|
||||
touch -c $@
|
||||
|
||||
$(BLD)/%/$(S_SRC): $(ICUS)/icu4c-%-src.tgz
|
||||
-mv $(BLD)/$* $(BLD)/$*.old
|
||||
-( rm -rf ./$(BLD)/$*.old& )
|
||||
mkdir -p $(BLD)/$*
|
||||
( cd $(BLD)/$* ; gunzip -d < $^ | tar xfp - )
|
||||
([ -f $(DOT)/patch/$* ] && patch -d $(BLD)/$* -p1 < $(DOT)/patch/$*) || true
|
||||
touch -c $@
|
||||
|
||||
|
||||
$(BLD)/r%/$(S_BLD): $(BLD)/r%/$(S_SRC)
|
||||
-mkdir -p $(INS)
|
||||
-chmod a+rx $(BLD)/r$*/icu/source/configure $(BLD)/r$*/icu/source/runConfigureICU
|
||||
( cd $(BLD)/r$*/icu/source ; env CPPFLAGS="$(XTRA_RICU_CPPFLAGS)" `$(ICUCONF) "$(BLD)/r$*/icu/source" "$*"` --enable-renaming --enable-shared --disable-static --enable-release --disable-debug --prefix=$(INS)/r$* )
|
||||
touch -c $@
|
||||
|
||||
$(BLD)/%/$(S_BLD): $(BLD)/%/$(S_SRC)
|
||||
-mkdir -p $(INS)
|
||||
-chmod a+rx $(BLD)/$*/icu/source/configure $(BLD)/$*/icu/source/runConfigureICU
|
||||
( cd $(BLD)/$*/icu/source ; env CPPFLAGS="$(XTRA_ICU_CPPFLAGS)" `$(ICUCONF) "$(BLD)/$*/icu/source" "$*"` --disable-renaming --enable-shared --disable-static --enable-release --disable-debug --prefix=$(INS)/$* )
|
||||
touch -c $@
|
||||
|
||||
|
||||
$(INS)/%/bin/$(TARGET): $(INS)/%/$(S_INS) $(SRCS)
|
||||
# Don't delete the built version.
|
||||
# -rm -rf ./$(BLD)/$*/tmp
|
||||
mkdir ./$(BLD)/$*/tmp
|
||||
@for file in $(OBJECTS); \
|
||||
do \
|
||||
what=`basename $$file .o` ; \
|
||||
echo compiling $*/$$what ; \
|
||||
echo $(CXX) -c -o ./$(BLD)/$*/tmp/$$what.o $$what.cpp -I $(INS)/$*/include -I $(BLD)/$*/icu/source/tools/toolutil ; \
|
||||
$(CXX) -c -o ./$(BLD)/$*/tmp/$$what.o $$what.cpp -I $(INS)/$*/include -I $(BLD)/$*/icu/source/tools/toolutil ; \
|
||||
done
|
||||
$(CXX) -o $@ $(OBJECTS:%.o=./$(BLD)/$*/tmp/%.o) -licudata -licuuc -licutu -licui18n -L$(INS)/$*/lib
|
||||
|
||||
foo:
|
||||
echo $(ALLICUS)
|
||||
|
||||
allicus: $(BLD) $(ALLICUS)
|
||||
|
||||
|
||||
all-icus: iicus
|
||||
|
||||
iicus: $(BLD) $(IICUS)
|
||||
|
||||
ricus: $(RICUS)
|
|
@ -1,54 +0,0 @@
|
|||
# -*- makefile -*-
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
|
||||
include $(MULTICU_ROOT)/common/Makefile-multi.inc
|
||||
|
||||
C_GOOD:=$(shell [ -d $(C_INS) ] && (cd $(C_INS) ; ls -d */$(S_INS) 2>/dev/null | cut -d/ -f1))
|
||||
C_REL:=$(shell [ -d $(C_INS) ] && (cd $(C_INS) ; ls -d r*/$(S_INS) 2>/dev/null | cut -d/ -f1))
|
||||
|
||||
C_CLEAN_TARGET=$(C_GOOD:%=$(C_INS)/%/bin/$(TARGET))
|
||||
|
||||
SOURCES=$(C_SOURCES) $(CXX_SOURCES)
|
||||
C_OBJECTS=$(C_SOURCES:%.c=%.o)
|
||||
CXX_OBJECTS=$(CXX_SOURCES:%.cpp=%.o)
|
||||
OBJECTS=$(C_OBJECTS) $(CXX_OBJECTS)
|
||||
#DEBUGOPT=-g
|
||||
|
||||
# list of ICUs to be built
|
||||
ICU_TARBALLS=$(shell cd $(ICUS) ; ls icu4c-*-src.tgz)
|
||||
# list of versions ( form "3_8 4_0" etc. )
|
||||
ICU_TARBALLS_VERS=$(ICU_TARBALLS:icu4c-%-src.tgz=%)
|
||||
|
||||
|
||||
$(C_INS)/%/bin/$(TARGET): $(SOURCES) $(HEADERS)
|
||||
-rm -rf $(C_INS)/$*/tmp
|
||||
mkdir $(C_INS)/$*/tmp
|
||||
ifneq (,$(CXX_OBJECTS))
|
||||
@for file in $(CXX_OBJECTS); \
|
||||
do \
|
||||
what=`basename $$file .o` ; \
|
||||
echo tools=$(C_BLD)/$*/icu/source/tools/toolutil ; \
|
||||
echo compiling '(C++)' $*/$$what ; \
|
||||
echo `$(C_INS)/$*/bin/icu-config --cxx` `$(C_INS)/$*/bin/icu-config --cxxflags` $(DEBUGOPT) -c -o $(C_INS)/$*/tmp/$$what.o $$what.cpp -I $(C_INS)/$*/include -I $(C_BLD)/$*/icu/source/tools/toolutil ; \
|
||||
`$(C_INS)/$*/bin/icu-config --cxx` `$(C_INS)/$*/bin/icu-config --cxxflags` $(DEBUGOPT) -c -o $(C_INS)/$*/tmp/$$what.o $$what.cpp -I $(C_INS)/$*/include -I $(C_BLD)/$*/icu/source/tools/toolutil || \
|
||||
$(CXX) $(DEBUGOPT) -c -o $(C_INS)/$*/tmp/$$what.o $${what}.cpp -I $(C_INS)/$*/include -I $(C_BLD)/$*/icu/source/tools/toolutil ; \
|
||||
done
|
||||
endif
|
||||
ifneq (,$(C_OBJECTS))
|
||||
@for file in $(C_OBJECTS); \
|
||||
do \
|
||||
what=`basename $$file .o` ; \
|
||||
echo compiling '(C )' $*/$$what ; \
|
||||
$(CC) $(DEBUGOPT) -c -o $(C_INS)/$*/tmp/$$what.o $${what}.c -I $(C_INS)/$*/include -I $(C_BLD)/$*/icu/source/tools/toolutil ; \
|
||||
done
|
||||
endif
|
||||
@echo linking $*/$$what
|
||||
@echo `$(C_INS)/$*/bin/icu-config --cxx` `$(C_INS)/$*/bin/icu-config --ldflags ` $(DEBUGOPT) -o $@ $(OBJECTS:%.o=$(C_INS)/$*/tmp/%.o) -licudata -licuuc -licutu -licui18n -licuio -L$(C_INS)/$*/lib
|
||||
@`$(C_INS)/$*/bin/icu-config --cxx` -Wl,--verbose `$(C_INS)/$*/bin/icu-config --ldflags ` $(DEBUGOPT) -o $@ $(OBJECTS:%.o=$(C_INS)/$*/tmp/%.o) -licudata -licuuc -licutu -licui18n -licuio -L$(C_INS)/$*/lib || \
|
||||
$(CXX) $(DEBUGOPT) -o $@ $(OBJECTS:%.o=$(C_INS)/$*/tmp/%.o) -licudata -licuuc -licutu -licui18n -licuio -L$(C_INS)/$*/lib
|
||||
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2009 IBM Corp. and Others. All Rights Reserved
|
||||
# a list of ICU4Cs too old to build with the current patchset.
|
12779
tools/multi/c/patch/3_0
12779
tools/multi/c/patch/3_0
File diff suppressed because it is too large
Load diff
12388
tools/multi/c/patch/3_2
12388
tools/multi/c/patch/3_2
File diff suppressed because it is too large
Load diff
|
@ -1,21 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2009 IBM Corp. and Others. All Rights Reserved
|
||||
Only in 3_0/icu/source: bin
|
||||
Only in 3_0.orig/icu/source: confdefs.h
|
||||
diff -ru 3_0.orig/icu/source/config/mh-darwin 3_0/icu/source/config/mh-darwin
|
||||
--- 3_0.orig/icu/source/config/mh-darwin 2008-10-20 14:57:52.000000000 -0700
|
||||
+++ 3_0/icu/source/config/mh-darwin 2008-10-20 15:57:28.000000000 -0700
|
||||
@@ -15,6 +15,8 @@
|
||||
## Commands to generate dependency files
|
||||
GEN_DEPS.c= $(CC) -E -MMD $(DEFS) $(CPPFLAGS)
|
||||
GEN_DEPS.cc= $(CXX) -E -MMD $(DEFS) $(CPPFLAGS)
|
||||
+GEN_DEPS.c= echo
|
||||
+GEN_DEPS.cc= echo
|
||||
|
||||
## Commands to compile
|
||||
COMPILE.c= $(CC) $(DEFS) $(CPPFLAGS) $(CFLAGS) -fno-common -c
|
||||
Only in 3_0.orig/icu/source: config.cache
|
||||
Only in 3_0.orig/icu/source: config.log
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/cat
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2009 IBM Corp. and Others. All Rights Reserved
|
||||
#
|
||||
|
||||
Contains ICU4C patches to make old versions build.
|
|
@ -1,70 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2009 IBM Corp. and Others. All Rights Reserved
|
||||
#
|
||||
# Sample "super configure"
|
||||
# this script is responsible for configuring ICU.
|
||||
|
||||
# input variables;
|
||||
# $ICU_VER - the ICU version in underscore format (4_2_0_1)
|
||||
|
||||
ICU_SRC="$1"
|
||||
ICU_VER="$2"
|
||||
|
||||
U_HOST=`hostname`
|
||||
U_SYS=`uname || echo unknown`
|
||||
#echo $HOST
|
||||
|
||||
export rcs=none
|
||||
|
||||
case $U_SYS in
|
||||
AIX)
|
||||
# the preferred 'AIX' type to use
|
||||
AIX=AIX
|
||||
case $ICU_VER in
|
||||
4*)
|
||||
#AIX=AIX4.3VA
|
||||
AIX=AIX
|
||||
;;
|
||||
*)
|
||||
AIX=AIX4.3VA
|
||||
;;
|
||||
1*|2*|3_0*|3_1*)
|
||||
AIX=AIX4.3xlC
|
||||
PATH=/usr/vacpp/bin/:$PATH
|
||||
;;
|
||||
esac
|
||||
rcs=${AIX}
|
||||
;;
|
||||
*)
|
||||
rcs=none
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
|
||||
case $HOST in
|
||||
sys98*)
|
||||
rcs=$AIX
|
||||
;;
|
||||
hp*)
|
||||
rcs='HP-UX/ACC'
|
||||
;;
|
||||
merill*|redhat*|sunlight*)
|
||||
rcs='LinuxRedHat'
|
||||
;;
|
||||
*)
|
||||
echo sh ${ICU_SRC}/configure
|
||||
#echo Unknown host $HOST, edit $0
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
echo sh ${ICU_SRC}/runConfigureICU "${rcs}"
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2009 IBM Corp. and Others. All Rights Reserved
|
||||
|
||||
C_ROOT=$(MULTICU_ROOT)/c
|
||||
J_ROOT=$(MULTICU_ROOT)/j
|
||||
M_TMP=$(MULTICU_ROOT)/tmp
|
||||
C_INS=$(M_TMP)/ins
|
||||
C_BLD=$(M_TMP)/build
|
||||
C_SRC=$(M_TMP)/src
|
||||
|
||||
# C defs
|
||||
S_INS=include/unicode/utypes.h
|
||||
S_SRCDIR=icu/source
|
||||
S_BLD=$(S_SRCDIR)/config.status
|
||||
S_SRC=$(S_SRCDIR)/configure
|
||||
|
||||
-include $(MULTICU_ROOT)/common/Makefile-local.inc
|
||||
|
||||
ICUS=$(MULTICU_ROOT)/packages
|
||||
|
||||
TOP=$(shell pwd)
|
||||
|
||||
# J defs
|
|
@ -1,12 +0,0 @@
|
|||
# -*- makefile -*-
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
include $(MULTICU_ROOT)/common/Makefile-multi.inc
|
||||
ICUS=$(MULTICU_ROOT)/packages
|
||||
J_GOOD:=$(shell [ -d $(ICUS) ] && (cd $(ICUS) ; ls -d icu4j-*.jar | cut -d- -f2 | cut -d. -f1))
|
||||
#J_GOOD=$(ICU4JVERS:%=$(ICUS)/icu4j-%.jar)
|
||||
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
if [ ! -x $1 ];
|
||||
then
|
||||
echo usage: $0 path/to/bin/java
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! $1 -version > /dev/null ;
|
||||
then
|
||||
echo could not run $1
|
||||
exit 2
|
||||
fi
|
||||
|
||||
if ! ( $1 -version 2>&1 | grep -q "java version" );
|
||||
then
|
||||
echo could not get java version from $1
|
||||
exit 3
|
||||
fi
|
||||
|
||||
VER=`$1 -version 2>&1 | grep "java version" | head -1 | sed -e 's%^java version "\([^"]*\)\".*$%\1%'`
|
||||
VERD=`echo $VER | tr . _`
|
||||
|
||||
echo $1 = $VER / $VERD
|
||||
|
||||
FILE="$VERD.sh"
|
||||
|
||||
if [ -f $FILE ];
|
||||
then
|
||||
FILE="${VERD}_$$.sh"
|
||||
echo "$VERD.sh existed, renaming to $FILE - rename to something sane if you want"
|
||||
fi
|
||||
|
||||
JHOME=`dirname $1`
|
||||
JHOME=`dirname $JHOME`
|
||||
|
||||
echo "#!/bin/sh" > $FILE
|
||||
echo "# auto generated for $VER from $1 / addjava.sh" >> $FILE
|
||||
echo "JAVA_HOME=$JHOME" >> $FILE
|
||||
echo >> $FILE
|
||||
echo >> $FILE
|
||||
$1 -version 2>&1 | sed -e 's%^%#%' >> $FILE
|
||||
|
||||
chmod a+rx $FILE
|
||||
|
||||
echo
|
||||
echo "Created: $FILE"
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
set -x
|
||||
rm *.jvm.sh
|
|
@ -1,36 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
VER=/System/Library/Frameworks/JavaVM.framework/Versions
|
||||
if [ ! -d "${VER}" ];
|
||||
then
|
||||
echo err, cant find ${VER} - are you really on a mac?
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VERS=`cd ${VER};ls -d [0-9]*`
|
||||
|
||||
for aver in ${VERS};
|
||||
do
|
||||
if [ ! -x ${VER}/${aver}/Home/bin/java ]; then
|
||||
continue
|
||||
fi
|
||||
if ! ${VER}/${aver}/Home/bin/java -version 2> /dev/null; then
|
||||
continue
|
||||
fi
|
||||
VERNUM=`echo "${aver}" | tr '.' '_'`
|
||||
F=${VERNUM}.jvm.sh
|
||||
echo "# ${F} from ${VER}/${aver}"
|
||||
cat > ${F} <<EOF
|
||||
JAVA_HOME=${VER}/${aver}/Home
|
||||
EOF
|
||||
chmod a+rx ${F}
|
||||
|
||||
if ! ./test.sh ${F}; then
|
||||
rm ${F}
|
||||
echo "# Deleted: ${F} due to failure"
|
||||
fi
|
||||
done
|
|
@ -1,22 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
if [ ! -x ${1} ];
|
||||
then
|
||||
echo could not exec ${1}
|
||||
echo usage: ${0} something.jvm.sh blah
|
||||
exit 1
|
||||
fi
|
||||
#JAVA_HOME=/somewhere/1_6
|
||||
JAVA=java
|
||||
#CLASSPATH=foo/bar.jar:/baz
|
||||
#VM_OPTS=-Xmx265
|
||||
|
||||
. "${1}"
|
||||
|
||||
|
||||
set -x
|
||||
${JAVA_HOME}/bin/${JAVA} ${VM_OPTS} -classpath ${CLASSPATH}:${2} ${3}
|
|
@ -1,25 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
|
||||
Put '.sh' files in this dir , locally, to be used for Java version bringup
|
||||
See addjava below
|
||||
|
||||
ex: '1_6.sh'
|
||||
------
|
||||
JAVA_HOME=/somewhere/1_6
|
||||
#JAVA=java
|
||||
#CLASSPATH=foo/bar.jar:/baz
|
||||
#VM_OPTS=-Xmx265
|
||||
-----
|
||||
|
||||
|
||||
You can use the addjava.sh tool, like this - give it the full path to 'java':
|
||||
|
||||
$ addjava.sh /opt/IBM-JDK-1.5/bin/java
|
||||
Created 1_5.sh
|
||||
|
||||
IF 1_5.sh alreday exists, a random number will be added to the name of the new file.
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2013 IBM Corp. and Others. All Rights Reserved
|
||||
if [ ! -x ${1} ];
|
||||
then
|
||||
echo could not exec ${1}
|
||||
echo usage: ${0} something.sh
|
||||
exit 1
|
||||
fi
|
||||
set -x
|
||||
. "${1}"
|
||||
|
||||
${JAVA_HOME}/bin/java -version 2>/dev/null
|
|
@ -1,6 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2009 IBM Corp. and Others. All Rights Reserved
|
||||
# a list of ICU4Cs too old to build with the current patchset.
|
|
@ -1,55 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (c) 2008-2009 IBM Corp. and Others. All Rights Reserved
|
||||
# Makefile for multicu/sample/chello
|
||||
# C/C++ hello
|
||||
|
||||
## Name of the app
|
||||
TARGET=chello
|
||||
|
||||
## Sources list (C and C++ just to be difficult)
|
||||
C_SOURCES=date.c
|
||||
CXX_SOURCES=uprint.cpp
|
||||
SRCS=$(C_SOURCES) $(CXX_SOURCES)
|
||||
HEADERS=uprint.h
|
||||
|
||||
all:
|
||||
@echo To build and list "'" $(OUTFILES) "'" in "'" $(C_GOOD) "'" use "$(MAKE) check"
|
||||
|
||||
## Setup multicu
|
||||
MULTICU_ROOT=../../
|
||||
include $(MULTICU_ROOT)/c/Makefile-c.inc
|
||||
|
||||
OUT=out
|
||||
|
||||
$(OUT):
|
||||
mkdir $(OUT)
|
||||
|
||||
## The output files. Will result in: out/3_8.txt out/4_0.txt etc.
|
||||
OUTFILES=$(C_GOOD:%=$(OUT)/%.txt)
|
||||
|
||||
.PRECIOUS: $(C_CLEAN_TARGET)
|
||||
|
||||
## Generate a file
|
||||
$(OUT)/%.txt: $(OUT) $(C_INS)/%/bin/$(TARGET)
|
||||
$(shell $(C_INS)/$*/bin/icu-config --invoke) $(C_INS)/$*/bin/$(TARGET) > $@
|
||||
|
||||
## clean
|
||||
clean:
|
||||
-rm -f $(C_CLEAN_TARGET)
|
||||
-rm -f ./$(OUT)/*
|
||||
-rmdir $(OUT)
|
||||
|
||||
## Just generate
|
||||
outfiles: $(OUTFILES)
|
||||
|
||||
## Test: generate out files, and print them.
|
||||
check: $(OUTFILES)
|
||||
@for file in $(OUTFILES); \
|
||||
do \
|
||||
echo; \
|
||||
sed -e "s%^%$$file: %g" < $$file; \
|
||||
done
|
||||
|
|
@ -1,207 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
**********************************************************************
|
||||
* Copyright (C) 1998-2009, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
**********************************************************************
|
||||
*
|
||||
* File date.c
|
||||
*
|
||||
* Modification History:
|
||||
*
|
||||
* Date Name Description
|
||||
* 06/11/99 stephen Creation.
|
||||
* 06/16/99 stephen Modified to use uprint.
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "unicode/utypes.h"
|
||||
#include "unicode/ustring.h"
|
||||
#include "unicode/uclean.h"
|
||||
|
||||
#include "unicode/ucnv.h"
|
||||
#include "unicode/udat.h"
|
||||
#include "unicode/ucal.h"
|
||||
|
||||
#include "uprint.h"
|
||||
|
||||
int main(int argc, char **argv);
|
||||
|
||||
#if UCONFIG_NO_FORMATTING
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
printf("%s: Sorry, UCONFIG_NO_FORMATTING was turned on (see uconfig.h). No formatting can be done. \n", argv[0]);
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
|
||||
|
||||
/* Protos */
|
||||
static void usage(void);
|
||||
static void version(void);
|
||||
static void date(const UChar *tz, UDateFormatStyle style, char *format, UErrorCode *status);
|
||||
|
||||
|
||||
/* The version of date */
|
||||
#define DATE_VERSION "1.0"
|
||||
|
||||
/* "GMT" */
|
||||
static const UChar GMT_ID [] = { 0x0047, 0x004d, 0x0054, 0x0000 };
|
||||
|
||||
|
||||
int
|
||||
main(int argc,
|
||||
char **argv)
|
||||
{
|
||||
int printUsage = 0;
|
||||
int printVersion = 0;
|
||||
int optind = 1;
|
||||
char *arg;
|
||||
const UChar *tz = 0;
|
||||
UDateFormatStyle style = UDAT_DEFAULT;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
char *format = NULL;
|
||||
|
||||
|
||||
/* parse the options */
|
||||
for(optind = 1; optind < argc; ++optind) {
|
||||
arg = argv[optind];
|
||||
|
||||
/* version info */
|
||||
if(strcmp(arg, "-v") == 0 || strcmp(arg, "--version") == 0) {
|
||||
printVersion = 1;
|
||||
}
|
||||
/* usage info */
|
||||
else if(strcmp(arg, "-h") == 0 || strcmp(arg, "--help") == 0) {
|
||||
printUsage = 1;
|
||||
}
|
||||
/* display date in gmt */
|
||||
else if(strcmp(arg, "-u") == 0 || strcmp(arg, "--gmt") == 0) {
|
||||
tz = GMT_ID;
|
||||
}
|
||||
/* display date in gmt */
|
||||
else if(strcmp(arg, "-f") == 0 || strcmp(arg, "--full") == 0) {
|
||||
style = UDAT_FULL;
|
||||
}
|
||||
/* display date in long format */
|
||||
else if(strcmp(arg, "-l") == 0 || strcmp(arg, "--long") == 0) {
|
||||
style = UDAT_LONG;
|
||||
}
|
||||
/* display date in medium format */
|
||||
else if(strcmp(arg, "-m") == 0 || strcmp(arg, "--medium") == 0) {
|
||||
style = UDAT_MEDIUM;
|
||||
}
|
||||
/* display date in short format */
|
||||
else if(strcmp(arg, "-s") == 0 || strcmp(arg, "--short") == 0) {
|
||||
style = UDAT_SHORT;
|
||||
}
|
||||
else if(strcmp(arg, "-F") == 0 || strcmp(arg, "--format") == 0) {
|
||||
if ( optind + 1 < argc ) {
|
||||
optind++;
|
||||
format = argv[optind];
|
||||
}
|
||||
}
|
||||
/* POSIX.1 says all arguments after -- are not options */
|
||||
else if(strcmp(arg, "--") == 0) {
|
||||
/* skip the -- */
|
||||
++optind;
|
||||
break;
|
||||
}
|
||||
/* unrecognized option */
|
||||
else if(strncmp(arg, "-", strlen("-")) == 0) {
|
||||
printf("icudate: invalid option -- %s\n", arg+1);
|
||||
printUsage = 1;
|
||||
}
|
||||
/* done with options, display date */
|
||||
else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* print usage info */
|
||||
if(printUsage) {
|
||||
usage();
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* print version info */
|
||||
if(printVersion) {
|
||||
version();
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* print the date */
|
||||
date(tz, style, format, &status);
|
||||
|
||||
u_cleanup();
|
||||
return (U_FAILURE(status) ? 1 : 0);
|
||||
}
|
||||
|
||||
/* Usage information */
|
||||
static void
|
||||
usage()
|
||||
{
|
||||
puts("Usage: icudate [OPTIONS]");
|
||||
puts("Options:");
|
||||
puts(" -h, --help Print this message and exit.");
|
||||
puts(" -v, --version Print the version number of date and exit.");
|
||||
puts(" -u, --gmt Display the date in Greenwich Mean Time.");
|
||||
puts(" -f, --full Use full display format.");
|
||||
puts(" -l, --long Use long display format.");
|
||||
puts(" -m, --medium Use medium display format.");
|
||||
puts(" -s, --short Use short display format.");
|
||||
}
|
||||
|
||||
/* Version information */
|
||||
static void
|
||||
version()
|
||||
{
|
||||
printf("icudate version %s (ICU version %s), created by Stephen F. Booth.\n",
|
||||
DATE_VERSION, U_ICU_VERSION);
|
||||
puts(U_COPYRIGHT_STRING);
|
||||
}
|
||||
|
||||
/* Format the date */
|
||||
static void
|
||||
date(const UChar *tz,
|
||||
UDateFormatStyle style,
|
||||
char *format,
|
||||
UErrorCode *status)
|
||||
{
|
||||
UChar *s = 0;
|
||||
int32_t len = 0;
|
||||
UDateFormat *fmt;
|
||||
UChar uFormat[100];
|
||||
|
||||
fmt = udat_open(style, style, 0, tz, -1,NULL,0, status);
|
||||
if ( format != NULL ) {
|
||||
u_charsToUChars(format,uFormat,strlen(format)),
|
||||
udat_applyPattern(fmt,false,uFormat,strlen(format));
|
||||
}
|
||||
len = udat_format(fmt, ucal_getNow(), 0, len, 0, status);
|
||||
if(*status == U_BUFFER_OVERFLOW_ERROR) {
|
||||
*status = U_ZERO_ERROR;
|
||||
s = (UChar*) malloc(sizeof(UChar) * (len+1));
|
||||
if(s == 0) goto finish;
|
||||
udat_format(fmt, ucal_getNow(), s, len + 1, 0, status);
|
||||
if(U_FAILURE(*status)) goto finish;
|
||||
}
|
||||
|
||||
/* print the date string */
|
||||
uprint(s, stdout, status);
|
||||
|
||||
/* print a trailing newline */
|
||||
printf(" @ ICU " U_ICU_VERSION "\n");
|
||||
|
||||
finish:
|
||||
udat_close(fmt);
|
||||
free(s);
|
||||
}
|
||||
#endif
|
|
@ -1,78 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
**********************************************************************
|
||||
* Copyright (C) 1998-2009, International Business Machines Corporation
|
||||
* and others. All Rights Reserved.
|
||||
**********************************************************************
|
||||
*
|
||||
* File uprint.cpp
|
||||
*
|
||||
* Modification History:
|
||||
*
|
||||
* Date Name Description
|
||||
* 06/14/99 stephen Creation.
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#include "uprint.h"
|
||||
|
||||
#include "unicode/ucnv.h"
|
||||
#include "unicode/ustring.h"
|
||||
|
||||
#define BUF_SIZE 128
|
||||
|
||||
/* Print a ustring to the specified FILE* in the default codepage */
|
||||
U_CAPI void
|
||||
uprint(const char16_t *s,
|
||||
FILE *f,
|
||||
UErrorCode *status)
|
||||
{
|
||||
/* converter */
|
||||
UConverter *converter;
|
||||
char buf [BUF_SIZE];
|
||||
int32_t sourceLen;
|
||||
const char16_t *mySource;
|
||||
const char16_t *mySourceEnd;
|
||||
char *myTarget;
|
||||
int32_t arraySize;
|
||||
|
||||
if(s == 0) return;
|
||||
|
||||
/* set up the conversion parameters */
|
||||
sourceLen = u_strlen(s);
|
||||
mySource = s;
|
||||
mySourceEnd = mySource + sourceLen;
|
||||
myTarget = buf;
|
||||
arraySize = BUF_SIZE;
|
||||
|
||||
/* open a default converter */
|
||||
converter = ucnv_open(0, status);
|
||||
|
||||
/* if we failed, clean up and exit */
|
||||
if(U_FAILURE(*status)) goto finish;
|
||||
|
||||
/* perform the conversion */
|
||||
do {
|
||||
/* reset the error code */
|
||||
*status = U_ZERO_ERROR;
|
||||
|
||||
/* perform the conversion */
|
||||
ucnv_fromUnicode(converter, &myTarget, myTarget + arraySize,
|
||||
&mySource, mySourceEnd, nullptr,
|
||||
true, status);
|
||||
|
||||
/* Write the converted data to the FILE* */
|
||||
fwrite(buf, sizeof(char), myTarget - buf, f);
|
||||
|
||||
/* update the conversion parameters*/
|
||||
myTarget = buf;
|
||||
arraySize = BUF_SIZE;
|
||||
}
|
||||
while(*status == U_BUFFER_OVERFLOW_ERROR);
|
||||
|
||||
finish:
|
||||
|
||||
/* close the converter */
|
||||
ucnv_close(converter);
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
**********************************************************************
|
||||
* Copyright (C) 1998-2009, International Business Machines Corporation
|
||||
* and others. All Rights Reserved.
|
||||
**********************************************************************
|
||||
*
|
||||
* File uprint.h
|
||||
*
|
||||
* Modification History:
|
||||
*
|
||||
* Date Name Description
|
||||
* 06/14/99 stephen Creation.
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef UPRINT_H
|
||||
#define UPRINT_H 1
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "unicode/utypes.h"
|
||||
|
||||
/* Print a ustring to the specified FILE* in the default codepage */
|
||||
U_CFUNC void uprint(const UChar *s, FILE *f, UErrorCode *status);
|
||||
|
||||
#endif /* ! UPRINT_H */
|
|
@ -1,130 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
MULTICU_ROOT=../../
|
||||
include $(MULTICU_ROOT)/common/Makefile-multi.inc
|
||||
|
||||
XML=./xml
|
||||
JXML=./jxml
|
||||
JVMXML=./jvmxml
|
||||
|
||||
COOKED=cooked
|
||||
INPUT=input
|
||||
INTROXMLS=$(wildcard $(INPUT)/*-introduction.xml)
|
||||
FEATXMLS=$(INTROXMLS:$(INPUT)/%-introduction.xml=$(COOKED)/%-cooked.xml) $(COOKED)/characters.xml
|
||||
ALLCOOKED=cooked/features.xml
|
||||
|
||||
# java stuff
|
||||
MergerName=Merger
|
||||
PropagateName=PropagateFeatures
|
||||
PropagateCharsName=PropagateCharacters
|
||||
MergerPackage=com.ibm.icu.dev.meta
|
||||
MergerPackageSlash=$(subst .,/,$(MergerPackage))
|
||||
## ICUMETA=/xsrl/E/data/meta (in Makefile.local)
|
||||
MergerLib=$(ICUMETA)/lib
|
||||
MergerJar=$(ICUMETA)/icumeta.jar
|
||||
#was: $(ICUMETA)/classes
|
||||
MergerClassPath=$(shell ls $(MergerLib)/*.jar | tr '\n' ':')$(MergerJar):$(OTHERJARS)
|
||||
include Makefile.local
|
||||
MergerBuild=$(ICUMETA)/build.xml
|
||||
#MergerClass=$(ICUMETA)/classes/$(MergerPackageSlash)/$(MergerName).class
|
||||
#MergerJava=$(ICUMETA)/src/$(MergerPackageSlash)/$(MergerName).java
|
||||
#BASEXMLS=$(ICUMETA)/xml/icumeta.xml
|
||||
BASEXMLS=$(ICUMETA)/input/versions.xml
|
||||
|
||||
|
||||
APRECIOUS=$(ICUVERS:%=$(BLD)/%/$(S_SRC)) $(ICUVERS:%=$(BLD)/%/$(S_BLD)) $(ICUVERS:%=$(INS)/%/$(S_INS))
|
||||
|
||||
all: icucaps.xml
|
||||
|
||||
.PRECIOUS: $(APRECIOUS)
|
||||
|
||||
tehprecious:
|
||||
echo $(APRECIOUS)
|
||||
|
||||
$(MergerJar):
|
||||
( cd $(ICUMETA) ; ant jar )
|
||||
|
||||
$(BLD):
|
||||
-mkdir $(BLD)
|
||||
|
||||
$(XML):
|
||||
-mkdir $(XML)
|
||||
|
||||
$(JXML):
|
||||
-mkdir $(JXML)
|
||||
|
||||
$(JVMXML):
|
||||
-mkdir $(JXML)
|
||||
|
||||
ifeq ($(JVMSH),)
|
||||
JVMSH_WARN=warn-jvmsh
|
||||
warn-jvmsh:
|
||||
@echo "Note: No $(JVM)/*$(JVM_CFG) files found, see $(JVM)/readme.txt"
|
||||
endif
|
||||
|
||||
|
||||
DTDCACHE=$(shell pwd)/dtdcache
|
||||
DTDTMP=$(shell pwd)/dtdtmp
|
||||
DTDOVR=$(ICUMETA)/dtd
|
||||
JAVADEBUG=-DCLDR_DTD_CACHE_DEBUG=n -DCLDR_DTD_CACHE_ADEBUG=n
|
||||
JAVAPROPS= -DCLDR_DTD_CACHE=$(DTDCACHE) -DCLDR_DTD_OVERRIDE=$(DTDOVR) -DICU_DTD_CACHE=$(DTDCACHE) -DICU_DTD_OVERRIDE=$DTDOVR
|
||||
|
||||
#//$(DTD)/Makefile: $(ICUMETA)/dtd/Makfile
|
||||
#// ln -s $^ $@
|
||||
#//
|
||||
#//dtd/icucaps.dtd: $(DTD)/Makefile dtd/icucaps.rnc
|
||||
#// make -C $(DTD)
|
||||
|
||||
ICUMETA_XML=$(ICUMETA)/xml/icumeta.xml
|
||||
BASE_VERSION=$(COOKED)/allversions.xml
|
||||
BASE_SOURCE=$(BASEXMLS) $(INPUT)/java.xml
|
||||
|
||||
|
||||
#$(ICUMETA)/xml/icumeta.xml: $(MergerBuild)
|
||||
# ( cd $(ICUMETA) ; ant xml )
|
||||
|
||||
ALLXMLS=$(wildcard $(XML)/*.xml $(JXML)/*.xml $(JVMXML)/*.xml)
|
||||
|
||||
allxmls: $(XML) $(JXML) $(JVMXML)
|
||||
$(MAKE) -f Makefile_c outfiles
|
||||
$(MAKE) -f Makefile_j outfiles
|
||||
|
||||
|
||||
featxmls: $(FEATXMLS)
|
||||
|
||||
allcooked: $(ALLCOOKED)
|
||||
|
||||
$(COOKED):
|
||||
-mkdir $(COOKED)
|
||||
|
||||
$(BASE_VERSION): $(BASE_SOURCE) $(MergerJar) | $(COOKED)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
java $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(MergerName) -v -o:$@ $(BASE_SOURCE)
|
||||
|
||||
$(ALLCOOKED): $(FEATXMLS) $(MergerJar)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
java $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(MergerName) -v -o:$@ $(FEATXMLS)
|
||||
|
||||
$(COOKED)/%-cooked.xml: $(BASE_VERSION) $(INPUT)/%-introduction.xml $(MergerJar) | $(COOKED)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
java $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(PropagateName) $(BASE_VERSION) $(INPUT)/$*-introduction.xml > $(COOKED)/$*-cooked.xml
|
||||
|
||||
$(COOKED)/characters.xml: $(ALLXMLS) $(COOKED)/junicode-cooked.xml $(MergerJar)
|
||||
java $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(PropagateCharsName) > $@ $(ALLXMLS) $(COOKED)/junicode-cooked.xml || (rm ./$@ ; false)
|
||||
|
||||
|
||||
icucaps.xml: allxmls $(BASE_VERSION) $(ALLXMLS) $(MergerJar) $(ALLCOOKED)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
# -rm -rf ./dtdtmp
|
||||
# mkdir dtdtmp
|
||||
# ln -s $(ICUMETA)/dtd/*.dtd ./dtdtmp/
|
||||
# ln -s ./dtd/*.dtd ./dtdtmp/
|
||||
java $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(MergerName) -v -o:$@ $(BASE_VERSION) $(ALLXMLS) $(ALLJXMLS) $(ALLCOOKED)
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# -*- makefile -*-
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
|
||||
|
||||
|
||||
## --- important ---
|
||||
# Path to http://source.icu-project.org/repos/icu/data/trunk/meta
|
||||
ICUMETA=/xsrl/E/data/meta
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## --- all others are optional ---
|
||||
|
||||
# if needed - additional jars on the CLASSPATH
|
||||
#OTHERJARS=somejar.jar:some/other/jar.jar
|
||||
|
||||
# if needed - force path to ICUJAR
|
||||
#ICUJAR=.../icu.jar
|
||||
|
||||
#Special make options
|
||||
#MAKE_OPTS=-j2
|
|
@ -1,51 +0,0 @@
|
|||
# -*- makefile -*-
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2008-2013 IBM Corporation and Others. All Rights Reserved.
|
||||
CPPFLAGS+=-DU_DISABLE_RENAMING=1 -I. -I/xsrl/IIE/include -I/xsrl/E/icu/source/tools/toolutil
|
||||
# TODO - where to get uoptions.h?
|
||||
OBJECTS=testxml.o xmlout.o
|
||||
CXX_SOURCES:=$(OBJECTS:%.o=%.cpp)
|
||||
C_SOURCES=
|
||||
HEADERS=xmlout.h
|
||||
TARGET=testxml
|
||||
|
||||
all:
|
||||
@echo To build and list "'" $(OUTFILES) "'" in "'" $(C_GOOD) "'" use "$(MAKE) check"
|
||||
|
||||
MULTICU_ROOT=../../
|
||||
include $(MULTICU_ROOT)/c/Makefile-c.inc
|
||||
|
||||
OUT=./xml
|
||||
$(OUT):
|
||||
mkdir $(OUT)
|
||||
|
||||
OUTFILES=$(C_GOOD:%=$(OUT)/%.xml)
|
||||
|
||||
|
||||
.PRECIOUS: $(C_CLEAN_TARGET)
|
||||
|
||||
## Generate a file
|
||||
$(OUT)/%.xml: $(OUT) $(C_INS)/%/bin/$(TARGET)
|
||||
$(shell $(C_INS)/$*/bin/icu-config --invoke) $(C_INS)/$*/bin/$(TARGET) > $@
|
||||
|
||||
## clean
|
||||
clean:
|
||||
-rm -f $(C_CLEAN_TARGET)
|
||||
-rm -f ./$(OUT)/*
|
||||
-rmdir $(OUT)
|
||||
|
||||
## Just generate
|
||||
outfiles: $(OUTFILES)
|
||||
|
||||
## Test: generate out files, and print them.
|
||||
check: $(OUTFILES)
|
||||
@for file in $(OUTFILES); \
|
||||
do \
|
||||
echo; \
|
||||
sed -e "s%^%$$file: %g" < $$file; \
|
||||
done
|
||||
|
||||
|
|
@ -1,227 +0,0 @@
|
|||
# -*- makefile -*-
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2012 IBM Corporation and Others. All Rights Reserved.
|
||||
## Name of the app
|
||||
|
||||
TARGET=icu4jscan
|
||||
|
||||
all:
|
||||
@echo To build and list "'" $(OUTFILES) "'" in "'" $(J_GOOD) "'" use "$(MAKE) check"
|
||||
|
||||
## Setup multicu
|
||||
MULTICU_ROOT=../../
|
||||
include $(MULTICU_ROOT)/j/Makefile-j.inc
|
||||
|
||||
|
||||
## The output files. Will result in: out/3_8.txt out/4_0.txt etc.
|
||||
OUT=jxml
|
||||
OUTFILES=$(J_GOOD:%=$(OUT)/%.txt)
|
||||
|
||||
.PRECIOUS: $(C_CLEAN_TARGET)
|
||||
|
||||
## Generate a file
|
||||
$(OUT)/%.txt: $(OUT) $(C_INS)/%/bin/$(TARGET)
|
||||
$(shell $(C_INS)/$*/bin/icu-config --invoke) $(C_INS)/$*/bin/$(TARGET) > $@
|
||||
|
||||
## clean
|
||||
clean:
|
||||
-rm -f $(C_CLEAN_TARGET)
|
||||
-rm -f ./$(OUT)/*
|
||||
-rmdir $(OUT)
|
||||
|
||||
|
||||
## Test: generate out files, and print them.
|
||||
check: $(OUTFILES)
|
||||
@for file in $(OUTFILES); \
|
||||
do \
|
||||
echo; \
|
||||
sed -e "s%^%$$file: %g" < $$file; \
|
||||
done
|
||||
|
||||
MULTICU_ROOT=../../
|
||||
include $(MULTICU_ROOT)/common/Makefile-multi.inc
|
||||
|
||||
XML=./xml
|
||||
|
||||
JVMXML=./jvmxml
|
||||
JVM=$(MULTICU_ROOT)/j/jvm
|
||||
JVM_CFG=.sh
|
||||
JVMSH:=$(wildcard $(JVM)/[0-9]*$(JVM_CFG))
|
||||
|
||||
ALLICUS=$(ICUVERS:%=$(BLD)/%/$(S_BLD))
|
||||
IICUS=$(ICUVERS:%=$(INS)/%/$(S_INS))
|
||||
ALLAPPS=$(ICUVERS:%=$(INS)/%/bin/$(TARGET))
|
||||
ALLXMLS=$(ICUVERS:%=$(XML)/%.xml)
|
||||
COOKED=cooked
|
||||
INPUT=input
|
||||
INTROXMLS=$(wildcard $(INPUT)/*-introduction.xml)
|
||||
FEATXMLS=$(INTROXMLS:$(INPUT)/%-introduction.xml=$(COOKED)/%-cooked.xml) $(COOKED)/characters.xml
|
||||
ALLCOOKED=cooked/features.xml
|
||||
|
||||
JXML=./jxml
|
||||
#ICU4JVERS
|
||||
ALLICU4JS=$(ICU4JVERS:%=$(ICUS)/icu4j-%.jar)
|
||||
ALLJXMLS=$(J_GOOD:%=$(JXML)/%.xml)
|
||||
JSCAN=ScanICU
|
||||
alljxmls: $(JXML) $(ALLJXMLS)
|
||||
JSCANDIR=../icu4jscan
|
||||
JCLASSFILE=$(JSCANDIR)/bin/com/ibm/icu/dev/scan/$(JSCAN).class
|
||||
JScanPackage=com.ibm.icu.dev.scan
|
||||
ALLJVM=$(JVMSH:$(JVM)/%$(JVM_CFG)=%)
|
||||
ALLJVMXMLS=$(ALLJVM:%=$(JVMXML)/%.xml)
|
||||
JVMSCAN=ScanJava
|
||||
alljvmxmls: $(JVMXML) $(ALLJVMXMLS)
|
||||
JVMCLASSFILE=$(JSCANDIR)/bin/com/ibm/icu/dev/scan/$(JVMSCAN).class
|
||||
|
||||
|
||||
# java stuff
|
||||
JAVA=java
|
||||
MergerName=Merger
|
||||
PropagateName=PropagateFeatures
|
||||
PropagateCharsName=PropagateCharacters
|
||||
MergerPackage=com.ibm.icu.dev.meta
|
||||
MergerPackageSlash=$(subst .,/,$(MergerPackage))
|
||||
## ICUMETA=/xsrl/E/data/meta (in Makefile.local)
|
||||
MergerLib=$(ICUMETA)/lib
|
||||
MergerJar=$(ICUMETA)/icumeta.jar
|
||||
#was: $(ICUMETA)/classes
|
||||
MergerClassPath=$(shell ls $(MergerLib)/*.jar | tr '\n' ':')$(MergerJar):$(OTHERJARS)
|
||||
include Makefile.local
|
||||
MergerBuild=$(ICUMETA)/build.xml
|
||||
#MergerClass=$(ICUMETA)/classes/$(MergerPackageSlash)/$(MergerName).class
|
||||
#MergerJava=$(ICUMETA)/src/$(MergerPackageSlash)/$(MergerName).java
|
||||
#BASEXMLS=$(ICUMETA)/xml/icumeta.xml
|
||||
BASEXMLS=$(ICUMETA)/input/versions.xml
|
||||
|
||||
|
||||
APRECIOUS=$(ICUVERS:%=$(BLD)/%/$(S_SRC)) $(ICUVERS:%=$(BLD)/%/$(S_BLD)) $(ICUVERS:%=$(INS)/%/$(S_INS))
|
||||
|
||||
.PRECIOUS: $(APRECIOUS)
|
||||
|
||||
tehprecious:
|
||||
echo $(APRECIOUS)
|
||||
|
||||
$(MergerJar):
|
||||
( cd $(ICUMETA) ; ant jar )
|
||||
|
||||
$(BLD):
|
||||
-mkdir $(BLD)
|
||||
|
||||
$(INS)/%/$(S_INS): $(BLD)/%/$(S_BLD)
|
||||
@if [ -f $(BLD)/$*/build.err ]; then echo Error for $* stored in $(BLD)/$*/build.err; false; fi
|
||||
( make $(MAKE_OPTS) -C $(BLD)/$*/icu/source 2>&1 all install | tee $(BLD)/$*/build.log ) || ( mv $(BLD)/$*/build.log $(BLD)/$*/build.err ; false )
|
||||
touch -c $@
|
||||
|
||||
$(BLD)/%/$(S_SRC): $(ICUS)/icu4c-%-src.tgz
|
||||
-mv $(BLD)/$* $(BLD)/$*.old
|
||||
-( rm -rf ./$(BLD)/$*.old& )
|
||||
mkdir -p $(BLD)/$*
|
||||
( cd $(BLD)/$* ; tar xfpz $(DOT)/$^ )
|
||||
([ -f patch/$* ] && patch -d $(BLD)/$* -p1 < $(DOT)/patch/$*) || true
|
||||
touch -c $@
|
||||
|
||||
$(BLD)/%/$(S_BLD): $(BLD)/%/$(S_SRC)
|
||||
-mkdir -p $(INS)
|
||||
( cd $(BLD)/$*/icu/source ; ./configure --disable-renaming --enable-shared --disable-static --enable-release --disable-debug --prefix=$(DOT)/$(INS)/$* )
|
||||
touch -c $@
|
||||
|
||||
$(INS)/%/bin/$(TARGET): $(INS)/%/$(S_INS) $(SRCS)
|
||||
-rm -rf ./$(BLD)/$*/tmp
|
||||
mkdir ./$(BLD)/$*/tmp
|
||||
@for file in $(OBJECTS); \
|
||||
do \
|
||||
what=`basename $$file .o` ; \
|
||||
echo compiling $*/$$what ; \
|
||||
$(CXX) -c -o ./$(BLD)/$*/tmp/$$what.o $$what.cpp -I $(INS)/$*/include -I $(BLD)/$*/icu/source/tools/toolutil ; \
|
||||
done
|
||||
$(CXX) -o $@ $(OBJECTS:%.o=./$(BLD)/$*/tmp/%.o) -licudata -licuuc -licutu -licui18n -L$(INS)/$*/lib
|
||||
|
||||
$(XML):
|
||||
mkdir $(XML)
|
||||
|
||||
$(JXML):
|
||||
mkdir $(JXML)
|
||||
|
||||
ifeq ($(JVMSH),)
|
||||
JVMSH_WARN=warn-jvmsh
|
||||
warn-jvmsh:
|
||||
@echo "Note: No $(JVM)/*$(JVM_CFG) files found, see $(JVM)/readme.txt"
|
||||
endif
|
||||
|
||||
|
||||
$(JVMXML):
|
||||
mkdir $(JVMXML)
|
||||
|
||||
$(XML)/%.xml: $(INS)/%/bin/$(TARGET) $(XML)
|
||||
$(shell $(INS)/$*/bin/icu-config --invoke) $(INS)/$*/bin/$(TARGET) > $@
|
||||
|
||||
allxmls: $(ALLXMLS) | $(OUT)
|
||||
|
||||
alljvmxmls: $(ALLJVMXMLS) $(JVMSH_WARN) | $(JVMXML)
|
||||
|
||||
allapps: $(BLD) $(ALLAPPS)
|
||||
|
||||
allicus: $(BLD) $(ALLICUS)
|
||||
|
||||
clean-allapps:
|
||||
-rm -f $(ALLAPPS)
|
||||
|
||||
iicus: $(BLD) $(IICUS)
|
||||
|
||||
DTDCACHE=$(shell pwd)/dtdcache
|
||||
DTDTMP=$(shell pwd)/dtdtmp
|
||||
DTDOVR=$(ICUMETA)/dtd
|
||||
JAVADEBUG=-DCLDR_DTD_CACHE_DEBUG=n -DCLDR_DTD_CACHE_ADEBUG=n
|
||||
JAVAPROPS= -DCLDR_DTD_CACHE=$(DTDCACHE) -DCLDR_DTD_OVERRIDE=$(DTDOVR) -DICU_DTD_CACHE=$(DTDCACHE) -DICU_DTD_OVERRIDE=$DTDOVR
|
||||
|
||||
#//$(DTD)/Makefile: $(ICUMETA)/dtd/Makfile
|
||||
#// ln -s $^ $@
|
||||
#//
|
||||
#//dtd/icucaps.dtd: $(DTD)/Makefile dtd/icucaps.rnc
|
||||
#// make -C $(DTD)
|
||||
|
||||
ICUMETA_XML=$(ICUMETA)/xml/icumeta.xml
|
||||
|
||||
#$(ICUMETA)/xml/icumeta.xml: $(MergerBuild)
|
||||
# ( cd $(ICUMETA) ; ant xml )
|
||||
|
||||
featxmls: $(FEATXMLS)
|
||||
|
||||
allcooked: $(ALLCOOKED)
|
||||
|
||||
$(ALLCOOKED): $(FEATXMLS) $(MergerJar)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
$(JAVA) $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(MergerName) -v -o:$@ $(FEATXMLS)
|
||||
|
||||
$(COOKED)/%-cooked.xml: $(ICUMETA_XML) $(INPUT)/%-introduction.xml $(MergerJar)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
$(JAVA) $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(PropagateName) $(ICUMETA_XML) $(INPUT)/$*-introduction.xml > $(COOKED)/$*-cooked.xml
|
||||
|
||||
$(COOKED)/characters.xml: $(ALLJXMLS) $(ALLXMLS) $(MergerJar)
|
||||
$(JAVA) $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(PropagateCharsName) > $@ $(ALLJXMLS) $(ALLXMLS) || (rm ./$@ ; false)
|
||||
|
||||
|
||||
icucaps.xml: $(BASEXMLS) $(ALLJXMLS) $(ALLXMLS) $(MergerJar) $(ALLCOOKED)
|
||||
-rm -rf ./dtdcache
|
||||
mkdir dtdcache
|
||||
# -rm -rf ./dtdtmp
|
||||
# mkdir dtdtmp
|
||||
# ln -s $(ICUMETA)/dtd/*.dtd ./dtdtmp/
|
||||
# ln -s ./dtd/*.dtd ./dtdtmp/
|
||||
$(JAVA) $(JAVAPROPS) -classpath $(MergerClassPath) $(MergerPackage).$(MergerName) -v -o:$@ $(BASEXMLS) $(ALLXMLS) $(ALLJXMLS) $(ALLCOOKED)
|
||||
|
||||
# --- J
|
||||
|
||||
$(JXML)/%.xml: $(JCLASSFILE) $(ICUS)/icu4j-%.jar | $(JXML)
|
||||
$(JAVA) -classpath $(JSCANDIR)/bin:$(ICUS)/icu4j-$*.jar:$(JSCANDIR)/lib/icumeta.jar:$(JSCANDIR)/lib/xalan.jar:$(JSCANDIR)/lib/cldr.jar:$(JSCANDIR)/lib/utilities.jar:$(MergerJar):$(MergerLib)/utilities.jar:$(MergerLib)/cldr.jar:$(JSCANDIR)/lib/xerces.jar:$(OTHERJARS) $(JScanPackage).$(JSCAN) > $@ || (rm -f ./$@ ; false)
|
||||
|
||||
$(JVMXML)/%.xml: $(JVMCLASSFILE) $(JVM)/%$(JVM_CFG) | $(JVMXML)
|
||||
$(JVM)/invoke.sh $(JVM)/$*$(JVM_CFG) $(JSCANDIR)/bin:$(ICUS)/icu4j-$*.jar:$(JSCANDIR)/lib/icumeta.jar:$(JSCANDIR)/lib/xalan.jar:$(JSCANDIR)/lib/cldr.jar:$(MergerJar):$(MergerJar):$(MergerLib)/utilities.jar:$(MergerLib)/cldr.jar:$(JSCANDIR)/lib/utilities.jar:$(JSCANDIR)/lib/xerces.jar:$(OTHERJARS) $(JScanPackage).$(JVMSCAN) > $@ || (rm ./$@ ; false)
|
||||
|
||||
## Just generate
|
||||
outfiles: $(XML) $(JXML) $(ALLJXMLS) $(ALLJVMXMLS)
|
|
@ -1,16 +0,0 @@
|
|||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. -->
|
||||
|
||||
element capabilities
|
||||
{
|
||||
element feature
|
||||
{
|
||||
attribute type {text },
|
||||
attribute total {text}?,
|
||||
attribute version {text},
|
||||
text
|
||||
}*
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008-2012 IBM Corporation and Others, All Rights Reserved. -->
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<names>
|
||||
<name type="full">Java</name>
|
||||
<name type="short">Java</name>
|
||||
</names>
|
||||
<releases>
|
||||
<release version="1.3.1"/>
|
||||
<release version="1.4.2"/>
|
||||
<release version="1.5.0"/>
|
||||
<release version="1.6.0"/>
|
||||
<release version="1.7.0"/>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,29 +0,0 @@
|
|||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. -->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
<release version="1.4.2">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
Arab Hebr Thai Beng Deva Gujr Knda Mlym Orya Punj Taml Telu Urdu Hans Hant Jpan Latn Cyrl Grek Armn Geor Runr Ogam Thai
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
<release version="1.5.0">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
+Khmr Hang Sinh Tibt
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
||||
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. -->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
|
||||
<release version="1.4.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="3.0"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="1.5.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="1.6.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="1.7.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="6.0"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
||||
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (C) 2012 IBM Corporation and Others. All Rights Reserved. -->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
|
||||
<release version="1.7">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
Arab Hebr Thai Beng Deva Gujr Knda Mlym Orya Punj Taml Telu
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="2.2">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
+Urdu
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="2.6">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
+Hans Hant Jpan
|
||||
<!-- CJK Language Variants? -->
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="3.0">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
+Latn Cyrl Grek Armn Geor Runr Ogam Thai
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="3.4">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
+Khmr
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
<release version="3.6">
|
||||
<capabilities>
|
||||
<feature type="layout">
|
||||
+Hang Sinh Tibt
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
||||
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
<release version="1.4.2">
|
||||
<capabilities>
|
||||
<feature total="134" type="formatting">
|
||||
<!-- Note: Java locales have different conventions than ICU. -->
|
||||
ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE hi_IN iw iw_IL ja ja_JP ko ko_KR th th_TH th_TH_TH zh zh_CN zh_HK zh_TW be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_CH de_DE de_LU el el_GR en_AU en_CA en_GB en_IE en_IN en_NZ en_ZA es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_UY es_VE et et_EE fi fi_FI fr fr_BE fr_CA fr_CH fr_FR fr_LU hr hr_HR hu hu_HU is is_IS it it_CH it_IT lt lt_LT lv lv_LV mk mk_MK nl nl_BE nl_NL no no_NO no_NO_NY pl pl_PL pt pt_BR pt_PT ro ro_RO ru ru_RU sh sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_YU sv sv_SE tr tr_TR uk uk_UA en en_US
|
||||
</feature>
|
||||
<feature total="134" type="collation">
|
||||
<!-- Note: Java locales have different conventions than ICU. -->
|
||||
ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE hi_IN iw iw_IL ja ja_JP ko ko_KR th th_TH th_TH_TH zh zh_CN zh_HK zh_TW be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_CH de_DE de_LU el el_GR en_AU en_CA en_GB en_IE en_IN en_NZ en_ZA es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_UY es_VE et et_EE fi fi_FI fr fr_BE fr_CA fr_CH fr_FR fr_LU hr hr_HR hu hu_HU is is_IS it it_CH it_IT lt lt_LT lv lv_LV mk mk_MK nl nl_BE nl_NL no no_NO no_NO_NY pl pl_PL pt pt_BR pt_PT ro ro_RO ru ru_RU sh sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_YU sv sv_SE tr tr_TR uk uk_UA en en_US
|
||||
</feature>
|
||||
<feature type="layout">Arab Hebr Thai Beng Deva Gujr Knda Mlym Orya Punj Taml Telu Urdu Hans Hant Jpan Latn Cyrl Grek Armn Geor Runr Ogam Thai</feature>
|
||||
<feature type="unicode" version="3.0"/>
|
||||
<feature type="characters">af af_NA af_ZA ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC fr_SN ga ga_IE gl gl_ES gu gu_IN gv gv_GB ha ha_Latn ha_Latn_NG haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID ii ii_CN is is_IS it it_CH it_IT ja ja_JP kk kk_Cyrl kk_Cyrl_KZ kl kl_GL km km_KH ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO ne ne_IN ne_NP nl nl_BE nl_NL nn nn_NO om om_ET om_KE pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA si si_LK sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_HK zh_Hans_MO zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,22 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
<release version="1.5.0">
|
||||
<capabilities>
|
||||
<feature total="135" type="locales">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE hi_IN iw iw_IL ja ja_JP ko ko_KR th th_TH th_TH_TH vi vi_VN zh zh_CN zh_HK zh_TW be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_CH de_DE de_LU el el_GR en_AU en_CA en_GB en_IE en_IN en_NZ en_ZA es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_UY es_VE et et_EE fi fi_FI fr fr_BE fr_CA fr_CH fr_FR fr_LU hr hr_HR hu hu_HU is is_IS it it_CH it_IT lt lt_LT lv lv_LV mk mk_MK nl nl_BE nl_NL no no_NO no_NO_NY pl pl_PL pt pt_BR pt_PT ro ro_RO ru ru_RU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_CS sv sv_SE tr tr_TR uk uk_UA en_US en<!--Note: Java locales have different conventions than ICU.--></feature>
|
||||
<feature total="135" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE hi_IN iw iw_IL ja ja_JP ko ko_KR th th_TH th_TH_TH vi vi_VN zh zh_CN zh_HK zh_TW be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_CH de_DE de_LU el el_GR en_AU en_CA en_GB en_IE en_IN en_NZ en_ZA es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_UY es_VE et et_EE fi fi_FI fr fr_BE fr_CA fr_CH fr_FR fr_LU hr hr_HR hu hu_HU is is_IS it it_CH it_IT lt lt_LT lv lv_LV mk mk_MK nl nl_BE nl_NL no no_NO no_NO_NY pl pl_PL pt pt_BR pt_PT ro ro_RO ru ru_RU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_CS sv sv_SE tr tr_TR uk uk_UA en_US en<!--Note: Java locales have different conventions than ICU.--></feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,22 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2009 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
<release version="1.6.0">
|
||||
<capabilities>
|
||||
<feature total="215" type="formatting">zh th ko iw uk tr sq sk pt pl nl ms mk lv lt kk is hr gu ga fr es cs ca es_PR en_HK pt_PT es_PY ar_YE hu_HU in_ID en_IE hi_IN te_IN ta_IN pa_IN or_IN mr_IN ml_IN kn_IN en_IN ja_JP_JP en_ZA ar_IQ sq_AL it_IT es_AR de_AT_PREEURO sr_RS_Cyrl nl_BE fr_BE en_BE_PREEURO ar_JO ja_JP es_BO pt_BR sv_SE_PREEURO zh_SG sl_SI_PREEURO sk_SK fr_CA es_SV fr_CH es_CL zh_CN ar_KW es_CO es_CR no_NO_NY th_TH ar_LB el_CY_PREEURO mt_MT_EURO cs_CZ tr_TR de_DE_PREEURO zh_TW sk_SK_EURO lt_LT_PREEURO fr_LU_PREEURO de_LU lv_LV_PREEURO es_DO uk_UA ar_LY ar_MA sr_ME es_US es_EC et_EE_PREEURO es_UY mt_MT en_MT cs_CZ_EURO es_ES ca_ES es_VE nl_NL_PREEURO no_NO fi_FI_PREEURO fr_FR en_NZ hu_HU_EURO ar_OM el_GR_PREEURO es_GT en_PH pl_PL_PREEURO vi ja ar te ta sv sr sl sh ru ro pa no mt mr kn it in hu fi et en el de da bg be zh_HK pt_PT_PREEURO es_HN hr_HR en_GB_EURO hu_HU_PREEURO ar_QA ga_IE en_IE_PREEURO iw_IL ar_AE gu_IN bn_IN is_IS it_IT_PREEURO pl_PL_EURO de_AT th_TH_TH en_AU ro_RO sr_BA sr_RS ru_RU nl_BE_PREEURO fr_BE_PREEURO en_BE bg_BG ar_BH ar_SA ar_SD sv_SE en_SG sl_SI da_DK_EURO be_BY sk_SK_PREEURO lt_LT_EURO lv_LV_EURO en_CA it_CH de_CH ar_SY ko_KR kk_KZ sr_CS sh_CS et_EE_EURO el_CY cs_CZ_PREEURO ar_TN de_DE sv_SE_EURO da_DK lt_LT fr_LU de_LU_PREEURO lv_LV ar_DZ mk_MK en_US et_EE ar_EG el_CY_EURO mt_MT_PREEURO es_MX ms_MY es_ES_PREEURO ca_ES_PREEURO sr_RS_Latn vi_VN es_NI nl_NL nb_NO fi_FI fr_FR_PREEURO en_GB el_GR es_PA es_PE pl_PL<!--Note: Java locales have different conventions than ICU.--></feature>
|
||||
<feature total="215" type="collation">zh th ko iw uk tr sq sk pt pl nl ms mk lv lt kk is hr gu ga fr es cs ca es_PR en_HK pt_PT es_PY ar_YE hu_HU in_ID en_IE hi_IN te_IN ta_IN pa_IN or_IN mr_IN ml_IN kn_IN en_IN ja_JP_JP en_ZA ar_IQ sq_AL it_IT es_AR de_AT_PREEURO sr_RS_Cyrl nl_BE fr_BE en_BE_PREEURO ar_JO ja_JP es_BO pt_BR sv_SE_PREEURO zh_SG sl_SI_PREEURO sk_SK fr_CA es_SV fr_CH es_CL zh_CN ar_KW es_CO es_CR no_NO_NY th_TH ar_LB el_CY_PREEURO mt_MT_EURO cs_CZ tr_TR de_DE_PREEURO zh_TW sk_SK_EURO lt_LT_PREEURO fr_LU_PREEURO de_LU lv_LV_PREEURO es_DO uk_UA ar_LY ar_MA sr_ME es_US es_EC et_EE_PREEURO es_UY mt_MT en_MT cs_CZ_EURO es_ES ca_ES es_VE nl_NL_PREEURO no_NO fi_FI_PREEURO fr_FR en_NZ hu_HU_EURO ar_OM el_GR_PREEURO es_GT en_PH pl_PL_PREEURO vi ja ar te ta sv sr sl sh ru ro pa no mt mr kn it in hu fi et en el de da bg be zh_HK pt_PT_PREEURO es_HN hr_HR en_GB_EURO hu_HU_PREEURO ar_QA ga_IE en_IE_PREEURO iw_IL ar_AE gu_IN bn_IN is_IS it_IT_PREEURO pl_PL_EURO de_AT th_TH_TH en_AU ro_RO sr_BA sr_RS ru_RU nl_BE_PREEURO fr_BE_PREEURO en_BE bg_BG ar_BH ar_SA ar_SD sv_SE en_SG sl_SI da_DK_EURO be_BY sk_SK_PREEURO lt_LT_EURO lv_LV_EURO en_CA it_CH de_CH ar_SY ko_KR kk_KZ sr_CS sh_CS et_EE_EURO el_CY cs_CZ_PREEURO ar_TN de_DE sv_SE_EURO da_DK lt_LT fr_LU de_LU_PREEURO lv_LV ar_DZ mk_MK en_US et_EE ar_EG el_CY_EURO mt_MT_PREEURO es_MX ms_MY es_ES_PREEURO ca_ES_PREEURO sr_RS_Latn vi_VN es_NI nl_NL nb_NO fi_FI fr_FR_PREEURO en_GB el_GR es_PA es_PE pl_PL<!--Note: Java locales have different conventions than ICU.--></feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,28 +0,0 @@
|
|||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2012 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
<release version="1.6.0">
|
||||
<capabilities>
|
||||
<feature total="152" type="formatting">
|
||||
<!-- Note: Java locales have different conventions than ICU. -->
|
||||
ja_JP es_PE en ja_JP_JP es_PA sr_BA mk es_GT ar_AE no_NO sq_AL bg ar_IQ ar_YE hu pt_PT el_CY ar_QA mk_MK sv de_CH en_US fi_FI is cs en_MT sl_SI sk_SK it tr_TR zh th ar_SA no en_GB sr_CS lt ro en_NZ no_NO_NY lt_LT es_NI nl ga_IE fr_BE es_ES ar_LB ko fr_CA et_EE ar_KW sr_RS es_US es_MX ar_SD in_ID ru lv es_UY lv_LV iw pt_BR ar_SY hr et es_DO fr_CH hi_IN es_VE ar_BH en_PH ar_TN fi de_AT es nl_NL es_EC zh_TW ar_JO be is_IS es_CO es_CR es_CL ar_EG en_ZA th_TH el_GR it_IT ca hu_HU fr en_IE uk_UA pl_PL fr_LU nl_BE en_IN ca_ES ar_MA es_BO en_AU sr zh_SG pt uk es_SV ru_RU ko_KR vi ar_DZ vi_VN sr_ME sq ar_LY ar zh_CN be_BY zh_HK ja iw_IL bg_BG in mt_MT es_PY sl fr_FR cs_CZ it_CH ro_RO es_PR en_CA de_DE ga de_LU de es_AR sk ms_MY hr_HR en_SG da mt pl ar_OM tr th_TH_TH el ms sv_SE da_DK es_HN
|
||||
</feature>
|
||||
<feature total="152" type="collation">
|
||||
<!-- Note: Java locales have different conventions than ICU. -->
|
||||
ja_JP es_PE en ja_JP_JP es_PA sr_BA mk es_GT ar_AE no_NO sq_AL bg ar_IQ ar_YE hu pt_PT el_CY ar_QA mk_MK sv de_CH en_US fi_FI is cs en_MT sl_SI sk_SK it tr_TR zh th ar_SA no en_GB sr_CS lt ro en_NZ no_NO_NY lt_LT es_NI nl ga_IE fr_BE es_ES ar_LB ko fr_CA et_EE ar_KW sr_RS es_US es_MX ar_SD in_ID ru lv es_UY lv_LV iw pt_BR ar_SY hr et es_DO fr_CH hi_IN es_VE ar_BH en_PH ar_TN fi de_AT es nl_NL es_EC zh_TW ar_JO be is_IS es_CO es_CR es_CL ar_EG en_ZA th_TH el_GR it_IT ca hu_HU fr en_IE uk_UA pl_PL fr_LU nl_BE en_IN ca_ES ar_MA es_BO en_AU sr zh_SG pt uk es_SV ru_RU ko_KR vi ar_DZ vi_VN sr_ME sq ar_LY ar zh_CN be_BY zh_HK ja iw_IL bg_BG in mt_MT es_PY sl fr_FR cs_CZ it_CH ro_RO es_PR en_CA de_DE ga de_LU de es_AR sk ms_MY hr_HR en_SG da mt pl ar_OM tr th_TH_TH el ms sv_SE da_DK es_HN
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,28 +0,0 @@
|
|||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2012 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="java">
|
||||
<releases>
|
||||
<release version="1.7.0">
|
||||
<capabilities>
|
||||
<feature total="156" type="formatting">
|
||||
<!-- Note: Java locales have different conventions than ICU. -->
|
||||
ms_MY ar_QA is_IS fi_FI pl en_MT it_CH nl_BE ar_SA ar_IQ es_PR es_CL fi de_AT da en_GB es_PA sr ar_YE mk_MK mk en_CA vi_VN nl_NL es_US zh_CN es_HN en_US fr th ar ar_MA lv de in_ID hr en_ZA ko_KR ar_TN in ja sr_RS be_BY zh_TW ar_SD pt is ja_JP_JP_#u-ca-japanese es_BO ar_DZ ms es_AR ar_AE fr_CA sl es lt_LT sr_ME_#Latn ar_SY ru_RU fr_BE es_ES bg iw_IL sv en iw da_DK es_CR zh_HK zh ca_ES th_TH uk_UA es_DO es_VE pl_PL ar_LY ar_JO it uk hu_HU ga es_GT es_PY bg_BG hr_HR sr_BA_#Latn ro_RO fr_LU no lt en_SG es_EC sr_BA es_NI sk ru mt es_SV nl hi_IN et el_GR sl_SI it_IT ja_JP de_LU fr_CH mt_MT ar_BH sq vi sr_ME pt_BR no_NO el de_CH zh_SG ar_KW ar_EG ga_IE es_PE cs_CZ tr_TR cs es_UY en_IE en_IN ar_OM sr_CS ca be sr__#Latn ko sq_AL pt_PT lv_LV sr_RS_#Latn sk_SK es_MX en_AU no_NO_NY en_NZ sv_SE ro ar_LB de_DE th_TH_TH_#u-nu-thai tr es_CO en_PH et_EE el_CY hu fr_FR
|
||||
</feature>
|
||||
<feature total="156" type="collation">
|
||||
<!-- Note: Java locales have different conventions than ICU. -->
|
||||
ms_MY ar_QA is_IS fi_FI pl en_MT it_CH nl_BE ar_SA ar_IQ es_PR es_CL fi de_AT da en_GB es_PA sr ar_YE mk_MK mk en_CA vi_VN nl_NL es_US zh_CN es_HN en_US fr th ar ar_MA lv de in_ID hr en_ZA ko_KR ar_TN in ja sr_RS be_BY zh_TW ar_SD pt is ja_JP_JP_#u-ca-japanese es_BO ar_DZ ms es_AR ar_AE fr_CA sl es lt_LT sr_ME_#Latn ar_SY ru_RU fr_BE es_ES bg iw_IL sv en iw da_DK es_CR zh_HK zh ca_ES th_TH uk_UA es_DO es_VE pl_PL ar_LY ar_JO it uk hu_HU ga es_GT es_PY bg_BG hr_HR sr_BA_#Latn ro_RO fr_LU no lt en_SG es_EC sr_BA es_NI sk ru mt es_SV nl hi_IN et el_GR sl_SI it_IT ja_JP de_LU fr_CH mt_MT ar_BH sq vi sr_ME pt_BR no_NO el de_CH zh_SG ar_KW ar_EG ga_IE es_PE cs_CZ tr_TR cs es_UY en_IE en_IN ar_OM sr_CS ca be sr__#Latn ko sq_AL pt_PT lv_LV sr_RS_#Latn sk_SK es_MX en_AU no_NO_NY en_NZ sv_SE ro ar_LB de_DE th_TH_TH_#u-nu-thai tr es_CO en_PH et_EE el_CY hu fr_FR
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="2.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="3.2"/>
|
||||
<feature type="formatting"/>
|
||||
<feature type="collation"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="2.4">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="3.2"/>
|
||||
<feature type="formatting"/>
|
||||
<feature type="collation"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="2.6">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0"/>
|
||||
<feature type="formatting"/>
|
||||
<feature type="collation"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="2.6.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0"/>
|
||||
<feature type="formatting"/>
|
||||
<feature type="collation"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="2.8">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0"/>
|
||||
<feature type="uca" version="4.0"/>
|
||||
<feature type="formatting"/>
|
||||
<feature type="collation"/>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,44 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0.1"/>
|
||||
<feature type="uca" version="4.0"/>
|
||||
<feature total="219" type="formatting">
|
||||
af af_ZA am am_ET ar ar_AE
|
||||
ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM
|
||||
ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG bn bn_IN ca
|
||||
ca_ES cs cs_CZ da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR
|
||||
en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ
|
||||
en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO
|
||||
es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA
|
||||
es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa
|
||||
fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga
|
||||
ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu
|
||||
hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja
|
||||
ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt
|
||||
lt_LT lv lv_LV mk mk_MK mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO
|
||||
nl nl_BE nl_NL nn nn_NO om om_ET om_KE pa pa_IN pl pl_PL ps ps_AF
|
||||
pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_YU sk sk_SK sl sl_SI
|
||||
so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_YU sv sv_FI sv_SE sw
|
||||
sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk
|
||||
uk_UA vi vi_VN zh zh_CN zh_HK zh_MO zh_SG zh_TW
|
||||
</feature>
|
||||
|
||||
<feature total="59" type="collation">ar be bg ca cs da de el en en_BE eo es et fa fa_AF fi fo fr gu he hi hr hu is it ja kk kl kn ko lt lv mk mr mt nb nn pa pl ps ro ru sh sk sl sq sr sv ta te th tr uk vi zh zh_HK zh_Hant zh_MO zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0.1"/>
|
||||
<feature type="uca" version="4.0"/>
|
||||
<feature total="230" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_YU sr_Latn sr_Latn_YU sr_YU sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="62" type="collation">ar be bg ca cs da de el en en_BE eo es et fa fa_AF fi fo fr gu he hi hr hu is it ja kk kl kn ko lt lv mk ml mr mt nb nn om or pa pl ps ro ru sh sk sl sq sr sv ta te th tr uk vi zh zh_HK zh_Hant zh_MO zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.4">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature total="242" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="197" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.4">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature total="242" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="197" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.4.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature total="242" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="197" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.4.3">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature total="242" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="201" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.4.3">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature total="242" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="201" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.4.5">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature total="242" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="201" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE be be_BY bg bg_BG ca ca_ES cs cs_CZ da da_DK de de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2009 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.6">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.0"/>
|
||||
<feature type="uca" version="5.0"/>
|
||||
<feature total="245" type="formatting">af af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_PK en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gl gl_ES gu gu_IN gv gv_GB haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_CS sr_Latn sr_Latn_CS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="205" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN be be_BY bg bg_BG bn ca ca_ES cs cs_CZ da da_DK de de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN he he_IL hi hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sh sh_BA sh_YU sk sk_SK sl sl_SI sq sq_AL sr sr_BA sr_Cyrl sr_Cyrl_BA sr_Cyrl_YU sr_YU sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh zh_CN zh_HK zh_Hant zh_MO zh_SG zh_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.8">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.0"/>
|
||||
<feature type="uca" version="5.0"/>
|
||||
<feature type="tz" version="2007g"/>
|
||||
<feature total="266" type="formatting">af af_NA af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC ga ga_IE gl gl_ES gu gu_IN gv gv_GB haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP ka ka_GE kk kk_KZ kl kl_GL km km_KH kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="204" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN be be_BY bg bg_BG bn ca ca_ES cs cs_CZ cy da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN haw he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL km kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="3.8.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.0"/>
|
||||
<feature type="uca" version="5.0"/>
|
||||
<feature type="tz" version="2007j"/>
|
||||
<feature total="266" type="formatting">af af_NA af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC ga ga_IE gl gl_ES gu gu_IN gv gv_GB haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID is is_IS it it_CH it_IT ja ja_JP ka ka_GE kk kk_KZ kl kl_GL km km_KH kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="204" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN be be_BY bg bg_BG bn ca ca_ES cs cs_CZ cy da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN haw he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL km kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="4.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2008c"/>
|
||||
<feature total="282" type="formatting">af af_NA af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC fr_SN ga ga_IE gl gl_ES gu gu_IN gv gv_GB ha ha_Latn ha_Latn_NG haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID ii ii_CN is is_IS it it_CH it_IT ja ja_JP ka ka_GE kk kk_Cyrl kk_Cyrl_KZ kl kl_GL km km_KH kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO ne ne_IN ne_NP nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA si si_LK sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_HK zh_Hans_MO zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="211" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN haw he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL km kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA ur ur_IN ur_PK vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2009 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="4.0.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2008i"/>
|
||||
<feature total="282" type="formatting">af af_NA af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC fr_SN ga ga_IE gl gl_ES gu gu_IN gv gv_GB ha ha_Latn ha_Latn_NG haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID ii ii_CN is is_IS it it_CH it_IT ja ja_JP ka ka_GE kk kk_Cyrl kk_Cyrl_KZ kl kl_GL km km_KH kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO ne ne_IN ne_NP nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA si si_LK sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_HK zh_Hans_MO zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="211" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN haw he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL km kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA ur ur_IN ur_PK vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2008 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="4.1.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2008f"/>
|
||||
<feature total="282" type="formatting">af af_NA af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC fr_SN ga ga_IE gl gl_ES gu gu_IN gv gv_GB ha ha_Latn ha_Latn_NG haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID ii ii_CN is is_IS it it_CH it_IT ja ja_JP ka ka_GE kk kk_Cyrl kk_Cyrl_KZ kl kl_GL km km_KH kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO ne ne_IN ne_NP nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA si si_LK sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_HK zh_Hans_MO zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
<feature total="211" type="collation">ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN haw he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL km kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA sk sk_SK sl sl_SI sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA ur ur_IN ur_PK vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2009 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="4.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2009g"/>
|
||||
<feature total="292" type="formatting">af af_NA af_ZA am am_ET ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN bo bo_CN bo_IN ca ca_ES cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU el el_CY el_GR en en_AU en_BE en_BW en_BZ en_CA en_GB en_HK en_IE en_IN en_JM en_MH en_MT en_NA en_NZ en_PH en_PK en_SG en_TT en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fr_MC fr_SN ga ga_IE gl gl_ES gsw gsw_CH gu gu_IN gv gv_GB ha ha_Latn ha_Latn_GH ha_Latn_NE ha_Latn_NG haw haw_US he he_IL hi hi_IN hr hr_HR hu hu_HU hy hy_AM hy_AM_REVISED id id_ID ii ii_CN is is_IS it it_CH it_IT ja ja_JP ka ka_GE kk kk_Cyrl kk_Cyrl_KZ kl kl_GL km km_KH kn kn_IN ko ko_KR kok kok_IN kw kw_GB lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO ne ne_IN ne_NP nl nl_BE nl_NL nn nn_NO om om_ET om_KE or or_IN pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_MD ro_RO ru ru_RU ru_UA si si_LK sk sk_SK sl sl_SI so so_DJ so_ET so_KE so_SO sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE sw sw_KE sw_TZ ta ta_IN te te_IN th th_TH ti ti_ER ti_ET tr tr_TR uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_HK zh_Hans_MO zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW zu zu_ZA</feature>
|
||||
<feature total="220" type="collation">af af_NA af_ZA ar ar_AE ar_BH ar_DZ ar_EG ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as as_IN az az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_IN ca ca_ES cs cs_CZ cy da da_DK de de_AT de_BE de_CH de_DE de_LU el el_GR en en_AU en_BE en_BW en_CA en_GB en_HK en_IE en_IN en_MT en_NZ en_PH en_SG en_US en_US_POSIX en_VI en_ZA en_ZW eo es es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU ga ga_IE gu gu_IN haw he he_IL hi hi_IN hr hr_HR hu hu_HU id id_ID is is_IS it it_CH it_IT ja ja_JP kk kk_KZ kl kl_GL km kn kn_IN ko ko_KR kok lt lt_LT lv lv_LV mk mk_MK ml mr mr_IN ms ms_BN ms_MY mt mt_MT nb nb_NO nl nl_BE nl_NL nn nn_NO om om_ET om_KE or pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pa_IN pl pl_PL ps ps_AF pt pt_BR pt_PT ro ro_RO ru ru_RU ru_UA si si_LK sk sk_SK sl sl_SI sq sq_AL sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_FI sv_SE ta ta_IN te te_IN th th_TH tr tr_TR uk uk_UA ur ur_IN ur_PK vi vi_VN zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<!-- Copyright (c) 2012 IBM Corporation and Others, All Rights Reserved. -->
|
||||
|
||||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4j">
|
||||
<releases>
|
||||
<release version="50.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="6.2"/>
|
||||
<feature type="uca" version="6.2"/>
|
||||
<feature type="tz" version="2012h"/>
|
||||
<feature total="593" type="formatting">af af_NA af_ZA agq agq_CM ak ak_GH am am_ET ar ar_001 ar_AE ar_BH ar_DJ ar_DZ ar_EG ar_EH ar_ER ar_IL ar_IQ ar_JO ar_KM ar_KW ar_LB ar_LY ar_MA ar_MR ar_OM ar_PS ar_QA ar_SA ar_SD ar_SO ar_SY ar_TD ar_TN ar_YE as as_IN asa asa_TZ az az_Cyrl az_Cyrl_AZ az_Latn az_Latn_AZ bas bas_CM be be_BY bem bem_ZM bez bez_TZ bg bg_BG bm bm_ML bn bn_BD bn_IN bo bo_CN bo_IN br br_FR brx brx_IN bs bs_Cyrl bs_Cyrl_BA bs_Latn bs_Latn_BA ca ca_AD ca_ES cgg cgg_UG chr chr_US cs cs_CZ cy cy_GB da da_DK dav dav_KE de de_AT de_BE de_CH de_DE de_LI de_LU dje dje_NE dua dua_CM dyo dyo_SN dz dz_BT ebu ebu_KE ee ee_GH ee_TG el el_CY el_GR en en_150 en_AG en_AS en_AU en_BB en_BE en_BM en_BS en_BW en_BZ en_CA en_CM en_DM en_FJ en_FM en_GB en_GD en_GG en_GH en_GI en_GM en_GU en_GY en_HK en_IE en_IM en_IN en_JE en_JM en_KE en_KI en_KN en_KY en_LC en_LR en_LS en_MG en_MH en_MP en_MT en_MU en_MW en_NA en_NG en_NZ en_PG en_PH en_PK en_PR en_PW en_SB en_SC en_SG en_SL en_SS en_SZ en_TC en_TO en_TT en_TZ en_UG en_UM en_US en_US_POSIX en_VC en_VG en_VI en_VU en_WS en_ZA en_ZM en_ZW eo es es_419 es_AR es_BO es_CL es_CO es_CR es_CU es_DO es_EA es_EC es_ES es_GQ es_GT es_HN es_IC es_MX es_NI es_PA es_PE es_PH es_PR es_PY es_SV es_US es_UY es_VE et et_EE eu eu_ES ewo ewo_CM fa fa_AF fa_IR ff ff_SN fi fi_FI fil fil_PH fo fo_FO fr fr_BE fr_BF fr_BI fr_BJ fr_BL fr_CA fr_CD fr_CF fr_CG fr_CH fr_CI fr_CM fr_DJ fr_DZ fr_FR fr_GA fr_GF fr_GN fr_GP fr_GQ fr_HT fr_KM fr_LU fr_MA fr_MC fr_MF fr_MG fr_ML fr_MQ fr_MR fr_MU fr_NC fr_NE fr_PF fr_RE fr_RW fr_SC fr_SN fr_SY fr_TD fr_TG fr_TN fr_VU fr_YT ga ga_IE gl gl_ES gsw gsw_CH gu gu_IN guz guz_KE gv gv_GB ha ha_Latn ha_Latn_GH ha_Latn_NE ha_Latn_NG haw haw_US he he_IL hi hi_IN hr hr_BA hr_HR hu hu_HU hy hy_AM id id_ID ig ig_NG ii ii_CN is is_IS it it_CH it_IT it_SM ja ja_JP jgo jgo_CM jmc jmc_TZ ka ka_GE kab kab_DZ kam kam_KE kde kde_TZ kea kea_CV khq khq_ML ki ki_KE kk kk_Cyrl kk_Cyrl_KZ kl kl_GL kln kln_KE km km_KH kn kn_IN ko ko_KP ko_KR kok kok_IN ks ks_Arab ks_Arab_IN ksb ksb_TZ ksf ksf_CM kw kw_GB lag lag_TZ lg lg_UG ln ln_AO ln_CD ln_CF ln_CG lo lo_LA lt lt_LT lu lu_CD luo luo_KE luy luy_KE lv lv_LV mas mas_KE mas_TZ mer mer_KE mfe mfe_MU mg mg_MG mgh mgh_MZ mgo mgo_CM mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY ms_SG mt mt_MT mua mua_CM my my_MM naq naq_NA nb nb_NO nd nd_ZW ne ne_IN ne_NP nl nl_AW nl_BE nl_CW nl_NL nl_SR nl_SX nmg nmg_CM nn nn_NO nus nus_SD nyn nyn_UG om om_ET om_KE or or_IN pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_AO pt_BR pt_CV pt_GW pt_MO pt_MZ pt_PT pt_ST pt_TL rm rm_CH rn rn_BI ro ro_MD ro_RO rof rof_TZ ru ru_BY ru_KG ru_KZ ru_MD ru_RU ru_UA rw rw_RW rwk rwk_TZ saq saq_KE sbp sbp_TZ seh seh_MZ ses ses_ML sg sg_CF shi shi_Latn shi_Latn_MA shi_Tfng shi_Tfng_MA si si_LK sk sk_SK sl sl_SI sn sn_ZW so so_DJ so_ET so_KE so_SO sq sq_AL sq_MK sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_AX sv_FI sv_SE sw sw_KE sw_TZ sw_UG swc swc_CD ta ta_IN ta_LK ta_MY ta_SG te te_IN teo teo_KE teo_UG th th_TH ti ti_ER ti_ET to to_TO tr tr_CY tr_TR twq twq_NE tzm tzm_Latn tzm_Latn_MA uk uk_UA ur ur_IN ur_PK uz uz_Arab uz_Arab_AF uz_Cyrl uz_Cyrl_UZ uz_Latn uz_Latn_UZ vai vai_Latn vai_Latn_LR vai_Vaii vai_Vaii_LR vi vi_VN vun vun_TZ xog xog_UG yav yav_CM yo yo_NG zh zh_Hans zh_Hans_CN zh_Hans_HK zh_Hans_MO zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW zu zu_ZA</feature>
|
||||
<feature total="401" type="collation">af af_NA af_ZA ar ar_001 ar_AE ar_BH ar_DJ ar_DZ ar_EG ar_EH ar_ER ar_IL ar_IQ ar_JO ar_KM ar_KW ar_LB ar_LY ar_MA ar_MR ar_OM ar_PS ar_QA ar_SA ar_SD ar_SO ar_SY ar_TD ar_TN ar_YE as as_IN az az_Latn az_Latn_AZ be be_BY bg bg_BG bn bn_BD bn_IN bs bs_Cyrl bs_Cyrl_BA bs_Latn bs_Latn_BA ca ca_AD ca_ES chr chr_US cs cs_CZ cy cy_GB da da_DK de de_AT de_BE de_CH de_DE de_LI de_LU dz ee ee_GH ee_TG el el_CY el_GR en en_150 en_AG en_AS en_AU en_BB en_BE en_BM en_BS en_BW en_BZ en_CA en_CM en_DM en_FJ en_FM en_GB en_GD en_GG en_GH en_GI en_GM en_GU en_HK en_IE en_IM en_IN en_JE en_JM en_KE en_KI en_KN en_KY en_LC en_LR en_LS en_MG en_MH en_MP en_MT en_MU en_MW en_NA en_NG en_NZ en_PG en_PH en_PK en_PR en_PW en_SB en_SC en_SG en_SL en_SS en_TC en_TO en_TT en_TZ en_UG en_UM en_US en_US_POSIX en_VC en_VG en_VI en_VU en_WS en_ZA en_ZM en_ZW eo es es_419 es_AR es_BO es_CL es_CO es_CR es_CU es_DO es_EA es_EC es_ES es_GQ es_GT es_HN es_IC es_MX es_NI es_PA es_PE es_PH es_PR es_PY es_SV es_US es_UY es_VE et et_EE fa fa_AF fa_IR fi fi_FI fil fil_PH fo fo_FO fr fr_BE fr_BF fr_BI fr_BJ fr_BL fr_CA fr_CD fr_CF fr_CG fr_CH fr_CI fr_CM fr_DJ fr_DZ fr_FR fr_GA fr_GN fr_GP fr_GQ fr_HT fr_KM fr_LU fr_MA fr_MC fr_MF fr_MG fr_ML fr_MQ fr_MR fr_MU fr_NC fr_NE fr_PF fr_RE fr_RW fr_SC fr_SN fr_SY fr_TD fr_TG fr_TN fr_VU ga ga_IE gu gu_IN ha ha_Latn ha_Latn_GH ha_Latn_NE ha_Latn_NG haw he he_IL hi hi_IN hr hr_BA hr_HR hu hu_HU hy hy_AM id id_ID ig ig_NG is is_IS it it_CH it_IT it_SM ja ja_JP ka ka_GE kk kk_KZ kl kl_GL km km_KH kn kn_IN ko ko_KP ko_KR kok kok_IN ln ln_AO ln_CD ln_CF ln_CG lt lt_LT lv lv_LV mk mk_MK ml ml_IN mr mr_IN ms ms_BN ms_MY ms_SG mt mt_MT my my_MM nb nb_NO nl nl_AW nl_BE nl_CW nl_NL nl_SR nl_SX nn nn_NO om om_ET om_KE or or_IN pa pa_Arab pa_Arab_PK pa_Guru pa_Guru_IN pl pl_PL ps ps_AF pt pt_AO pt_BR pt_CV pt_GW pt_MO pt_MZ pt_PT pt_ST pt_TL ro ro_MD ro_RO ru ru_BY ru_KG ru_KZ ru_MD ru_RU ru_UA si si_LK sk sk_SK sl sl_SI sq sq_AL sq_MK sr sr_Cyrl sr_Cyrl_BA sr_Cyrl_ME sr_Cyrl_RS sr_Latn sr_Latn_BA sr_Latn_ME sr_Latn_RS sv sv_AX sv_FI sv_SE sw sw_KE sw_TZ sw_UG ta ta_IN ta_LK ta_MY ta_SG te te_IN th th_TH to to_TO tr tr_CY tr_TR uk uk_UA ur ur_IN ur_PK vi vi_VN yo yo_NG zh zh_Hans zh_Hans_CN zh_Hans_SG zh_Hant zh_Hant_HK zh_Hant_MO zh_Hant_TW zu zu_ZA</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
Binary file not shown.
|
@ -1,7 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2012 IBM Corporation and Others. All Rights Reserved.
|
||||
|
||||
Note: this is a bit of a mess right now.
|
|
@ -1,548 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
// Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
#include <ostream>
|
||||
#include "xmlout.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "uoptions.h"
|
||||
#include "unicode/putil.h"
|
||||
#include "unicode/ucol.h"
|
||||
#include "unicode/ucal.h"
|
||||
#include "unicode/uchar.h"
|
||||
#include "unicode/ures.h"
|
||||
#include "unicode/udat.h"
|
||||
#include "unicode/ustring.h"
|
||||
#if (U_ICU_VERSION_MAJOR_NUM > 2) || ((U_ICU_VERSION_MAJOR_NUM>1)&&(U_ICU_VERSION_MINOR_NUM>5))
|
||||
#include "unicode/uclean.h"
|
||||
#endif
|
||||
|
||||
|
||||
static char *progName;
|
||||
static UOption options[]={
|
||||
UOPTION_HELP_H, /* 0 */
|
||||
UOPTION_HELP_QUESTION_MARK, /* 1 */
|
||||
UOPTION_VERBOSE, /* 2 */
|
||||
UOPTION_ICUDATADIR, /* 3 */
|
||||
UOPTION_DESTDIR, /* 4 */
|
||||
UOPTION_COPYRIGHT, /* 5 */
|
||||
};
|
||||
|
||||
const char *u_errorNameShort(UErrorCode code) {
|
||||
switch(code) {
|
||||
case U_ZERO_ERROR: return "ok";
|
||||
case U_MISSING_RESOURCE_ERROR: return "missing";
|
||||
default: return u_errorName(code);
|
||||
}
|
||||
}
|
||||
|
||||
void usageAndDie(int retCode) {
|
||||
printf("Usage: %s [-v] [-options] -o output-file dictionary-file\n", progName);
|
||||
printf("\tRead in word list and write out compact trie dictionary\n"
|
||||
"options:\n"
|
||||
"\t-h or -? or --help this usage text\n"
|
||||
"\t-V or --version show a version message\n"
|
||||
"\t-c or --copyright include a copyright notice\n"
|
||||
"\t-v or --verbose turn on verbose output\n"
|
||||
"\t-i or --icudatadir directory for locating any needed intermediate data files,\n"
|
||||
"\t followed by path, defaults to %s\n"
|
||||
"\t-d or --destdir destination directory, followed by the path\n",
|
||||
u_getDataDirectory());
|
||||
exit (retCode);
|
||||
}
|
||||
|
||||
/*U_CAPI void U_EXPORT2*/
|
||||
static void _versionFromUString(UVersionInfo versionArray, const char16_t *versionString) {
|
||||
if(versionArray==nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(versionString!=nullptr) {
|
||||
char verchars[U_MAX_VERSION_LENGTH+1];
|
||||
u_UCharsToChars(versionString, verchars, U_MAX_VERSION_LENGTH);
|
||||
u_versionFromString(versionArray, verchars);
|
||||
}
|
||||
}
|
||||
|
||||
/*U_CAPI void U_EXPORT2*/
|
||||
static void _getCLDRVersionDirect(UVersionInfo versionArray, UErrorCode *status) {
|
||||
UResourceBundle *resindx;
|
||||
resindx = ures_openDirect(nullptr, "supplementalData", status);
|
||||
if(!U_FAILURE(*status)) {
|
||||
// fprintf(stderr, "Err: could not open res_index, %s\n", u_errorName(status));
|
||||
// fflush(stderr);
|
||||
// } else {
|
||||
const char16_t *cldrver;
|
||||
int32_t len;
|
||||
cldrver = ures_getStringByKey(resindx, "cldrVersion", &len, status);
|
||||
if(!U_FAILURE(*status)) {
|
||||
// fprintf(stderr, "ERR: could not load CLDRVersion key: %s\n", u_errorName(*status));
|
||||
// fflush(stderr);
|
||||
// } else {
|
||||
// UVersionInfo cldrVersion;
|
||||
_versionFromUString(versionArray, cldrver);
|
||||
// strcpy(tmp, "type=\"cldr\" version=\"");
|
||||
// u_versionToString(cldrVersion, tmp+strlen(tmp));
|
||||
// strcat(tmp, "\"");
|
||||
// XMLElement icuData(xf, "feature", tmp, true);
|
||||
}
|
||||
ures_close(resindx);
|
||||
}
|
||||
}
|
||||
|
||||
/*U_CAPI void U_EXPORT2*/
|
||||
static void _getCLDRVersionOld(UVersionInfo versionArray, UErrorCode *status) {
|
||||
UResourceBundle *resindx;
|
||||
resindx = ures_openDirect(nullptr, "res_index", status);
|
||||
if(!U_FAILURE(*status)) {
|
||||
// fprintf(stderr, "Err: could not open res_index, %s\n", u_errorName(status));
|
||||
// fflush(stderr);
|
||||
// } else {
|
||||
const char16_t *cldrver;
|
||||
int32_t len;
|
||||
cldrver = ures_getStringByKey(resindx, "CLDRVersion", &len, status);
|
||||
if(!U_FAILURE(*status)) {
|
||||
// fprintf(stderr, "ERR: could not load CLDRVersion key: %s\n", u_errorName(*status));
|
||||
// fflush(stderr);
|
||||
// } else {
|
||||
// UVersionInfo cldrVersion;
|
||||
_versionFromUString(versionArray, cldrver);
|
||||
// strcpy(tmp, "type=\"cldr\" version=\"");
|
||||
// u_versionToString(cldrVersion, tmp+strlen(tmp));
|
||||
// strcat(tmp, "\"");
|
||||
// XMLElement icuData(xf, "feature", tmp, true);
|
||||
}
|
||||
ures_close(resindx);
|
||||
}
|
||||
}
|
||||
|
||||
int could_open(const char *locale, char *comments) {
|
||||
char tmp[200];
|
||||
UResourceBundle *rb = nullptr;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
rb = ures_open(nullptr, locale, &status);
|
||||
if(U_FAILURE(status)) {
|
||||
sprintf(tmp, " open:%s", u_errorName(status));
|
||||
strcat(comments, tmp);
|
||||
return 0;
|
||||
} else {
|
||||
ures_close(rb);
|
||||
sprintf(tmp, " open:%s", u_errorNameShort(status));
|
||||
strcat(comments, tmp);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
int col_could_open(const char *locale, char *comments) {
|
||||
char tmp[200];
|
||||
UCollator *rb = nullptr;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
rb = ucol_open(locale, &status);
|
||||
if(U_FAILURE(status)) {
|
||||
sprintf(tmp, " open:%s", u_errorName(status));
|
||||
/*strcat(comments, tmp); */
|
||||
return 0;
|
||||
} else {
|
||||
ucol_close(rb);
|
||||
sprintf(tmp, " open:%s", u_errorNameShort(status));
|
||||
/* strcat(comments, tmp); */
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
const char *UDateFormatSymbolType_name(UDateFormatSymbolType i) {
|
||||
switch(i) {
|
||||
case UDAT_ERAS: return "UDAT_ERAS"; break;
|
||||
/** The month names, for example February */
|
||||
case UDAT_MONTHS: return "UDAT_MONTHS"; break;
|
||||
/** The short month names, for example Feb. */
|
||||
case UDAT_SHORT_MONTHS: return "UDAT_SHORT_MONTHS"; break;
|
||||
/** The weekday names, for example Monday */
|
||||
case UDAT_WEEKDAYS: return "UDAT_WEEKDAYS"; break;
|
||||
/** The short weekday names, for example Mon. */
|
||||
case UDAT_SHORT_WEEKDAYS: return "UDAT_SHORT_WEEKDAYS"; break;
|
||||
/** The AM/PM names, for example AM */
|
||||
case UDAT_AM_PMS: return "UDAT_AM_PMS"; break;
|
||||
/** The localized characters */
|
||||
case UDAT_LOCALIZED_CHARS: return "UDAT_LOCALIZED_CHARS"; break;
|
||||
/** The long era names, for example Anno Domini */
|
||||
#if U_ICU_VERSION_MAJOR_NUM>3 || U_ICU_VERSION_MAJOR_NUM>3
|
||||
case UDAT_ERA_NAMES: return "UDAT_ERA_NAMES"; break;
|
||||
#endif
|
||||
#if U_ICU_VERSION_MAJOR_NUM>3 || U_ICU_VERSION_MAJOR_NUM>3
|
||||
/** The narrow month names, for example F */
|
||||
case UDAT_NARROW_MONTHS: return "UDAT_NARROW_MONTHS"; break;
|
||||
/** The narrow weekday names, for example N */
|
||||
case UDAT_NARROW_WEEKDAYS: return "UDAT_NARROW_WEEKDAYS"; break;
|
||||
/** Standalone context versions of months */
|
||||
case UDAT_STANDALONE_MONTHS: return "UDAT_STANDALONE_MONTHS"; break;
|
||||
case UDAT_STANDALONE_SHORT_MONTHS: return "UDAT_STANDALONE_SHORT_MONTHS"; break;
|
||||
case UDAT_STANDALONE_NARROW_MONTHS: return "UDAT_STANDALONE_NARROW_MONTHS"; break;
|
||||
/** Standalone context versions of weekdays */
|
||||
case UDAT_STANDALONE_WEEKDAYS: return "UDAT_STANDALONE_WEEKDAYS"; break;
|
||||
case UDAT_STANDALONE_SHORT_WEEKDAYS: return "UDAT_STANDALONE_SHORT_WEEKDAYS"; break;
|
||||
case UDAT_STANDALONE_NARROW_WEEKDAYS: return "UDAT_STANDALONE_NARROW_WEEKDAYS"; break;
|
||||
#endif
|
||||
#if U_ICU_VERSION_MAJOR_NUM>3 || U_ICU_VERSION_MAJOR_NUM>4
|
||||
/** The quarters, for example 1st Quarter */
|
||||
case UDAT_QUARTERS: return "UDAT_QUARTERS"; break;
|
||||
/** The short quarter names, for example Q1 */
|
||||
case UDAT_SHORT_QUARTERS: return "UDAT_SHORT_QUARTERS"; break;
|
||||
/** Standalone context versions of quarters */
|
||||
case UDAT_STANDALONE_QUARTERS: return "UDAT_STANDALONE_QUARTERS"; break;
|
||||
case UDAT_STANDALONE_SHORT_QUARTERS: return "UDAT_STANDALONE_SHORT_QUARTERS"; break;
|
||||
#endif
|
||||
}
|
||||
return "<Unknown>";
|
||||
}
|
||||
|
||||
|
||||
UDateFormatSymbolType scanArray[] = {
|
||||
UDAT_ERAS,
|
||||
/** The month names, for example February */
|
||||
UDAT_MONTHS,
|
||||
/** The short month names, for example Feb. */
|
||||
UDAT_SHORT_MONTHS,
|
||||
/** The weekday names, for example Monday */
|
||||
UDAT_WEEKDAYS,
|
||||
/** The short weekday names, for example Mon. */
|
||||
UDAT_SHORT_WEEKDAYS,
|
||||
/** The AM/PM names, for example AM */
|
||||
// UDAT_AM_PMS,
|
||||
/** The localized characters */
|
||||
// UDAT_LOCALIZED_CHARS,
|
||||
/** The long era names, for example Anno Domini */
|
||||
// UDAT_ERA_NAMES,
|
||||
/** The narrow month names, for example F */
|
||||
// UDAT_NARROW_MONTHS,
|
||||
};
|
||||
|
||||
int *starts = nullptr;
|
||||
|
||||
char16_t ***rootdata = nullptr;
|
||||
|
||||
void initroot(UErrorCode *status) {
|
||||
UDateFormat *fmt;
|
||||
fmt = udat_open(UDAT_DEFAULT, UDAT_DEFAULT, "root", nullptr, -1,nullptr,0, status);
|
||||
rootdata = (char16_t***)malloc((sizeof(scanArray)/sizeof(scanArray[0]))*sizeof(rootdata[0]));
|
||||
starts = (int*)malloc((sizeof(scanArray)/sizeof(scanArray[0]))*sizeof(starts[0]));
|
||||
for(int i=0;U_SUCCESS(*status)&&i<sizeof(scanArray)/sizeof(scanArray[0]);i++) {
|
||||
int thisCount = udat_countSymbols(fmt, scanArray[i]);
|
||||
rootdata[i]=0;
|
||||
rootdata[i]=(char16_t**)malloc(thisCount*sizeof(rootdata[i][0]));
|
||||
switch(scanArray[i]) {
|
||||
case UDAT_WEEKDAYS:
|
||||
case UDAT_SHORT_WEEKDAYS:
|
||||
starts[i]=1;
|
||||
break;
|
||||
default:
|
||||
starts[i]=0;
|
||||
}
|
||||
for(int j=starts[i];U_SUCCESS(*status)&&j<thisCount;j++) {
|
||||
rootdata[i][j]=(char16_t*)malloc(1024);
|
||||
int sz =
|
||||
udat_getSymbols(fmt,
|
||||
scanArray[i],
|
||||
j,
|
||||
rootdata[i][j],
|
||||
1024,
|
||||
status);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Format the date */
|
||||
static void
|
||||
date(const char16_t *tz,
|
||||
UDateFormatStyle style,
|
||||
char *format,
|
||||
const char *locale, char *comments,
|
||||
UErrorCode *status)
|
||||
{
|
||||
char16_t *s = 0;
|
||||
int32_t len = 0;
|
||||
UDateFormat *fmt;
|
||||
char16_t uFormat[100];
|
||||
char tmp[200];
|
||||
|
||||
int tc=0; // total count
|
||||
int tf=0; // total found
|
||||
int tl = 0;
|
||||
|
||||
fmt = udat_open(style, style, locale, tz, -1,nullptr,0, status);
|
||||
if ( format != nullptr ) {
|
||||
u_charsToUChars(format,uFormat,strlen(format)),
|
||||
udat_applyPattern(fmt,false,uFormat,strlen(format));
|
||||
}
|
||||
len = udat_format(fmt, ucal_getNow(), 0, len, 0, status);
|
||||
if(*status == U_BUFFER_OVERFLOW_ERROR) {
|
||||
*status = U_ZERO_ERROR;
|
||||
s = (char16_t*) malloc(sizeof(char16_t) * (len+1));
|
||||
if(s == 0) goto finish;
|
||||
udat_format(fmt, ucal_getNow(), s, len + 1, 0, status);
|
||||
if(U_FAILURE(*status)) goto finish;
|
||||
}
|
||||
|
||||
/* print the date string */
|
||||
//uprint(s, stdout, status);
|
||||
|
||||
/* print a trailing newline */
|
||||
//printf("\n");
|
||||
/* count bits */
|
||||
char16_t outbuf[1024];
|
||||
for(int i=0;U_SUCCESS(*status)&&i<sizeof(scanArray)/sizeof(scanArray[0]);i++) {
|
||||
int thisCount = udat_countSymbols(fmt, scanArray[i]);
|
||||
tc += thisCount;
|
||||
for(int j=starts[i];U_SUCCESS(*status)&&j<thisCount;j++) {
|
||||
*status = U_ZERO_ERROR;
|
||||
int sz =
|
||||
udat_getSymbols(fmt,
|
||||
scanArray[i],
|
||||
j,
|
||||
outbuf,
|
||||
1024,
|
||||
status);
|
||||
if(U_SUCCESS(*status)) { tf++; tl += u_strlen(outbuf); }
|
||||
//if(!u_strcmp(outbuf,rootdata[i][j])) {
|
||||
if(*status != U_ZERO_ERROR) {
|
||||
#if 0
|
||||
fprintf(stderr, "<!-- %s: err: data %s:%d:%d is missing: %X... -->\n", locale, UDateFormatSymbolType_name(scanArray[i]), i, j, outbuf[0]);
|
||||
#endif
|
||||
sprintf(tmp, " missing: %s#%d-%s ", UDateFormatSymbolType_name(scanArray[i]), j, u_errorNameShort(*status));
|
||||
*status = U_MISSING_RESOURCE_ERROR;
|
||||
strcat(comments, tmp);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
finish:
|
||||
sprintf(tmp, " syms:%d/%d#%d:%s", tf, tc, tl, u_errorNameShort(*status));
|
||||
strcat(comments,tmp);
|
||||
|
||||
udat_close(fmt);
|
||||
free(s);
|
||||
}
|
||||
|
||||
static void writeOkComments(XMLFile &xf, int ok, const char *comments, const char *locale) {
|
||||
char tmp[2000];
|
||||
tmp[0]=0;
|
||||
if(ok) {
|
||||
if(!comments||!*comments) {
|
||||
strcpy(tmp,locale);
|
||||
strcat(tmp, " ");
|
||||
} else {
|
||||
sprintf(tmp, "%s <!-- %s -->", locale, comments);
|
||||
}
|
||||
} else if(comments&&*comments) {
|
||||
sprintf(tmp, "<!-- !! %s: %s -->", locale, comments);
|
||||
}
|
||||
if(tmp&&*tmp) {
|
||||
xf.writeln(tmp);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int could_fmt_dow(const char *locale, char *comments) {
|
||||
char tmp[200];
|
||||
// UResourceBundle *rb = nullptr;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
|
||||
date(nullptr,
|
||||
UDAT_LONG,
|
||||
nullptr,
|
||||
locale, comments,
|
||||
&status);
|
||||
|
||||
if(U_FAILURE(status) || status != U_ZERO_ERROR) {
|
||||
|
||||
sprintf(tmp, " fmt:%s", u_errorNameShort(status));
|
||||
strcat(comments, tmp);
|
||||
return 0;
|
||||
} else {
|
||||
sprintf(tmp, " fmt:%s", u_errorNameShort(status));
|
||||
strcat(comments, tmp);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
void probeCapability(XMLFile& xf, const char *locale) {
|
||||
char comments[1000];
|
||||
int ok=1;
|
||||
int rc =0;
|
||||
|
||||
//fprintf(stderr, "PROBE: %s\n", locale);
|
||||
|
||||
comments[0]=0;
|
||||
|
||||
if(!could_open(locale, comments)) {
|
||||
ok = 0;
|
||||
}
|
||||
|
||||
#if (U_ICU_VERSION_MAJOR_NUM > 2) || ((U_ICU_VERSION_MAJOR_NUM>1)&&(U_ICU_VERSION_MINOR_NUM>2))
|
||||
if(!could_fmt_dow(locale, comments)) {
|
||||
ok = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
writeOkComments(xf,ok, comments,locale);
|
||||
}
|
||||
|
||||
void probeColCapability(XMLFile& xf, const char *locale) {
|
||||
char comments[1000];
|
||||
int ok=1;
|
||||
int rc =0;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
|
||||
//fprintf(stderr, "PROBE: %s\n", locale);
|
||||
|
||||
comments[0]=0;
|
||||
|
||||
if(!col_could_open(locale, comments)) {
|
||||
ok = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
if(!col_could_fmt_dow(locale, comments)) {
|
||||
ok = 0;
|
||||
}
|
||||
*/
|
||||
writeOkComments(xf,ok, comments,locale);
|
||||
}
|
||||
|
||||
int main (int argc, char ** argv) {
|
||||
U_MAIN_INIT_ARGS(argc, argv);
|
||||
progName = argv[0];
|
||||
argc=u_parseArgs(argc, argv, sizeof(options)/sizeof(options[0]), options);
|
||||
// const char *loc;
|
||||
|
||||
{
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
#if (U_ICU_VERSION_MAJOR_NUM > 2) || ((U_ICU_VERSION_MAJOR_NUM>1)&&(U_ICU_VERSION_MINOR_NUM>5))
|
||||
u_init(&status);
|
||||
#else
|
||||
ures_open(nullptr, "en_US", &status);
|
||||
#endif
|
||||
fprintf(stderr, " Init: %s\n", u_errorName(status));
|
||||
|
||||
}
|
||||
|
||||
{
|
||||
UErrorCode is = U_ZERO_ERROR;
|
||||
#if (U_ICU_VERSION_MAJOR_NUM > 2) || ((U_ICU_VERSION_MAJOR_NUM>1)&&(U_ICU_VERSION_MINOR_NUM>2))
|
||||
initroot(&is);
|
||||
fprintf(stderr, "Init: %s\n", u_errorNameShort(is));
|
||||
#endif
|
||||
}
|
||||
|
||||
if(argc<0) {
|
||||
// Unrecognized option
|
||||
fprintf(stderr, "error in command line argument \"%s\"\n", argv[-argc]);
|
||||
usageAndDie(U_ILLEGAL_ARGUMENT_ERROR);
|
||||
}
|
||||
|
||||
if(options[0].doesOccur || options[1].doesOccur) {
|
||||
// -? or -h for help.
|
||||
usageAndDie(0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
{
|
||||
char tmp[200];
|
||||
XMLFile xf(stdout);
|
||||
{
|
||||
xf.writeln("<!DOCTYPE icuInfo SYSTEM \"http://icu-project.org/dtd/icumeta.dtd\">");
|
||||
XMLElement icuInfo(xf, "icuInfo");
|
||||
XMLElement icuProducts(xf, "icuProducts");
|
||||
XMLElement icuProduct(xf, "icuProduct", "type=\"icu4c\"");
|
||||
XMLElement releases(xf, "releases");
|
||||
sprintf(tmp, "version=\"%s\"", U_ICU_VERSION);
|
||||
XMLElement release(xf, "release", tmp);
|
||||
|
||||
XMLElement capabilities(xf, "capabilities");
|
||||
{
|
||||
sprintf(tmp, "type=\"unicode\" version=\"%s\"",
|
||||
U_UNICODE_VERSION);
|
||||
XMLElement icuData(xf, "feature", tmp, true);
|
||||
}
|
||||
{
|
||||
UCollator *col;
|
||||
char ucavers[200];
|
||||
UVersionInfo vers;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
col = ucol_open("root", &status);
|
||||
#if (U_ICU_VERSION_MAJOR_NUM>2) || ((U_ICU_VERSION_MAJOR_NUM>1)&&(U_ICU_VERSION_MINOR_NUM>7))
|
||||
ucol_getUCAVersion(col, vers);
|
||||
u_versionToString(vers, ucavers);
|
||||
#else
|
||||
strcpy(ucavers, "???");
|
||||
#endif
|
||||
sprintf(tmp, "type=\"uca\" version=\"%s\"",
|
||||
ucavers);
|
||||
XMLElement icuData(xf, "feature", tmp, true);
|
||||
ucol_close(col);
|
||||
}
|
||||
#if (U_ICU_VERSION_MAJOR_NUM>3) || ((U_ICU_VERSION_MAJOR_NUM > 2) && (U_ICU_VERSION_MINOR_NUM >7))
|
||||
{
|
||||
const char *tzvers;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
tzvers = ucal_getTZDataVersion(&status);
|
||||
sprintf(tmp, "type=\"tz\" version=\"%s\"",
|
||||
tzvers);
|
||||
XMLElement icuData(xf, "feature", tmp, true);
|
||||
}
|
||||
#endif
|
||||
{
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
UVersionInfo cldrVersion;
|
||||
_getCLDRVersionDirect(cldrVersion, &status);
|
||||
if(U_FAILURE(status)) {
|
||||
UErrorCode subStatus = U_ZERO_ERROR;
|
||||
_getCLDRVersionOld(cldrVersion, &subStatus);
|
||||
if(U_SUCCESS(subStatus)) {
|
||||
status = subStatus;
|
||||
}
|
||||
}
|
||||
if(U_FAILURE(status)) {
|
||||
fprintf(stderr, "Err: could not get CLDR Version, %s\n", u_errorName(status));
|
||||
fflush(stderr);
|
||||
} else {
|
||||
strcpy(tmp, "type=\"cldr\" version=\"");
|
||||
u_versionToString(cldrVersion, tmp+strlen(tmp));
|
||||
strcat(tmp, "\"");
|
||||
XMLElement icuData(xf, "feature", tmp, true);
|
||||
}
|
||||
}
|
||||
if(1) {
|
||||
int n = uloc_countAvailable();
|
||||
sprintf(tmp, "type=\"formatting\" total=\"%d\" version=\"%s\"",
|
||||
n,
|
||||
"???");
|
||||
XMLElement icuData(xf, "feature", tmp);
|
||||
|
||||
// probeCapability(xf, "root");
|
||||
for(int j=0;j<n;j++) {
|
||||
probeCapability(xf, uloc_getAvailable(j));
|
||||
}
|
||||
|
||||
}
|
||||
if(1) {
|
||||
int n = ucol_countAvailable();
|
||||
sprintf(tmp, "type=\"collation\" total=\"%d\" version=\"%s\"",
|
||||
n,
|
||||
"???");
|
||||
XMLElement icuData(xf, "feature", tmp);
|
||||
|
||||
// probeCapability(xf, "root");
|
||||
for(int j=0;j<n;j++) {
|
||||
probeColCapability(xf, ucol_getAvailable(j));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
|
@ -1,493 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="2.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="3.2"/>
|
||||
<feature type="uca" version="???"/>
|
||||
<feature type="formatting" total="235" version="???">
|
||||
af <!-- open:ok -->
|
||||
af_ZA <!-- open:ok -->
|
||||
am <!-- open:ok -->
|
||||
am_ET <!-- open:ok -->
|
||||
ar <!-- open:ok -->
|
||||
ar_AE <!-- open:ok -->
|
||||
ar_BH <!-- open:ok -->
|
||||
ar_DZ <!-- open:ok -->
|
||||
ar_EG <!-- open:ok -->
|
||||
ar_IQ <!-- open:ok -->
|
||||
ar_IN <!-- open:ok -->
|
||||
ar_JO <!-- open:ok -->
|
||||
ar_KW <!-- open:ok -->
|
||||
ar_LB <!-- open:ok -->
|
||||
ar_LY <!-- open:ok -->
|
||||
ar_MA <!-- open:ok -->
|
||||
ar_OM <!-- open:ok -->
|
||||
ar_QA <!-- open:ok -->
|
||||
ar_SA <!-- open:ok -->
|
||||
ar_SD <!-- open:ok -->
|
||||
ar_SY <!-- open:ok -->
|
||||
ar_TN <!-- open:ok -->
|
||||
ar_YE <!-- open:ok -->
|
||||
be <!-- open:ok -->
|
||||
be_BY <!-- open:ok -->
|
||||
bg <!-- open:ok -->
|
||||
bg_BG <!-- open:ok -->
|
||||
bn <!-- open:ok -->
|
||||
bn_IN <!-- open:ok -->
|
||||
ca <!-- open:ok -->
|
||||
ca_ES <!-- open:ok -->
|
||||
ca_ES_PREEURO <!-- open:ok -->
|
||||
cs <!-- open:ok -->
|
||||
cs_CZ <!-- open:ok -->
|
||||
da <!-- open:ok -->
|
||||
da_DK <!-- open:ok -->
|
||||
de <!-- open:ok -->
|
||||
de__PHONEBOOK <!-- open:ok -->
|
||||
de_AT <!-- open:ok -->
|
||||
de_AT_PREEURO <!-- open:ok -->
|
||||
de_BE <!-- open:ok -->
|
||||
de_CH <!-- open:ok -->
|
||||
de_DE <!-- open:ok -->
|
||||
de_DE_PREEURO <!-- open:ok -->
|
||||
de_LU <!-- open:ok -->
|
||||
de_LU_PREEURO <!-- open:ok -->
|
||||
el <!-- open:ok -->
|
||||
el_GR <!-- open:ok -->
|
||||
el_GR_PREEURO <!-- open:ok -->
|
||||
en <!-- open:ok -->
|
||||
en_AU <!-- open:ok -->
|
||||
en_BE <!-- open:ok -->
|
||||
en_BE_PREEURO <!-- open:ok -->
|
||||
en_BW <!-- open:ok -->
|
||||
en_CA <!-- open:ok -->
|
||||
en_GB <!-- open:ok -->
|
||||
en_GB_EURO <!-- open:ok -->
|
||||
en_HK <!-- open:ok -->
|
||||
en_IE <!-- open:ok -->
|
||||
en_IE_PREEURO <!-- open:ok -->
|
||||
en_IN <!-- open:ok -->
|
||||
en_NZ <!-- open:ok -->
|
||||
en_PH <!-- open:ok -->
|
||||
en_SG <!-- open:ok -->
|
||||
en_MT <!-- open:ok -->
|
||||
en_US <!-- open:ok -->
|
||||
en_US_POSIX <!-- open:ok -->
|
||||
en_VI <!-- open:ok -->
|
||||
en_ZA <!-- open:ok -->
|
||||
en_ZW <!-- open:ok -->
|
||||
eo <!-- open:ok -->
|
||||
es <!-- open:ok -->
|
||||
es__TRADITIONAL <!-- open:ok -->
|
||||
es_AR <!-- open:ok -->
|
||||
es_BO <!-- open:ok -->
|
||||
es_CL <!-- open:ok -->
|
||||
es_CO <!-- open:ok -->
|
||||
es_CR <!-- open:ok -->
|
||||
es_DO <!-- open:ok -->
|
||||
es_EC <!-- open:ok -->
|
||||
es_ES <!-- open:ok -->
|
||||
es_ES_PREEURO <!-- open:ok -->
|
||||
es_GT <!-- open:ok -->
|
||||
es_HN <!-- open:ok -->
|
||||
es_MX <!-- open:ok -->
|
||||
es_NI <!-- open:ok -->
|
||||
es_PA <!-- open:ok -->
|
||||
es_PE <!-- open:ok -->
|
||||
es_PR <!-- open:ok -->
|
||||
es_PY <!-- open:ok -->
|
||||
es_SV <!-- open:ok -->
|
||||
es_US <!-- open:ok -->
|
||||
es_UY <!-- open:ok -->
|
||||
es_VE <!-- open:ok -->
|
||||
et <!-- open:ok -->
|
||||
et_EE <!-- open:ok -->
|
||||
eu <!-- open:ok -->
|
||||
eu_ES <!-- open:ok -->
|
||||
eu_ES_PREEURO <!-- open:ok -->
|
||||
fa <!-- open:ok -->
|
||||
fa_IN <!-- open:ok -->
|
||||
fa_IR <!-- open:ok -->
|
||||
fi <!-- open:ok -->
|
||||
fi_FI <!-- open:ok -->
|
||||
fi_FI_PREEURO <!-- open:ok -->
|
||||
fo <!-- open:ok -->
|
||||
fo_FO <!-- open:ok -->
|
||||
fr <!-- open:ok -->
|
||||
fr_BE <!-- open:ok -->
|
||||
fr_BE_PREEURO <!-- open:ok -->
|
||||
fr_CA <!-- open:ok -->
|
||||
fr_CH <!-- open:ok -->
|
||||
fr_FR <!-- open:ok -->
|
||||
fr_FR_PREEURO <!-- open:ok -->
|
||||
fr_LU <!-- open:ok -->
|
||||
fr_LU_PREEURO <!-- open:ok -->
|
||||
ga <!-- open:ok -->
|
||||
ga_IE <!-- open:ok -->
|
||||
ga_IE_PREEURO <!-- open:ok -->
|
||||
gl <!-- open:ok -->
|
||||
gl_ES <!-- open:ok -->
|
||||
gl_ES_PREEURO <!-- open:ok -->
|
||||
gv <!-- open:ok -->
|
||||
gv_GB <!-- open:ok -->
|
||||
gu <!-- open:ok -->
|
||||
gu_IN <!-- open:ok -->
|
||||
he <!-- open:ok -->
|
||||
he_IL <!-- open:ok -->
|
||||
hi <!-- open:ok -->
|
||||
hi_IN <!-- open:ok -->
|
||||
hi__DIRECT <!-- open:ok -->
|
||||
hr <!-- open:ok -->
|
||||
hr_HR <!-- open:ok -->
|
||||
hu <!-- open:ok -->
|
||||
hu_HU <!-- open:ok -->
|
||||
hy <!-- open:ok -->
|
||||
hy_AM <!-- open:ok -->
|
||||
hy_AM_REVISED <!-- open:ok -->
|
||||
id <!-- open:ok -->
|
||||
id_ID <!-- open:ok -->
|
||||
is <!-- open:ok -->
|
||||
is_IS <!-- open:ok -->
|
||||
it <!-- open:ok -->
|
||||
it_CH <!-- open:ok -->
|
||||
it_IT <!-- open:ok -->
|
||||
it_IT_PREEURO <!-- open:ok -->
|
||||
ja <!-- open:ok -->
|
||||
ja_JP <!-- open:ok -->
|
||||
kl <!-- open:ok -->
|
||||
kl_GL <!-- open:ok -->
|
||||
ko <!-- open:ok -->
|
||||
ko_KR <!-- open:ok -->
|
||||
kok <!-- open:ok -->
|
||||
kok_IN <!-- open:ok -->
|
||||
kn <!-- open:ok -->
|
||||
kn_IN <!-- open:ok -->
|
||||
kw <!-- open:ok -->
|
||||
kw_GB <!-- open:ok -->
|
||||
lt <!-- open:ok -->
|
||||
lt_LT <!-- open:ok -->
|
||||
lv <!-- open:ok -->
|
||||
lv_LV <!-- open:ok -->
|
||||
mk <!-- open:ok -->
|
||||
mk_MK <!-- open:ok -->
|
||||
mr <!-- open:ok -->
|
||||
mr_IN <!-- open:ok -->
|
||||
mt <!-- open:ok -->
|
||||
mt_MT <!-- open:ok -->
|
||||
nb <!-- open:ok -->
|
||||
nb_NO <!-- open:ok -->
|
||||
nl <!-- open:ok -->
|
||||
nl_BE <!-- open:ok -->
|
||||
nl_BE_PREEURO <!-- open:ok -->
|
||||
nl_NL <!-- open:ok -->
|
||||
nl_NL_PREEURO <!-- open:ok -->
|
||||
nn <!-- open:ok -->
|
||||
nn_NO <!-- open:ok -->
|
||||
om <!-- open:ok -->
|
||||
om_ET <!-- open:ok -->
|
||||
om_KE <!-- open:ok -->
|
||||
pl <!-- open:ok -->
|
||||
pl_PL <!-- open:ok -->
|
||||
pt <!-- open:ok -->
|
||||
pt_BR <!-- open:ok -->
|
||||
pt_PT <!-- open:ok -->
|
||||
pt_PT_PREEURO <!-- open:ok -->
|
||||
ro <!-- open:ok -->
|
||||
ro_RO <!-- open:ok -->
|
||||
ru <!-- open:ok -->
|
||||
ru_RU <!-- open:ok -->
|
||||
ru_UA <!-- open:ok -->
|
||||
sh <!-- open:ok -->
|
||||
sh_YU <!-- open:ok -->
|
||||
sk <!-- open:ok -->
|
||||
sk_SK <!-- open:ok -->
|
||||
sl <!-- open:ok -->
|
||||
sl_SI <!-- open:ok -->
|
||||
so <!-- open:ok -->
|
||||
so_DJ <!-- open:ok -->
|
||||
so_ET <!-- open:ok -->
|
||||
so_KE <!-- open:ok -->
|
||||
so_SO <!-- open:ok -->
|
||||
sq <!-- open:ok -->
|
||||
sq_AL <!-- open:ok -->
|
||||
sr <!-- open:ok -->
|
||||
sr_YU <!-- open:ok -->
|
||||
sv <!-- open:ok -->
|
||||
sv_FI <!-- open:ok -->
|
||||
sv_SE <!-- open:ok -->
|
||||
sw <!-- open:ok -->
|
||||
sw_KE <!-- open:ok -->
|
||||
sw_TZ <!-- open:ok -->
|
||||
ta <!-- open:ok -->
|
||||
ta_IN <!-- open:ok -->
|
||||
te <!-- open:ok -->
|
||||
te_IN <!-- open:ok -->
|
||||
th <!-- open:ok -->
|
||||
th_TH <!-- open:ok -->
|
||||
ti <!-- open:ok -->
|
||||
ti_ET <!-- open:ok -->
|
||||
ti_ER <!-- open:ok -->
|
||||
tr <!-- open:ok -->
|
||||
tr_TR <!-- open:ok -->
|
||||
uk <!-- open:ok -->
|
||||
uk_UA <!-- open:ok -->
|
||||
vi <!-- open:ok -->
|
||||
vi_VN <!-- open:ok -->
|
||||
zh <!-- open:ok -->
|
||||
zh__PINYIN <!-- open:ok -->
|
||||
zh_CN <!-- open:ok -->
|
||||
zh_HK <!-- open:ok -->
|
||||
zh_MO <!-- open:ok -->
|
||||
zh_SG <!-- open:ok -->
|
||||
zh_TW <!-- open:ok -->
|
||||
zh_TW_STROKE <!-- open:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="235" version="???">
|
||||
af
|
||||
af_ZA
|
||||
am
|
||||
am_ET
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_IN
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
ca_ES_PREEURO
|
||||
cs
|
||||
cs_CZ
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de__PHONEBOOK
|
||||
de_AT
|
||||
de_AT_PREEURO
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_DE_PREEURO
|
||||
de_LU
|
||||
de_LU_PREEURO
|
||||
el
|
||||
el_GR
|
||||
el_GR_PREEURO
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BE_PREEURO
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_GB_EURO
|
||||
en_HK
|
||||
en_IE
|
||||
en_IE_PREEURO
|
||||
en_IN
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_MT
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es__TRADITIONAL
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_ES_PREEURO
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
eu
|
||||
eu_ES
|
||||
eu_ES_PREEURO
|
||||
fa
|
||||
fa_IN
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fi_FI_PREEURO
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_BE_PREEURO
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_FR_PREEURO
|
||||
fr_LU
|
||||
fr_LU_PREEURO
|
||||
ga
|
||||
ga_IE
|
||||
ga_IE_PREEURO
|
||||
gl
|
||||
gl_ES
|
||||
gl_ES_PREEURO
|
||||
gv
|
||||
gv_GB
|
||||
gu
|
||||
gu_IN
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hi__DIRECT
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
hy
|
||||
hy_AM
|
||||
hy_AM_REVISED
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
it_IT_PREEURO
|
||||
ja
|
||||
ja_JP
|
||||
kl
|
||||
kl_GL
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
kok_IN
|
||||
kn
|
||||
kn_IN
|
||||
kw
|
||||
kw_GB
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
mr
|
||||
mr_IN
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_BE_PREEURO
|
||||
nl_NL
|
||||
nl_NL_PREEURO
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
pl
|
||||
pl_PL
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
pt_PT_PREEURO
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sh
|
||||
sh_YU
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
so
|
||||
so_DJ
|
||||
so_ET
|
||||
so_KE
|
||||
so_SO
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_YU
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
sw
|
||||
sw_KE
|
||||
sw_TZ
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
ti
|
||||
ti_ET
|
||||
ti_ER
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh__PINYIN
|
||||
zh_CN
|
||||
zh_HK
|
||||
zh_MO
|
||||
zh_SG
|
||||
zh_TW
|
||||
zh_TW_STROKE
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,461 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0.1"/>
|
||||
<feature type="uca" version="4.0"/>
|
||||
<feature type="formatting" total="219" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IN <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#156:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#75:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#75:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pa_IN <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sh <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
sh_YU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#191:ok fmt:ok -->
|
||||
sr_YU <!-- open:ok syms:40/42#191:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_CN <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_HK <!-- open:ok syms:40/42#86:ok fmt:ok -->
|
||||
zh_MO <!-- open:ok syms:40/42#86:ok fmt:ok -->
|
||||
zh_SG <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_TW <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="219" version="???">
|
||||
af
|
||||
af_ZA
|
||||
am
|
||||
am_ET
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IN
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
eu
|
||||
eu_ES
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gl
|
||||
gl_ES
|
||||
gu
|
||||
gu_IN
|
||||
gv
|
||||
gv_GB
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
hy
|
||||
hy_AM
|
||||
hy_AM_REVISED
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
kok_IN
|
||||
kw
|
||||
kw_GB
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sh
|
||||
sh_YU
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
so
|
||||
so_DJ
|
||||
so_ET
|
||||
so_KE
|
||||
so_SO
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_YU
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
sw
|
||||
sw_KE
|
||||
sw_TZ
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
ti
|
||||
ti_ER
|
||||
ti_ET
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_CN
|
||||
zh_HK
|
||||
zh_MO
|
||||
zh_SG
|
||||
zh_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,483 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.0.1"/>
|
||||
<feature type="uca" version="4.0"/>
|
||||
<feature type="formatting" total="230" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IN <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#156:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#75:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#75:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#170:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#170:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pa_IN <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_YU <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr_Latn_YU <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr_YU <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#86:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#86:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#85:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="230" version="???">
|
||||
af
|
||||
af_ZA
|
||||
am
|
||||
am_ET
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IN
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
cy_GB
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_PK
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
eu
|
||||
eu_ES
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gl
|
||||
gl_ES
|
||||
gu
|
||||
gu_IN
|
||||
gv
|
||||
gv_GB
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
hy
|
||||
hy_AM
|
||||
hy_AM_REVISED
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
kok_IN
|
||||
kw
|
||||
kw_GB
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
ml_IN
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
or_IN
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
so
|
||||
so_DJ
|
||||
so_ET
|
||||
so_KE
|
||||
so_SO
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_YU
|
||||
sr_Latn
|
||||
sr_Latn_YU
|
||||
sr_YU
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
sw
|
||||
sw_KE
|
||||
sw_TZ
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
ti
|
||||
ti_ER
|
||||
ti_ET
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,507 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.4">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature type="formatting" total="242" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#180:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#180:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#156:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#99:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#99:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#170:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#170:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pa_IN <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_CS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr_Latn_CS <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="242" version="???">
|
||||
af
|
||||
af_ZA
|
||||
am
|
||||
am_ET
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
az
|
||||
az_Cyrl
|
||||
az_Cyrl_AZ
|
||||
az_Latn
|
||||
az_Latn_AZ
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
cy_GB
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_PK
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
eu
|
||||
eu_ES
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gl
|
||||
gl_ES
|
||||
gu
|
||||
gu_IN
|
||||
gv
|
||||
gv_GB
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
hy
|
||||
hy_AM
|
||||
hy_AM_REVISED
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
kok_IN
|
||||
kw
|
||||
kw_GB
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
ml_IN
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
or_IN
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
so
|
||||
so_DJ
|
||||
so_ET
|
||||
so_KE
|
||||
so_SO
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_CS
|
||||
sr_Latn
|
||||
sr_Latn_CS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
sw
|
||||
sw_KE
|
||||
sw_TZ
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
ti
|
||||
ti_ER
|
||||
ti_ET
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_PK
|
||||
uz
|
||||
uz_Cyrl
|
||||
uz_Cyrl_UZ
|
||||
uz_Latn
|
||||
uz_Latn_UZ
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,507 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.4.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="4.1"/>
|
||||
<feature type="uca" version="4.1"/>
|
||||
<feature type="formatting" total="242" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#180:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#180:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#156:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#158:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#99:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#99:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#170:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#170:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pa_IN <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#154:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_CS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr_Latn_CS <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:40/42#236:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="242" version="???">
|
||||
af
|
||||
af_ZA
|
||||
am
|
||||
am_ET
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
az
|
||||
az_Cyrl
|
||||
az_Cyrl_AZ
|
||||
az_Latn
|
||||
az_Latn_AZ
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
cy_GB
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_PK
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
eu
|
||||
eu_ES
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gl
|
||||
gl_ES
|
||||
gu
|
||||
gu_IN
|
||||
gv
|
||||
gv_GB
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
hy
|
||||
hy_AM
|
||||
hy_AM_REVISED
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
kok_IN
|
||||
kw
|
||||
kw_GB
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
ml_IN
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
or_IN
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
so
|
||||
so_DJ
|
||||
so_ET
|
||||
so_KE
|
||||
so_SO
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_CS
|
||||
sr_Latn
|
||||
sr_Latn_CS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
sw
|
||||
sw_KE
|
||||
sw_TZ
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
ti
|
||||
ti_ER
|
||||
ti_ET
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_PK
|
||||
uz
|
||||
uz_Cyrl
|
||||
uz_Cyrl_UZ
|
||||
uz_Latn
|
||||
uz_Latn_UZ
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,513 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.6">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.0"/>
|
||||
<feature type="uca" version="5.0"/>
|
||||
<feature type="formatting" total="245" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#216:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#238:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#111:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#111:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#251:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#167:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_CS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr_Latn_CS <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#210:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#210:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#210:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:40/42#233:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:40/42#233:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#211:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#92:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="245" version="???">
|
||||
af
|
||||
af_ZA
|
||||
am
|
||||
am_ET
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
az
|
||||
az_Cyrl
|
||||
az_Cyrl_AZ
|
||||
az_Latn
|
||||
az_Latn_AZ
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
cy_GB
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_PK
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
eu
|
||||
eu_ES
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gl
|
||||
gl_ES
|
||||
gu
|
||||
gu_IN
|
||||
gv
|
||||
gv_GB
|
||||
haw
|
||||
haw_US
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
hy
|
||||
hy_AM
|
||||
hy_AM_REVISED
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
kok_IN
|
||||
kw
|
||||
kw_GB
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
ml_IN
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
or_IN
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
so
|
||||
so_DJ
|
||||
so_ET
|
||||
so_KE
|
||||
so_SO
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_CS
|
||||
sr_Latn
|
||||
sr_Latn_CS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
sw
|
||||
sw_KE
|
||||
sw_TZ
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
ti
|
||||
ti_ER
|
||||
ti_ET
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_IN
|
||||
ur_PK
|
||||
uz
|
||||
uz_Cyrl
|
||||
uz_Cyrl_UZ
|
||||
uz_Latn
|
||||
uz_Latn_UZ
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,494 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.8">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.0"/>
|
||||
<feature type="uca" version="5.0"/>
|
||||
<feature type="tz" version="2007g"/>
|
||||
<feature type="formatting" total="266" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#111:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#111:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#101:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#101:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="204" version="???">
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,494 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="3.8.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.0"/>
|
||||
<feature type="uca" version="5.0"/>
|
||||
<feature type="tz" version="2007j"/>
|
||||
<feature type="formatting" total="266" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#242:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#222:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#111:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#111:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#209:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#101:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#101:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#227:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#175:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#70:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="204" version="???">
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,518 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="4.0">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2008c"/>
|
||||
<feature type="cldr" version="1.6"/>
|
||||
<feature type="formatting" total="282" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#270:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#270:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_SN <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
ha <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NG <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
ii <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
ii_CN <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
ne <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_IN <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_NP <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Arab <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
pa_Arab_PK <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
si <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
si_LK <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="211" version="???">
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_Arab
|
||||
pa_Arab_PK
|
||||
pa_Guru
|
||||
pa_Guru_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_IN
|
||||
ur_PK
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,518 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="4.0.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2008i"/>
|
||||
<feature type="cldr" version="1.6"/>
|
||||
<feature type="formatting" total="282" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#270:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#270:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_SN <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
ha <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NG <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
ii <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
ii_CN <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
ne <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_IN <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_NP <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Arab <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
pa_Arab_PK <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
si <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
si_LK <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="211" version="???">
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_Arab
|
||||
pa_Arab_PK
|
||||
pa_Guru
|
||||
pa_Guru_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_IN
|
||||
ur_PK
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,518 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="4.1.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2008f"/>
|
||||
<feature type="cldr" version="1.6"/>
|
||||
<feature type="formatting" total="282" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#270:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#270:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_SN <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
ha <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NG <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#168:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
ii <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
ii_CN <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#190:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
ne <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_IN <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_NP <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Arab <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
pa_Arab_PK <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
si <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
si_LK <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="211" version="???">
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_Arab
|
||||
pa_Arab_PK
|
||||
pa_Guru
|
||||
pa_Guru_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_IN
|
||||
ur_PK
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,536 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="4.2">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2009g"/>
|
||||
<feature type="cldr" version="1.7"/>
|
||||
<feature type="formatting" total="292" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bo <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
bo_CN <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
bo_IN <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_SN <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gsw <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
gsw_CH <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
ha <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_GH <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NE <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NG <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
ii <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
ii_CN <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#262:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#262:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#191:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#191:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
ne <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_IN <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_NP <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Arab <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
pa_Arab_PK <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
ro_MD <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
si <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
si_LK <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#141:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#141:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zu <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
zu_ZA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="219" version="???">
|
||||
af
|
||||
af_NA
|
||||
af_ZA
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
az
|
||||
az_Latn
|
||||
az_Latn_AZ
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_Arab
|
||||
pa_Arab_PK
|
||||
pa_Guru
|
||||
pa_Guru_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
si
|
||||
si_LK
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_IN
|
||||
ur_PK
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
|
@ -1,536 +0,0 @@
|
|||
<!DOCTYPE icuInfo SYSTEM "http://icu-project.org/dtd/icumeta.dtd">
|
||||
<!--
|
||||
* © 2017 and later: Unicode, Inc. and others.
|
||||
* License & terms of use: http://www.unicode.org/copyright.html
|
||||
-->
|
||||
<icuInfo>
|
||||
<icuProducts>
|
||||
<icuProduct type="icu4c">
|
||||
<releases>
|
||||
<release version="4.2.0.1">
|
||||
<capabilities>
|
||||
<feature type="unicode" version="5.1"/>
|
||||
<feature type="uca" version="5.1"/>
|
||||
<feature type="tz" version="2009g"/>
|
||||
<feature type="cldr" version="1.7"/>
|
||||
<feature type="formatting" total="292" version="???">
|
||||
af <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_NA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
af_ZA <!-- open:ok syms:40/42#189:ok fmt:ok -->
|
||||
am <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
am_ET <!-- open:ok syms:40/42#131:ok fmt:ok -->
|
||||
ar <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_AE <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_BH <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_DZ <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_EG <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_IQ <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_JO <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_KW <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_LB <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_LY <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_MA <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_OM <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_QA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SA <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_SD <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
ar_SY <!-- open:ok syms:40/42#254:ok fmt:ok -->
|
||||
ar_TN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ar_YE <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
as <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
as_IN <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
az <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Cyrl <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Cyrl_AZ <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Latn <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
az_Latn_AZ <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
be <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
be_BY <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
bg <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bg_BG <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
bn <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_BD <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bn_IN <!-- open:ok syms:40/42#256:ok fmt:ok -->
|
||||
bo <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
bo_CN <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
bo_IN <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
ca <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
ca_ES <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
cs <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cs_CZ <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
cy <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
cy_GB <!-- open:ok syms:40/42#221:ok fmt:ok -->
|
||||
da <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
da_DK <!-- open:ok syms:40/42#194:ok fmt:ok -->
|
||||
de <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_AT <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_BE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_CH <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_DE <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LI <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
de_LU <!-- open:ok syms:40/42#195:ok fmt:ok -->
|
||||
el <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_CY <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
el_GR <!-- open:ok syms:40/42#218:ok fmt:ok -->
|
||||
en <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_AU <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_BZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_CA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_GB <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_HK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_IN <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_JM <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_MT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_NZ <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PH <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_PK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_SG <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_TT <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_US_POSIX <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_VI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
en_ZW <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
eo <!-- open:ok syms:40/42#177:ok fmt:ok -->
|
||||
es <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_AR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_BO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CL <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_CR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_DO <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_EC <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_ES <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_GT <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_HN <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_MX <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_NI <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PA <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PR <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_PY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_SV <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_US <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_UY <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
es_VE <!-- open:ok syms:40/42#188:ok fmt:ok -->
|
||||
et <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
et_EE <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
eu <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
eu_ES <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fa_AF <!-- open:ok syms:40/42#197:ok fmt:ok -->
|
||||
fa_IR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
fi <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
fi_FI <!-- open:ok syms:40/42#330:ok fmt:ok -->
|
||||
fo <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fo_FO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
fr <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_BE <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CA <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_CH <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_FR <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_LU <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_MC <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
fr_SN <!-- open:ok syms:40/42#215:ok fmt:ok -->
|
||||
ga <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
ga_IE <!-- open:ok syms:40/42#247:ok fmt:ok -->
|
||||
gl <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gl_ES <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
gsw <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
gsw_CH <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
gu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gu_IN <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
gv <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
gv_GB <!-- open:ok syms:40/42#295:ok fmt:ok -->
|
||||
ha <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_GH <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NE <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
ha_Latn_NG <!-- open:ok syms:40/42#178:ok fmt:ok -->
|
||||
haw <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
haw_US <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
he <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
he_IL <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hi <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hi_IN <!-- open:ok syms:40/42#207:ok fmt:ok -->
|
||||
hr <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hr_HR <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
hu <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hu_HU <!-- open:ok syms:40/42#206:ok fmt:ok -->
|
||||
hy <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
hy_AM_REVISED <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
id <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
id_ID <!-- open:ok syms:40/42#173:ok fmt:ok -->
|
||||
ii <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
ii_CN <!-- open:ok syms:40/42#93:ok fmt:ok -->
|
||||
is <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
is_IS <!-- open:ok syms:40/42#223:ok fmt:ok -->
|
||||
it <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_CH <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
it_IT <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
ja <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ja_JP <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ka <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
ka_GE <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
kk <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kk_Cyrl_KZ <!-- open:ok syms:40/42#193:ok fmt:ok -->
|
||||
kl <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
kl_GL <!-- open:ok syms:40/42#237:ok fmt:ok -->
|
||||
km <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
km_KH <!-- open:ok syms:40/42#105:ok fmt:ok -->
|
||||
kn <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
kn_IN <!-- open:ok syms:40/42#220:ok fmt:ok -->
|
||||
ko <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
ko_KR <!-- open:ok syms:40/42#87:ok fmt:ok -->
|
||||
kok <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kok_IN <!-- open:ok syms:40/42#243:ok fmt:ok -->
|
||||
kw <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
kw_GB <!-- open:ok syms:40/42#224:ok fmt:ok -->
|
||||
lt <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lt_LT <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
lv_LV <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
mk <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
mk_MK <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
ml <!-- open:ok syms:40/42#262:ok fmt:ok -->
|
||||
ml_IN <!-- open:ok syms:40/42#262:ok fmt:ok -->
|
||||
mr <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
mr_IN <!-- open:ok syms:40/42#230:ok fmt:ok -->
|
||||
ms <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_BN <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
ms_MY <!-- open:ok syms:40/42#169:ok fmt:ok -->
|
||||
mt <!-- open:ok syms:40/42#191:ok fmt:ok -->
|
||||
mt_MT <!-- open:ok syms:40/42#191:ok fmt:ok -->
|
||||
nb <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
nb_NO <!-- open:ok syms:40/42#200:ok fmt:ok -->
|
||||
ne <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_IN <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
ne_NP <!-- open:ok syms:40/42#55:ok fmt:ok -->
|
||||
nl <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
nl_BE <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
nl_NL <!-- open:ok syms:40/42#203:ok fmt:ok -->
|
||||
nn <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
nn_NO <!-- open:ok syms:40/42#182:ok fmt:ok -->
|
||||
om <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_ET <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
om_KE <!-- open:ok syms:40/42#208:ok fmt:ok -->
|
||||
or <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
or_IN <!-- open:ok syms:40/42#232:ok fmt:ok -->
|
||||
pa <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Arab <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
pa_Arab_PK <!-- open:ok syms:40/42#176:ok fmt:ok -->
|
||||
pa_Guru <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pa_Guru_IN <!-- open:ok syms:40/42#196:ok fmt:ok -->
|
||||
pl <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
pl_PL <!-- open:ok syms:40/42#212:ok fmt:ok -->
|
||||
ps <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
ps_AF <!-- open:ok syms:40/42#202:ok fmt:ok -->
|
||||
pt <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_BR <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
pt_PT <!-- open:ok syms:40/42#214:ok fmt:ok -->
|
||||
ro <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
ro_MD <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
ro_RO <!-- open:ok syms:40/42#199:ok fmt:ok -->
|
||||
ru <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_RU <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
ru_UA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
si <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
si_LK <!-- open:ok syms:40/42#217:ok fmt:ok -->
|
||||
sk <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sk_SK <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sl <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
sl_SI <!-- open:ok syms:40/42#192:ok fmt:ok -->
|
||||
so <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_DJ <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_ET <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_KE <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
so_SO <!-- open:ok syms:40/42#298:ok fmt:ok -->
|
||||
sq <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sq_AL <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sr <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_BA <!-- open:ok syms:40/42#187:ok fmt:ok -->
|
||||
sr_Cyrl_ME <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Cyrl_RS <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
sr_Latn <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_BA <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_ME <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sr_Latn_RS <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_FI <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sv_SE <!-- open:ok syms:40/42#185:ok fmt:ok -->
|
||||
sw <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_KE <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
sw_TZ <!-- open:ok syms:40/42#186:ok fmt:ok -->
|
||||
ta <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
ta_IN <!-- open:ok syms:40/42#183:ok fmt:ok -->
|
||||
te <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
te_IN <!-- open:ok syms:40/42#231:ok fmt:ok -->
|
||||
th <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
th_TH <!-- open:ok syms:39/41#218:ok fmt:ok -->
|
||||
ti <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
ti_ER <!-- open:ok syms:40/42#125:ok fmt:ok -->
|
||||
ti_ET <!-- open:ok syms:40/42#133:ok fmt:ok -->
|
||||
tr <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
tr_TR <!-- open:ok syms:40/42#171:ok fmt:ok -->
|
||||
uk <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
uk_UA <!-- open:ok syms:40/42#204:ok fmt:ok -->
|
||||
ur <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_IN <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
ur_PK <!-- open:ok syms:40/42#179:ok fmt:ok -->
|
||||
uz <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Arab_AF <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Cyrl_UZ <!-- open:ok syms:40/42#49:ok fmt:ok -->
|
||||
uz_Latn <!-- open:ok syms:40/42#141:ok fmt:ok -->
|
||||
uz_Latn_UZ <!-- open:ok syms:40/42#141:ok fmt:ok -->
|
||||
vi <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
vi_VN <!-- open:ok syms:40/42#267:ok fmt:ok -->
|
||||
zh <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_CN <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hans_SG <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_HK <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_MO <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zh_Hant_TW <!-- open:ok syms:40/42#94:ok fmt:ok -->
|
||||
zu <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
zu_ZA <!-- open:ok syms:40/42#201:ok fmt:ok -->
|
||||
</feature>
|
||||
<feature type="collation" total="219" version="???">
|
||||
af
|
||||
af_NA
|
||||
af_ZA
|
||||
ar
|
||||
ar_AE
|
||||
ar_BH
|
||||
ar_DZ
|
||||
ar_EG
|
||||
ar_IQ
|
||||
ar_JO
|
||||
ar_KW
|
||||
ar_LB
|
||||
ar_LY
|
||||
ar_MA
|
||||
ar_OM
|
||||
ar_QA
|
||||
ar_SA
|
||||
ar_SD
|
||||
ar_SY
|
||||
ar_TN
|
||||
ar_YE
|
||||
as
|
||||
as_IN
|
||||
az
|
||||
az_Latn
|
||||
az_Latn_AZ
|
||||
be
|
||||
be_BY
|
||||
bg
|
||||
bg_BG
|
||||
bn
|
||||
bn_IN
|
||||
ca
|
||||
ca_ES
|
||||
cs
|
||||
cs_CZ
|
||||
cy
|
||||
da
|
||||
da_DK
|
||||
de
|
||||
de_AT
|
||||
de_BE
|
||||
de_CH
|
||||
de_DE
|
||||
de_LU
|
||||
el
|
||||
el_GR
|
||||
en
|
||||
en_AU
|
||||
en_BE
|
||||
en_BW
|
||||
en_CA
|
||||
en_GB
|
||||
en_HK
|
||||
en_IE
|
||||
en_IN
|
||||
en_MT
|
||||
en_NZ
|
||||
en_PH
|
||||
en_SG
|
||||
en_US
|
||||
en_US_POSIX
|
||||
en_VI
|
||||
en_ZA
|
||||
en_ZW
|
||||
eo
|
||||
es
|
||||
es_AR
|
||||
es_BO
|
||||
es_CL
|
||||
es_CO
|
||||
es_CR
|
||||
es_DO
|
||||
es_EC
|
||||
es_ES
|
||||
es_GT
|
||||
es_HN
|
||||
es_MX
|
||||
es_NI
|
||||
es_PA
|
||||
es_PE
|
||||
es_PR
|
||||
es_PY
|
||||
es_SV
|
||||
es_US
|
||||
es_UY
|
||||
es_VE
|
||||
et
|
||||
et_EE
|
||||
fa
|
||||
fa_AF
|
||||
fa_IR
|
||||
fi
|
||||
fi_FI
|
||||
fo
|
||||
fo_FO
|
||||
fr
|
||||
fr_BE
|
||||
fr_CA
|
||||
fr_CH
|
||||
fr_FR
|
||||
fr_LU
|
||||
ga
|
||||
ga_IE
|
||||
gu
|
||||
gu_IN
|
||||
haw
|
||||
he
|
||||
he_IL
|
||||
hi
|
||||
hi_IN
|
||||
hr
|
||||
hr_HR
|
||||
hu
|
||||
hu_HU
|
||||
id
|
||||
id_ID
|
||||
is
|
||||
is_IS
|
||||
it
|
||||
it_CH
|
||||
it_IT
|
||||
ja
|
||||
ja_JP
|
||||
kk
|
||||
kk_KZ
|
||||
kl
|
||||
kl_GL
|
||||
km
|
||||
kn
|
||||
kn_IN
|
||||
ko
|
||||
ko_KR
|
||||
kok
|
||||
lt
|
||||
lt_LT
|
||||
lv
|
||||
lv_LV
|
||||
mk
|
||||
mk_MK
|
||||
ml
|
||||
mr
|
||||
mr_IN
|
||||
ms
|
||||
ms_BN
|
||||
ms_MY
|
||||
mt
|
||||
mt_MT
|
||||
nb
|
||||
nb_NO
|
||||
nl
|
||||
nl_BE
|
||||
nl_NL
|
||||
nn
|
||||
nn_NO
|
||||
om
|
||||
om_ET
|
||||
om_KE
|
||||
or
|
||||
pa
|
||||
pa_Arab
|
||||
pa_Arab_PK
|
||||
pa_Guru
|
||||
pa_Guru_IN
|
||||
pl
|
||||
pl_PL
|
||||
ps
|
||||
ps_AF
|
||||
pt
|
||||
pt_BR
|
||||
pt_PT
|
||||
ro
|
||||
ro_RO
|
||||
ru
|
||||
ru_RU
|
||||
ru_UA
|
||||
si
|
||||
si_LK
|
||||
sk
|
||||
sk_SK
|
||||
sl
|
||||
sl_SI
|
||||
sq
|
||||
sq_AL
|
||||
sr
|
||||
sr_Cyrl
|
||||
sr_Cyrl_BA
|
||||
sr_Cyrl_ME
|
||||
sr_Cyrl_RS
|
||||
sr_Latn
|
||||
sr_Latn_BA
|
||||
sr_Latn_ME
|
||||
sr_Latn_RS
|
||||
sv
|
||||
sv_FI
|
||||
sv_SE
|
||||
ta
|
||||
ta_IN
|
||||
te
|
||||
te_IN
|
||||
th
|
||||
th_TH
|
||||
tr
|
||||
tr_TR
|
||||
uk
|
||||
uk_UA
|
||||
ur
|
||||
ur_IN
|
||||
ur_PK
|
||||
vi
|
||||
vi_VN
|
||||
zh
|
||||
zh_Hans
|
||||
zh_Hans_CN
|
||||
zh_Hans_SG
|
||||
zh_Hant
|
||||
zh_Hant_HK
|
||||
zh_Hant_MO
|
||||
zh_Hant_TW
|
||||
</feature>
|
||||
</capabilities>
|
||||
</release>
|
||||
</releases>
|
||||
</icuProduct>
|
||||
</icuProducts>
|
||||
</icuInfo>
|
File diff suppressed because it is too large
Load diff
|
@ -1,79 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
// Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
#include <stdio.h>
|
||||
#include "xmlout.h"
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
XMLFile::XMLFile(FILE *f) {
|
||||
file = f;
|
||||
level = 0;
|
||||
}
|
||||
|
||||
XMLFile::~XMLFile()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void XMLFile::write(const char *s) {
|
||||
fputs(s, file);
|
||||
}
|
||||
|
||||
void XMLFile::writeln(const char *s) {
|
||||
writeIndent();
|
||||
write(s);
|
||||
write("\n");
|
||||
}
|
||||
|
||||
int XMLFile::indent(const char *s, bool single) {
|
||||
int oldLevel = level;
|
||||
writeln(s);
|
||||
level++;
|
||||
if(single) {
|
||||
level--;
|
||||
}
|
||||
return oldLevel;
|
||||
}
|
||||
int XMLFile::outdent(const char *s) {
|
||||
level--;
|
||||
writeln(s);
|
||||
return level;
|
||||
}
|
||||
|
||||
void XMLFile::writeIndent() {
|
||||
for(int i=0;i<level;i++) {
|
||||
write("\t");
|
||||
}
|
||||
}
|
||||
|
||||
XMLElement::XMLElement(XMLFile &f, const char *name, const char *attribs, bool single) : file(f), name(name), single(single) {
|
||||
char outs[200];
|
||||
if(attribs!=nullptr) {
|
||||
sprintf(outs,"<%s %s", name, attribs);
|
||||
} else {
|
||||
sprintf(outs, "<%s", name);
|
||||
}
|
||||
if(single) {
|
||||
strcat(outs, "/>");
|
||||
} else {
|
||||
strcat(outs, ">");
|
||||
}
|
||||
oldlevel = file.indent(outs, single);
|
||||
}
|
||||
|
||||
XMLElement::~XMLElement() {
|
||||
if(!single) {
|
||||
char outs[200];
|
||||
sprintf(outs,"</%s>", name);
|
||||
int newlevel = file.outdent(outs);
|
||||
if(newlevel != oldlevel) {
|
||||
fprintf(stderr, "@@@ ERROR: elemet %s popped out to level %d but expected %d. Abort.\n", name, newlevel, oldlevel);
|
||||
fflush(stderr);
|
||||
abort();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
// Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
#include <stdio.h>
|
||||
#include "unicode/utypes.h"
|
||||
#include <string.h>
|
||||
|
||||
class XMLFile {
|
||||
public:
|
||||
XMLFile(FILE *f);
|
||||
~XMLFile();
|
||||
/**
|
||||
* Write indent at current level, increment level, and then return what the initial level was
|
||||
*/
|
||||
int indent(const char *s, bool single = false);
|
||||
/**
|
||||
* Decrement level, write indent of 'outer' level, and return what the new level is. Should match your earlier call to indent.
|
||||
*/
|
||||
int outdent(const char *s);
|
||||
|
||||
/**
|
||||
* Write some string
|
||||
*/
|
||||
void writeln(const char *s);
|
||||
|
||||
private:
|
||||
void writeIndent();
|
||||
/**
|
||||
* Write some string without indent. */
|
||||
void write(const char *s);
|
||||
|
||||
int level;
|
||||
FILE *file;
|
||||
};
|
||||
|
||||
class XMLElement {
|
||||
public:
|
||||
XMLElement(XMLFile &f, const char *name, const char *attribs = nullptr, bool single=false);
|
||||
~XMLElement();
|
||||
|
||||
const char *name;
|
||||
int oldlevel;
|
||||
XMLFile &file;
|
||||
bool single;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
s%<!--.*-->%%g
|
||||
s%[ ][ ]*% %g
|
|
@ -1,7 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved.
|
||||
sed -f zappit.sed | tr -s ' \012 ' ' '
|
|
@ -1,9 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/CLDR_JAR"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/ICU_META_LIB"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/ICU_UTILITIES"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
|
@ -1,17 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>icu4jscan</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -1,6 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2012 IBM Corporation and Others. All Rights Reserved.
|
||||
This project isn't used directly (except you can run it as an eclipse project for development). It's called from ../icu4cscan
|
|
@ -1,118 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
public class CapDocument implements CapNode {
|
||||
|
||||
public class TextCap extends CapElement {
|
||||
TextCap(String str) {
|
||||
super(str);
|
||||
}
|
||||
|
||||
public void write(PrintWriter pw, int i) {
|
||||
writeIndent(pw,i);
|
||||
pw.write(getName()+"\n");
|
||||
}
|
||||
}
|
||||
|
||||
public class CommentElement extends CapElement {
|
||||
CommentElement(String str) {
|
||||
super(str);
|
||||
}
|
||||
public void write(PrintWriter pw, int indent) {
|
||||
writeIndent(pw,indent);
|
||||
pw.write("<!-- "+getName()+" -->\n");
|
||||
}
|
||||
}
|
||||
|
||||
TagElement root = new TagElement();
|
||||
|
||||
public class TagElement extends CapElement {
|
||||
public TagElement() {
|
||||
super("");
|
||||
}
|
||||
public TagElement(String name) {
|
||||
super(name);
|
||||
}
|
||||
|
||||
public void write(PrintWriter pw, int indent) {
|
||||
if(getName().length()>0) {
|
||||
writeIndent(pw,indent);
|
||||
pw.write("<"+getName());
|
||||
if(!attributes.isEmpty()) {
|
||||
for(Iterator iter = attributes.entrySet().iterator();iter.hasNext();) {
|
||||
Map.Entry o = (Map.Entry)iter.next();
|
||||
pw.write(" "+o.getKey().toString()+"=\""+o.getValue()+"\"");
|
||||
}
|
||||
}
|
||||
pw.write(">\n");
|
||||
indent++;
|
||||
}
|
||||
|
||||
for(Iterator iter = children.iterator();iter.hasNext();) {
|
||||
CapNode ch = (CapNode)iter.next();
|
||||
ch.write(pw, indent);
|
||||
}
|
||||
|
||||
if(getName().length()>0) {
|
||||
indent--;
|
||||
writeIndent(pw,indent);
|
||||
pw.write("</"+getName());
|
||||
pw.write(">\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void writeIndent(PrintWriter pw, int indent) {
|
||||
for(;indent>0;indent--) {
|
||||
pw.write(' ');
|
||||
}
|
||||
}
|
||||
|
||||
public CapElement createCapElement(String name) {
|
||||
return new TagElement(name);
|
||||
}
|
||||
|
||||
public void appendChild(CapElement base) {
|
||||
root.appendChild(base);
|
||||
}
|
||||
|
||||
public static CapDocument newCapDocument() {
|
||||
return new CapDocument();
|
||||
}
|
||||
|
||||
public static void printDOMTree(CapDocument out, PrintWriter pw,
|
||||
String string, Object object) {
|
||||
pw.write(string+"\n");
|
||||
out.root.write(pw,0);
|
||||
}
|
||||
|
||||
public void write(PrintWriter pw, int indent) {
|
||||
root.write(pw,0);
|
||||
}
|
||||
|
||||
public CapNode createTextNode(String trim) {
|
||||
return new TextCap(trim);
|
||||
}
|
||||
|
||||
public CapElement createComment(String com) {
|
||||
return new CommentElement(com);
|
||||
}
|
||||
|
||||
public int compareTo(Object arg0) {
|
||||
return getName().compareTo(((CapNode)arg0).getName());
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return root.getName();
|
||||
}
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
public abstract class CapElement implements CapNode {
|
||||
String com;
|
||||
CapElement(String str) {
|
||||
com = str;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return com;
|
||||
}
|
||||
|
||||
public abstract void write(PrintWriter pw, int i);
|
||||
|
||||
public int compareTo(Object arg0) {
|
||||
if(arg0 == this) return 0;
|
||||
int str = getName().compareTo(((CapNode)arg0).getName());
|
||||
if(str!=0) return str;
|
||||
|
||||
if(arg0 instanceof CapElement) {
|
||||
CapElement oth = (CapElement)arg0;
|
||||
return attributes.toString().compareTo(oth.attributes.toString());
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
Map attributes = new HashMap();
|
||||
Set children = new TreeSet();
|
||||
public void setAttribute(String k, String v) {
|
||||
attributes.put(k, v);
|
||||
|
||||
}
|
||||
|
||||
public void appendChild(CapNode e) {
|
||||
children.add(e);
|
||||
|
||||
}
|
||||
|
||||
public String getNodeName() {
|
||||
return getName();
|
||||
}
|
||||
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
|
||||
public interface CapNode extends Comparable {
|
||||
|
||||
void write(PrintWriter pw, int i);
|
||||
|
||||
String getName();
|
||||
|
||||
}
|
|
@ -1,131 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Calendar;
|
||||
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
|
||||
import org.unicode.cldr.util.LDMLUtilities;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
import com.ibm.icu.dev.meta.IcuInfo;
|
||||
import com.ibm.icu.dev.meta.XMLUtil;
|
||||
import com.ibm.icu.util.VersionInfo;
|
||||
|
||||
public abstract class CapScan {
|
||||
|
||||
/** Capabilities string **/
|
||||
public static final String FORMATTING = "formatting";
|
||||
public static final String COLLATION = "collation";
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) throws IOException, ParserConfigurationException {
|
||||
|
||||
System.err.println("# "+CapScan.class.getSimpleName()+": This is just the base class. Use a subclass.");
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
protected String prog;
|
||||
|
||||
protected Element addCapability(Document out, Element capabilities, String name) {
|
||||
return addCapability(out, capabilities, name, (String)null);
|
||||
}
|
||||
protected Element addCapability(Document out, Element capabilities, String name,
|
||||
String version) {
|
||||
|
||||
Element e = out.createElement(IcuInfo.FEATURE);
|
||||
e.setAttribute(IcuInfo.TYPE,name.trim());
|
||||
if(version!=null) {
|
||||
e.setAttribute(IcuInfo.VERSION,version.trim());
|
||||
}
|
||||
capabilities.appendChild(e);
|
||||
return e;
|
||||
}
|
||||
|
||||
protected Element addCapability(Document out, Element capabilities, String name,
|
||||
VersionInfo version) {
|
||||
return addCapability(out, capabilities, name, IcuInfo.versionInfoToShortString(version));
|
||||
}
|
||||
|
||||
protected CapScan(String prog) {
|
||||
this.prog = prog;
|
||||
}
|
||||
|
||||
Document out;
|
||||
|
||||
protected Element createProduct(String productName) {
|
||||
Element base = out.createElement(IcuInfo.ICU_INFO);
|
||||
out.appendChild(base);
|
||||
|
||||
Element products = out.createElement(IcuInfo.ICU_PRODUCTS);
|
||||
base.appendChild(products);
|
||||
|
||||
Element product = out.createElement(IcuInfo.ICU_PRODUCT);
|
||||
product.setAttribute(IcuInfo.TYPE, productName);
|
||||
products.appendChild(product);
|
||||
return product;
|
||||
}
|
||||
|
||||
protected Element createRelease(Element product, String version) {
|
||||
Element releases = out.createElement(IcuInfo.RELEASES);
|
||||
product.appendChild(releases);
|
||||
|
||||
Element release = out.createElement(IcuInfo.RELEASE);
|
||||
release.setAttribute(IcuInfo.VERSION, version);
|
||||
releases.appendChild(release);
|
||||
return release;
|
||||
}
|
||||
|
||||
protected void runMain(String args[]) throws IOException, ParserConfigurationException {
|
||||
|
||||
|
||||
System.err.println("# "+prog+": startup.");
|
||||
// TODO Auto-generated method stub
|
||||
out = XMLUtil.getBuilder().newDocument();
|
||||
|
||||
Element product = createProduct(getProduct());
|
||||
|
||||
Element release = createRelease(product, getRelease());
|
||||
|
||||
|
||||
Element capabilities = out.createElement(IcuInfo.CAPABILITIES);
|
||||
release.appendChild(capabilities);
|
||||
|
||||
addCapabilitiesTo(capabilities);
|
||||
|
||||
|
||||
// write out
|
||||
OutputStream outstr = null;
|
||||
outstr = System.out;
|
||||
// java.io.FileOutputStream fos = null;
|
||||
// if(outfile!=null) {
|
||||
// fos = new FileOutputStream(outfile);
|
||||
// out = fos;
|
||||
// if(verbose) System.err.println("# Write <"+outfile+">");
|
||||
// } else {
|
||||
// out = System.out;
|
||||
// if(verbose) System.err.println("# Write <stdout>");
|
||||
// }
|
||||
// try {
|
||||
java.io.OutputStreamWriter writer = new java.io.OutputStreamWriter(
|
||||
outstr);
|
||||
String copy = "";
|
||||
if(true) copy = ("<!-- Copyright (c) "+Calendar.getInstance().get(Calendar.YEAR)+" IBM Corporation and Others, All Rights Reserved. -->\n");
|
||||
LDMLUtilities.printDOMTree(out, new PrintWriter(writer),copy+"\n<!DOCTYPE icuInfo SYSTEM \"http://icu-project.org/dtd/icumeta.dtd\">\n",null); //
|
||||
writer.flush();
|
||||
}
|
||||
protected abstract String getProduct();
|
||||
|
||||
protected abstract String getRelease();
|
||||
|
||||
protected abstract void addCapabilitiesTo(Element capabilities);
|
||||
}
|
|
@ -1,158 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
|
||||
import org.unicode.cldr.util.LDMLUtilities;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
import org.w3c.dom.Node;
|
||||
|
||||
import com.ibm.icu.dev.meta.IcuInfo;
|
||||
import com.ibm.icu.dev.meta.XMLUtil;
|
||||
import com.ibm.icu.lang.UCharacter;
|
||||
import com.ibm.icu.text.Collator;
|
||||
import com.ibm.icu.text.DateFormat;
|
||||
import com.ibm.icu.text.RuleBasedCollator;
|
||||
import com.ibm.icu.util.TimeZone;
|
||||
import com.ibm.icu.util.ULocale;
|
||||
import com.ibm.icu.util.VersionInfo;
|
||||
|
||||
/**
|
||||
* @author srl
|
||||
*
|
||||
*/
|
||||
public class ScanICU extends CapScan{
|
||||
|
||||
protected ScanICU() {
|
||||
super(ScanICU.class.getName());
|
||||
}
|
||||
|
||||
/**
|
||||
* @param args
|
||||
* @throws ParserConfigurationException
|
||||
* @throws IOException
|
||||
* @throws IOException
|
||||
* @throws ParserConfigurationException
|
||||
* @throws IOException
|
||||
*/
|
||||
public static void main(String[] args) throws IOException, ParserConfigurationException {
|
||||
new ScanICU().runMain(args);
|
||||
}
|
||||
|
||||
protected String getProduct() {
|
||||
return "icu4j";
|
||||
}
|
||||
|
||||
protected String getRelease() {
|
||||
/*
|
||||
* try {
|
||||
} catch(NoClassDefFoundError ncdf) {
|
||||
System.err.println(prog+": Can't get ICU version: " + ncdf.toString());
|
||||
System.exit(1);
|
||||
} catch(NoSuchFieldError nsme) {
|
||||
System.err.println(prog+": Can't get ICU version: " + nsme.toString());
|
||||
System.exit(1);
|
||||
}
|
||||
*/
|
||||
return IcuInfo.versionInfoToShortString(VersionInfo.ICU_VERSION);
|
||||
}
|
||||
|
||||
protected void addCapabilitiesTo(Element capabilities) {
|
||||
|
||||
addCapability(out, capabilities, "unicode", UCharacter.getUnicodeVersion());
|
||||
try {
|
||||
addCapability(out, capabilities, "uca", Collator.getInstance().getUCAVersion());
|
||||
} catch(NoSuchMethodError nsme) {
|
||||
System.err.println(prog+": Note: "+nsme.toString());
|
||||
}
|
||||
try {
|
||||
addCapability(out, capabilities, "tz", TimeZone.getTZDataVersion());
|
||||
} catch(NoSuchMethodError nsme) {
|
||||
System.err.println(prog+": Note: "+nsme.toString());
|
||||
}
|
||||
addFormatting(capabilities);
|
||||
addCollation(capabilities);
|
||||
}
|
||||
|
||||
void addFormatting(Element capabilities) {
|
||||
Element locs = addCapability(out, capabilities, CapScan.FORMATTING);
|
||||
|
||||
try {
|
||||
ULocale available[] = ULocale.getAvailableLocales();
|
||||
locs.setAttribute("total", Integer.toString(available.length));
|
||||
|
||||
String locinfo = "";
|
||||
|
||||
Spinner sp = new Spinner(locs.getNodeName(),available.length);
|
||||
for(int i=0;i<available.length;i++) {
|
||||
ULocale loc = available[i];
|
||||
if(loc.toString().equals("root")) continue;
|
||||
try {
|
||||
DateFormat fmt = null;
|
||||
try {
|
||||
fmt = DateFormat.getTimeInstance(DateFormat.FULL, loc);
|
||||
}catch (Throwable t) {
|
||||
fmt = DateFormat.getTimeInstance(DateFormat.FULL, loc.toLocale());
|
||||
}
|
||||
fmt.format(new Date(1234));
|
||||
locinfo = locinfo + " " + loc.toString();
|
||||
sp.spin(loc.getBaseName());
|
||||
} catch (Throwable t) {
|
||||
System.err.println(prog+": loc fail: " + loc + " - " + t.toString());
|
||||
}
|
||||
}
|
||||
|
||||
Node tt = out.createTextNode(locinfo.trim());
|
||||
locs.appendChild(tt);
|
||||
} catch(NoClassDefFoundError ncdf) {
|
||||
System.err.println(prog+": locales: " + ncdf.toString());
|
||||
} catch(NoSuchMethodError ncdf) {
|
||||
System.err.println(prog+": locales: " + ncdf.toString());
|
||||
}
|
||||
}
|
||||
void addCollation(Element capabilities) {
|
||||
{
|
||||
Element locs = addCapability(out, capabilities, CapScan.COLLATION);
|
||||
|
||||
try {
|
||||
ULocale available[] = Collator.getAvailableULocales();
|
||||
Spinner sp = new Spinner(locs.getNodeName(),available.length);
|
||||
locs.setAttribute("total", Integer.toString(available.length));
|
||||
|
||||
String locinfo = "";
|
||||
|
||||
for(int i=0;i<available.length;i++) {
|
||||
ULocale loc = available[i];
|
||||
if(loc.toString().equals("root")) continue;
|
||||
try {
|
||||
// Collator.getInstance(loc);
|
||||
locinfo = locinfo + " " + loc.toString();
|
||||
sp.spin(loc.getBaseName());
|
||||
} catch (Throwable t) {
|
||||
System.err.println("loc fail: " + loc + " - " + t.toString());
|
||||
}
|
||||
}
|
||||
|
||||
Node tt = out.createTextNode(locinfo.trim());
|
||||
locs.appendChild(tt);
|
||||
} catch(NoClassDefFoundError ncdf) {
|
||||
System.err.println("locales: " + ncdf.toString());
|
||||
} catch(NoSuchMethodError ncdf) {
|
||||
System.err.println("locales: " + ncdf.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,139 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.text.Collator;
|
||||
import java.text.DateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.Locale;
|
||||
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
|
||||
|
||||
import com.ibm.icu.util.ULocale;
|
||||
|
||||
/**
|
||||
* @author srl
|
||||
*
|
||||
*/
|
||||
public class ScanJava extends SimpleScan {
|
||||
|
||||
/**
|
||||
* @param prog
|
||||
*/
|
||||
public ScanJava() {
|
||||
super(ScanJava.class.getName());
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.ibm.icu.dev.scan.CapScan#addCapabilitiesTo(org.w3c.dom.CapElement)
|
||||
*/
|
||||
protected void addCapabilitiesTo(CapElement capabilities) {
|
||||
addFormatting(capabilities);
|
||||
addCollation(capabilities);
|
||||
}
|
||||
|
||||
private void addCollation(CapElement capabilities) {
|
||||
CapElement locs = addCapability(out, capabilities, CapScan.COLLATION);
|
||||
|
||||
try {
|
||||
Locale available[] = Collator.getAvailableLocales();
|
||||
locs.setAttribute("total", Integer.toString(available.length));
|
||||
System.err.println("Begin coll!");
|
||||
String locinfo = "";
|
||||
|
||||
Spinner sp = new Spinner(locs.getNodeName(),available.length);
|
||||
for(int i=0;i<available.length;i++) {
|
||||
Locale loc = available[i];
|
||||
if(loc.toString().equals("root")) continue;
|
||||
try {
|
||||
Collator c = Collator.getInstance(loc);
|
||||
DateFormat fmt = DateFormat.getTimeInstance(DateFormat.FULL, loc);
|
||||
fmt.format(new Date(1234));
|
||||
locinfo = locinfo + " " + loc.toString();
|
||||
sp.spin(loc.toString());
|
||||
} catch (Throwable t) {
|
||||
System.err.println(prog+": loc fail: " + loc + " - " + t.toString());
|
||||
}
|
||||
}
|
||||
|
||||
CapNode tt = out.createTextNode(locinfo.trim());
|
||||
locs.appendChild(tt);
|
||||
} catch(NoClassDefFoundError ncdf) {
|
||||
System.err.println(prog+": collation: " + ncdf.toString());
|
||||
} catch(NoSuchMethodError ncdf) {
|
||||
System.err.println(prog+": collation: " + ncdf.toString());
|
||||
}
|
||||
|
||||
locs.appendChild(out.createComment("Note: Java locales have different conventions than ICU."));
|
||||
|
||||
}
|
||||
|
||||
private void addFormatting(CapElement capabilities) {
|
||||
CapElement locs = addCapability(out, capabilities, CapScan.FORMATTING);
|
||||
|
||||
try {
|
||||
Locale available[] = Locale.getAvailableLocales();
|
||||
locs.setAttribute("total", Integer.toString(available.length));
|
||||
|
||||
String locinfo = "";
|
||||
|
||||
Spinner sp = new Spinner(locs.getNodeName(),available.length);
|
||||
for(int i=0;i<available.length;i++) {
|
||||
Locale loc = available[i];
|
||||
if(loc.toString().equals("root")) continue;
|
||||
try {
|
||||
DateFormat fmt = DateFormat.getTimeInstance(DateFormat.FULL, loc);
|
||||
fmt.format(new Date(1234));
|
||||
locinfo = locinfo + " " + loc.toString();
|
||||
sp.spin(loc.toString());
|
||||
} catch (Throwable t) {
|
||||
System.err.println(prog+": loc fail: " + loc + " - " + t.toString());
|
||||
}
|
||||
}
|
||||
|
||||
CapNode tt = out.createTextNode(locinfo.trim());
|
||||
locs.appendChild(tt);
|
||||
} catch(NoClassDefFoundError ncdf) {
|
||||
System.err.println(prog+": locales: " + ncdf.toString());
|
||||
} catch(NoSuchMethodError ncdf) {
|
||||
System.err.println(prog+": locales: " + ncdf.toString());
|
||||
}
|
||||
|
||||
locs.appendChild(out.createComment("Note: Java locales have different conventions than ICU."));
|
||||
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.ibm.icu.dev.scan.CapScan#getProduct()
|
||||
*/
|
||||
protected String getProduct() {
|
||||
return "java";
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.ibm.icu.dev.scan.CapScan#getRelease()
|
||||
*/
|
||||
protected String getRelease() {
|
||||
String ver = System.getProperty("java.version");
|
||||
int u = ver.indexOf('_');
|
||||
if(u>0) {
|
||||
ver = ver.substring(0,u);
|
||||
}
|
||||
return ver;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param args
|
||||
* @throws ParserConfigurationException
|
||||
* @throws IOException
|
||||
*/
|
||||
public static void main(String[] args) throws IOException {
|
||||
new ScanJava().runMain(args);
|
||||
}
|
||||
|
||||
}
|
|
@ -1,128 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Calendar;
|
||||
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
|
||||
import org.unicode.cldr.util.LDMLUtilities;
|
||||
|
||||
import com.ibm.icu.dev.meta.IcuInfo;
|
||||
import com.ibm.icu.dev.meta.XMLUtil;
|
||||
import com.ibm.icu.util.VersionInfo;
|
||||
|
||||
public abstract class SimpleScan {
|
||||
|
||||
/** Capabilities string **/
|
||||
public static final String FORMATTING = "formatting";
|
||||
public static final String COLLATION = "collation";
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) throws IOException, ParserConfigurationException {
|
||||
|
||||
System.err.println("# "+SimpleScan.class.getSimpleName()+": This is just the base class. Use a subclass.");
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
protected String prog;
|
||||
|
||||
protected CapElement addCapability(CapDocument out, CapElement capabilities, String name) {
|
||||
return addCapability(out, capabilities, name, (String)null);
|
||||
}
|
||||
protected CapElement addCapability(CapDocument out, CapElement capabilities, String name,
|
||||
String version) {
|
||||
|
||||
CapElement e = out.createCapElement(IcuInfo.FEATURE);
|
||||
e.setAttribute(IcuInfo.TYPE,name.trim());
|
||||
if(version!=null) {
|
||||
e.setAttribute(IcuInfo.VERSION,version.trim());
|
||||
}
|
||||
capabilities.appendChild(e);
|
||||
return e;
|
||||
}
|
||||
|
||||
protected CapElement addCapability(CapDocument out, CapElement capabilities, String name,
|
||||
VersionInfo version) {
|
||||
return addCapability(out, capabilities, name, IcuInfo.versionInfoToShortString(version));
|
||||
}
|
||||
|
||||
protected SimpleScan(String prog) {
|
||||
this.prog = prog;
|
||||
}
|
||||
|
||||
CapDocument out;
|
||||
|
||||
protected CapElement createProduct(String productName) {
|
||||
CapElement base = out.createCapElement(IcuInfo.ICU_INFO);
|
||||
out.appendChild(base);
|
||||
|
||||
CapElement products = out.createCapElement(IcuInfo.ICU_PRODUCTS);
|
||||
base.appendChild(products);
|
||||
|
||||
CapElement product = out.createCapElement(IcuInfo.ICU_PRODUCT);
|
||||
product.setAttribute(IcuInfo.TYPE, productName);
|
||||
products.appendChild(product);
|
||||
return product;
|
||||
}
|
||||
|
||||
protected CapElement createRelease(CapElement product, String version) {
|
||||
CapElement releases = out.createCapElement(IcuInfo.RELEASES);
|
||||
product.appendChild(releases);
|
||||
|
||||
CapElement release = out.createCapElement(IcuInfo.RELEASE);
|
||||
release.setAttribute(IcuInfo.VERSION, version);
|
||||
releases.appendChild(release);
|
||||
return release;
|
||||
}
|
||||
|
||||
protected void runMain(String args[]) throws IOException {
|
||||
|
||||
|
||||
System.err.println("# "+prog+": startup.");
|
||||
out = CapDocument.newCapDocument();
|
||||
|
||||
CapElement product = createProduct(getProduct());
|
||||
|
||||
CapElement release = createRelease(product, getRelease());
|
||||
|
||||
|
||||
CapElement capabilities = out.createCapElement(IcuInfo.CAPABILITIES);
|
||||
release.appendChild(capabilities);
|
||||
|
||||
addCapabilitiesTo(capabilities);
|
||||
|
||||
|
||||
// write out
|
||||
OutputStream outstr = null;
|
||||
outstr = System.out;
|
||||
// java.io.FileOutputStream fos = null;
|
||||
// if(outfile!=null) {
|
||||
// fos = new FileOutputStream(outfile);
|
||||
// out = fos;
|
||||
// if(verbose) System.err.println("# Write <"+outfile+">");
|
||||
// } else {
|
||||
// out = System.out;
|
||||
// if(verbose) System.err.println("# Write <stdout>");
|
||||
// }
|
||||
// try {
|
||||
java.io.OutputStreamWriter writer = new java.io.OutputStreamWriter(
|
||||
outstr);
|
||||
String copy = "";
|
||||
if(true) copy = ("<!-- Copyright (c) "+Calendar.getInstance().get(Calendar.YEAR)+" IBM Corporation and Others, All Rights Reserved. -->\n");
|
||||
CapDocument.printDOMTree(out, new PrintWriter(writer),copy+"\n<!DOCTYPE icuInfo SYSTEM \"http://icu-project.org/dtd/icumeta.dtd\">\n",null); //
|
||||
writer.flush();
|
||||
}
|
||||
protected abstract String getProduct();
|
||||
|
||||
protected abstract String getRelease();
|
||||
|
||||
protected abstract void addCapabilitiesTo(CapElement capabilities);
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/* Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved. */
|
||||
|
||||
package com.ibm.icu.dev.scan;
|
||||
|
||||
class Spinner {
|
||||
String str = "";
|
||||
int n = 0;
|
||||
int max = -1;
|
||||
Spinner() {
|
||||
}
|
||||
Spinner(String str) {
|
||||
this.str = str;
|
||||
}
|
||||
Spinner(String str, int max) {
|
||||
this.str = str;
|
||||
this.max = max;
|
||||
}
|
||||
void spin() {
|
||||
spin(null);
|
||||
}
|
||||
void spin(String what) {
|
||||
// TODO: time based.
|
||||
n++;
|
||||
if((n%25)==0) {
|
||||
String nstr="";
|
||||
if(max>0) {
|
||||
nstr="/"+max;
|
||||
}
|
||||
System.err.println("#"+str+".."+n+nstr+" "+(what!=null?what:""));
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,362 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
#
|
||||
# Copyright (C) 2010-2012 IBM Corporation and Others, All Rights Reserved.
|
||||
#
|
||||
all: glurens ii plugs testprog
|
||||
|
||||
# extra files that need generation.
|
||||
PLUG_EXTRA_DEPS=
|
||||
UNAME=$(shell uname)
|
||||
DOT=../../c
|
||||
SOBJ=ao
|
||||
ifeq ($(UNAME),Linux)
|
||||
LIBPATH_VAR=LD_LIBRARY_PATH
|
||||
PLUG_EXTRA_LDFLAGS=-fPIC
|
||||
PBLD_EXTRA_FLAGS=-fPIC
|
||||
GLUE_EXTRA_CFLAGS= -fPIC
|
||||
PLUGLIB_SO=so
|
||||
else
|
||||
ifeq ($(UNAME),Darwin)
|
||||
LIBPATH_VAR=DYLD_LIBRARY_PATH
|
||||
PLUG_EXTRA_LDFLAGS=-exported_symbols_list $(GLUE_EXPORT) -dynamiclib -dynamic
|
||||
PLUG_EXTRA_DEPS+=$(GLUE_EXPORT)
|
||||
PLUGLIB_SO=dylib
|
||||
else
|
||||
ifeq ($(UNAME),AIX)
|
||||
LIBPATH_VAR=LIBPATH
|
||||
#PLUG_EXTRA_LDFLAGS=-exported_symbols_list $(GLUE_EXPORT) -dynamiclib -dynamic
|
||||
PLUG_EXTRA_DEPS+=$(GLUE_EXPORT)
|
||||
PLUGLIB_SO=a
|
||||
SOBJ=o
|
||||
else
|
||||
$(warning **********************************)
|
||||
$(warning this script may not know how to handle your $(UNAME) system)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
SUBHEAD="*** ICU"
|
||||
|
||||
srcdir=$(shell pwd)
|
||||
|
||||
PROVIDER=provider
|
||||
LIBPROVIDER=lib$(PROVIDER).a
|
||||
|
||||
#libs: $(ICU_TARBALLS_VERS:%=$(OUT)/%/lib/$(LIBPROVIDER))
|
||||
|
||||
PLUGLIB_INST=$(C_INS)/r$(PLUGLIB)
|
||||
PLUGLIB_ICU_CONFIG=$(PLUGLIB_INST)/bin/icu-config
|
||||
#PLUGLIB_SO=$(shell $(PLUGLIB_ICU_CONFIG) --so 2>/dev/null )
|
||||
PLUGLIB_NAME=libicuprov.$(PLUGLIB_MAJ).$(PLUGLIB_SO)
|
||||
#PLUGLIB_MAJ=$(echo $(PLUGLIB) | cut -d_ -f-1 | tr -d _ )
|
||||
#GLOUT_ICU=$(ICU_TARBALLS_VERS:%=$(GLOUT)/%/$(OK))
|
||||
PLUGLIB_AVAILABLE=$(shell echo $(PROVIDER_AVAILABLE) | tr '.' '_')
|
||||
PLUGLIB_AVAILABLE_DATA=$(PLUGLIB_AVAILABLE:%=$(BUILD)/%/data/out/tmp/*.o)
|
||||
PLUGLIB_AVAILABLE_STATICS=$(PLUGLIB_AVAILABLE:%=$(BUILD)/%/[ci]*/*.$(SOBJ))
|
||||
PLUGLIB_OUTLIBS=$(PLUGLIB:%=$(OUT)/%/lib/$(PLUGLIB_NAME))
|
||||
|
||||
|
||||
|
||||
## configuration
|
||||
# Absolute path to this dir.
|
||||
# dir holding ICUs to be built
|
||||
MULTICU_ROOT=../..
|
||||
include $(MULTICU_ROOT)/c/Makefile-c.inc
|
||||
ICU_CONFIG=icu-config-nosanity
|
||||
ICU_CONFIG_ORIG=icu-config
|
||||
|
||||
# subdirs...
|
||||
# prefix to distinguish it from non-provider builds
|
||||
P_PREFIX=p
|
||||
BUILD=$(M_TMP)/$(P_PREFIX)bld
|
||||
INST=$(M_TMP)/$(P_PREFIX)ins
|
||||
SRC=$(M_TMP)/$(P_PREFIX)src
|
||||
OUT=$(TOP)/out
|
||||
SOURCE=$(S_SRCDIR)
|
||||
GLUE=glue
|
||||
GLUE_EXPORT=$(GLUE)/export.txt
|
||||
GLOUT=$(M_TMP)/$(P_PREFIX)glout
|
||||
# header locations
|
||||
INCGLUE=$(TOP)/$(GLUE)/include
|
||||
# relative path to icuglue within glout
|
||||
GLUREN=gluren/include/icuglue
|
||||
# relative path to gluren.h
|
||||
GLUREN_H=$(GLUREN)/gluren.h
|
||||
# Special 'configure' caller
|
||||
SUPERCONF=$(TOP)/$(MULTICU_ROOT)/c/superconf.sh
|
||||
# options to compilation (such as, debug)
|
||||
XOPTS=$(EXTRA_COMPILE_OPTS)
|
||||
OK=ok
|
||||
MOPTS=
|
||||
|
||||
# directories that need to be built
|
||||
ALLDIRS=$(INST) $(BUILD) $(SRC) $(GLOUT) $(OUT) $(GLOUT)/$(PLUGLIB) $(OUT)/$(PLUGLIB)/bin
|
||||
# The 'ok' flag file for installations
|
||||
INST_ICU=$(PLUGLIB_AVAILABLE:%=$(INST)/%/$(OK))
|
||||
BUILD_ICU=$(PLUGLIB_AVAILABLE:%=$(BUILD)/%/$(OK))
|
||||
# this has to do with the pluglib
|
||||
GLOUT_ICU=$(PLUGLIB:%=$(GLOUT)/%/obj-$(OK))
|
||||
#SRC_ICU=$(ICU_TARBALLS_VERS:%=$(SRC)/%/$(OK))
|
||||
# gluren.h files for each version
|
||||
GLUREN_ICU=$(PLUGLIB_AVAILABLE:%=$(BUILD)/%/$(GLUREN_H))
|
||||
#?
|
||||
CONFIGURE_CMD=
|
||||
# Options passed to configure
|
||||
CONFIGURE_OPTS=--enable-static --disable-shared --with-data-packaging=static --disable-extras --disable-icuio --disable-layout --disable-tests --disable-samples $(EXTRA_CONFIGURE_OPTS)
|
||||
# additional options passed to make
|
||||
MAKE_XTRA_OPTS="PKGDATA_MODE=static"
|
||||
# additional options passed to make install
|
||||
MAKE_INSTALL_XTRA_OPTS=$(MAKE_XTRA_OPTS)
|
||||
|
||||
# Munged source names: list of C++, O etc files for Frontend
|
||||
PARTSUFF=_fe
|
||||
GL_FE_CXX=$(notdir $(wildcard $(GLUE)/*$(PARTSUFF).cpp))
|
||||
GL_FE_FILES=$(GL_FE_CXX:%.cpp=$(GLUE)/%.cpp)
|
||||
GL_FE_O=$(GL_FE_CPP:%.cpp=%.o)
|
||||
GL_PARTS=$(GL_FE_CXX:%$(PARTSUFF).cpp=%)
|
||||
# C flags used in Glue compilation
|
||||
GLUE_CFLAGS=-I$(INCGLUE) $(GLUE_EXTRA_CFLAGS)
|
||||
|
||||
# icu-config switches for compiling: C and C++
|
||||
ICU_CONFIG_COMMON=--cppflags
|
||||
# icu-config switches for C
|
||||
ICU_CONFIG_CC=--cc $(ICU_CONFIG_COMMON) --cflags
|
||||
# icu-config switches for C++
|
||||
ICU_CONFIG_CXX=--cxx $(ICU_CONFIG_COMMON) --cxxflags
|
||||
|
||||
# sigh, include common.
|
||||
PLUG_EXTRA_FLAGS=-I$(BUILD)/$(PLUGLIB)/common -I$(M_TMP)/build/r$(PLUGLIB)/icu/source/common
|
||||
|
||||
include Makefile.local
|
||||
|
||||
|
||||
|
||||
# Usage: $(call SILENT_COMPILE,logfile,cmd)
|
||||
ifndef VERBOSE
|
||||
LOG_COMPILE=echo build with VERBOSE=1 to unhide compile ; ( ($(2) 2>&1) > $(1) || (echo "Compile failed, see logfile in $(1) for details." ;exit 1))
|
||||
else
|
||||
LOG_COMPILE=$(2) 2>&1 | tee $(1)
|
||||
endif
|
||||
|
||||
ECHO_COMPILE=echo "\# ${subst ",\",$(1)}" ; ( $(1) || ( exit 1) )
|
||||
|
||||
PLUGLIB=$(shell echo $(PROVIDER_TARGET) | tr '.' '_' )
|
||||
PLUGLIB_MAJ=$(shell ./icu2symver.sh $(PLUGLIB))
|
||||
|
||||
## @build All installed ICUs
|
||||
ii: $(GLOUT_ICU)
|
||||
|
||||
# Don't delete these files
|
||||
.PRECIOUS: (INST_ICU) $(BUILD_ICU) $(SRC_ICU) $(ICU_TARBALLS_VERS:%=$(BUILD)/%/config.status) $(ICU_TARBALLS_VERS:%=$(GLOUT)/%/obj-$(OK)) $(ICU_TARBALLS_VERS:%=$(BUILD)/%/config/$(ICU_CONFIG)) $(PLUGLIB_ICU_CONFIG)
|
||||
|
||||
# cleanup
|
||||
clean:
|
||||
-rm -rf $(ALLDIRS)
|
||||
-$(MAKE) -C ../.. clean
|
||||
|
||||
# create all empty work dirs
|
||||
$(ALLDIRS):
|
||||
-mkdir -p $(@)
|
||||
|
||||
# Build r$(PLUGLIB) from ../../c
|
||||
$(PLUGLIB_ICU_CONFIG):
|
||||
@echo "$(SUBHEAD) "$(PLUGLIB) "(plugin) building..."
|
||||
$(call LOG_COMPILE,../../c/ricus$(PLUGLIB).log,$(MAKE) MAKE_OPTS=$(MAKE_OPTS) XTRA_RICU_CPPFLAGS=$(XTRA_RICU_CPPFLAGS) -C ../../c ICUVERS=$(PLUGLIB) ricus)
|
||||
|
||||
# build the glue objects for TARGET
|
||||
# used to be %/* instead of $(PLUGLIB) - now, wire it down to pluglib.
|
||||
$(GLOUT)/$(PLUGLIB)/obj-$(OK): $(GLOUT) glurens $(PLUGLIB_ICU_CONFIG) $(GL_FE_FILES) $(ALLDIRS)
|
||||
@echo $(SUBHEAD) $(PLUGLIB) "(plugin) building glue.."
|
||||
# $(shell $(BUILD)/$(PLUGLIB)/config/$(ICU_CONFIG) $(ICU_CONFIG_CC)) $(GLUE_CFLAGS) -c -DICUGLUE_VER=$(PLUGLIB) -o $(GLOUT)/$(PLUGLIB)/gl_be_c_$(PLUGLIB).o $(GL_BE_C:%.c=$(GLUE)/%.c)
|
||||
# $(shell $(BUILD)/$(PLUGLIB)/config/$(ICU_CONFIG) $(ICU_CONFIG_CXX)) $(GLUE_CFLAGS) -c -DICUGLUE_VER=$(PLUGLIB) -o $(GLOUT)/$(PLUGLIB)/gl_be_cxx_$(PLUGLIB).o $(GL_BE_CXX:%.cpp=$(GLUE)/%.cpp)
|
||||
-rm -rf $(GLOUT)/$(PLUGLIB)/include
|
||||
mkdir -p $(GLOUT)/$(PLUGLIB)/include/icuglue/include
|
||||
# for each version.. build all OTHER FE files
|
||||
# TODO: check is unnecessary, not permitted.
|
||||
# TODO: change to depend instead of for list.
|
||||
@for ver in $(PLUGLIB_AVAILABLE) ; \
|
||||
do \
|
||||
echo "*$(SUBHEAD)" $$ver "(provider)" for $(PLUGLIB) "(plugin)" ; \
|
||||
if [ ! "$$ver" = "$(PLUGLIB)" ]; \
|
||||
then \
|
||||
for part in $(GL_PARTS) ; \
|
||||
do \
|
||||
echo "**$(SUBHEAD)" $$ver "(provider) backend: ---- " "$$part" "----" ; \
|
||||
$(call ECHO_COMPILE,$(shell $(PLUGLIB_ICU_CONFIG) --noverify $(ICU_CONFIG_CXX)) $(GLUE_CFLAGS) -c -I$(TOP)/$(BUILD)/$$ver/gluren/include -DICUGLUE_VER=$$ver -DICUGLUE_VER_STR=\"$$ver\" "-DGLUE_SYM(x)=glue ## x ## $$ver" -o $(GLOUT)/$(PLUGLIB)/$${part}_$${ver}_for_$(PLUGLIB).o $(GLUE)/$${part}$(PARTSUFF).cpp $(XOPTS) ) || exit 1 ; \
|
||||
done ; \
|
||||
echo " GLUE_VER( $$ver ) " >> $(GLOUT)/$(PLUGLIB)/include/icuglue/glver.h; \
|
||||
fi \
|
||||
done
|
||||
# build 'this version' FE files
|
||||
@for part in $(GL_PARTS) ; \
|
||||
do \
|
||||
echo "ICU" $(PLUGLIB) "(plugin) building plugin for ------- $$part -----" ; \
|
||||
$(call ECHO_COMPILE,$(shell $(PLUGLIB_ICU_CONFIG) --noverify $(ICU_CONFIG_CXX)) $(GLUE_CFLAGS) -I$(GLOUT)/$(PLUGLIB)/include -c -o $(GLOUT)/$(PLUGLIB)/$${part}_$(PLUGLIB).o $(GLUE)/$${part}$(PARTSUFF).cpp $(XOPTS) $(PLUG_EXTRA_FLAGS) ) || exit 1 ; \
|
||||
done
|
||||
touch $@
|
||||
|
||||
plugs: $(PLUGLIB_OUTLIBS) $(OUT)/$(PLUGLIB_MAJ:%=icuplugins%.txt)
|
||||
|
||||
install-plugs: $(PLUGLIB_INST)/lib/$(PLUGLIB_NAME) $(PLUGLIB_INST)/lib/icu/icuplugins$(PLUGLIB_MAJ).txt
|
||||
echo "Plugins installed for testing."
|
||||
|
||||
#TODO: should be 'install' not 'cp'
|
||||
$(PLUGLIB_INST)/lib/$(PLUGLIB_NAME) $(PLUGLIB_INST)/lib/icu/icuplugins$(PLUGLIB_MAJ).txt: $(PLUGLIB_OUTLIBS)
|
||||
cp $(PLUGLIB_OUTLIBS) $(PLUGLIB_INST)/lib
|
||||
echo "# Generated. " > $(PLUGLIB_INST)/lib/icu/icuplugins$(PLUGLIB_MAJ).txt
|
||||
@for part in $(GL_PARTS) ; \
|
||||
do \
|
||||
echo "$(PLUGLIB_NAME) $${part}_provider_plugin" >> $(PLUGLIB_INST)/lib/icu/icuplugins$(PLUGLIB_MAJ).txt ; \
|
||||
echo " $${part}_provider_plugin" ; \
|
||||
done
|
||||
|
||||
$(GLUE_EXPORT): Makefile $(GL_FE_FILES)
|
||||
echo "# Generated for installation. " > $@
|
||||
@for part in $(GL_PARTS) ; \
|
||||
do \
|
||||
echo "_$${part}_provider_plugin" >> $@ ; \
|
||||
echo " _$${part}_provider_plugin" ; \
|
||||
done
|
||||
|
||||
$(OUT)/icuplugins$(PLUGLIB_MAJ).txt: $(PLUGLIB_OUTLIBS) Makefile
|
||||
echo "# Generated for testing." > $@
|
||||
@for part in $(GL_PARTS) ; \
|
||||
do \
|
||||
echo "$(PLUGLIB_NAME) $${part}_provider_plugin" >> $@ ; \
|
||||
echo " $${part}_provider_plugin" ; \
|
||||
done
|
||||
|
||||
TESTPROG=$(GL_PARTS:%=%diff$(EXEEXT))
|
||||
|
||||
testprog: $(PLUGLIB:%=$(OUT)/%/bin/$(TESTPROG))
|
||||
|
||||
check-icu2symver:
|
||||
./check-icu2symver.sh
|
||||
|
||||
generate-gdbrc:
|
||||
echo "# generated by $@" > .gdbrc
|
||||
echo "set environment ICU_PLUGINS=$(OUT)" >> .gdbrc
|
||||
echo "set environment $(LIBPATH_VAR)=$(OUT)/../$(PLUGLIB_INST)/lib:$(OUT)/$(PLUGLIB)/lib" >> .gdbrc
|
||||
|
||||
|
||||
check: check-icu2symver all testprog $(OUT)/icuplugins$(PLUGLIB_MAJ).txt
|
||||
ICU_PLUGINS=$(OUT) $(LIBPATH_VAR)=$(PLUGLIB_INST)/lib:out/$(PLUGLIB)/lib $(PLUGLIB_INST)/bin/icuinfo || ( echo "ICU broken." ; /bin/false )
|
||||
ICU_PLUGINS=$(OUT) $(LIBPATH_VAR)=$(PLUGLIB_INST)/lib:out/$(PLUGLIB)/lib $(PLUGLIB_INST)/bin/icuinfo -L || ( echo "Plugin broken." ; /bin/false )
|
||||
@for prog in $(TESTPROG) ; \
|
||||
do \
|
||||
echo "# ICU_PLUGINS=$(OUT) $(LIBPATH_VAR)=$(PLUGLIB_INST)/lib:out/$(PLUGLIB)/lib out/$(PLUGLIB)/bin/$${prog}" ; \
|
||||
ICU_PLUGINS=$(OUT) $(LIBPATH_VAR)=$(PLUGLIB_INST)/lib:out/$(PLUGLIB)/lib out/$(PLUGLIB)/bin/$${prog} || ( echo "$${prog} failed." ; exit 1 ) ; \
|
||||
done
|
||||
|
||||
install-check: install-plugs
|
||||
$(LIBPATH_VAR)=$(PLUGLIB_INST)/lib $(PLUGLIB_INST)/bin/icuinfo -L || ( echo "Plugin broken." ; /bin/false )
|
||||
@for prog in $(TESTPROG) ; \
|
||||
do \
|
||||
echo "# $${prog}" ; \
|
||||
$(LIBPATH_VAR)=$(PLUGLIB_INST)/lib out/$(PLUGLIB)/bin/$${prog} || ( echo "$${prog} against installed failed." ; exit 1 ) ; \
|
||||
done
|
||||
|
||||
$(OUT)/$(PLUGLIB)/bin/$(TESTPROG): $(GLOUT)/$(PLUGLIB)/obj-$(OK) $(OUT)/$(PLUGLIB)/provider_version.h $(ALLDIRS)
|
||||
@for prog in $(TESTPROG) ; \
|
||||
do \
|
||||
${call ECHO_COMPILE,$(shell $(PLUGLIB_ICU_CONFIG) --cxx --cxxflags --cppflags --ldflags) -o $(OUT)/$(PLUGLIB)/bin/$${prog} -I$(OUT)/$(PLUGLIB) $(TESTPROG_XTRA_OPTS) $(srcdir)/$${prog}.cpp} || exit 1 ; \
|
||||
done
|
||||
|
||||
$(OUT)/%/lib/$(PLUGLIB_NAME): $(GLOUT)/%/obj-$(OK) $(PLUG_EXTRA_DEPS)
|
||||
-mkdir -p $(OUT)/$*/lib
|
||||
$(shell $(PLUGLIB_ICU_CONFIG) --cxx --cxxflags --cppflags --ldflags) $(PLUG_EXTRA_LDFLAGS) -shared -o $@ $(GLOUT)/$*/*.o $(PLUGLIB_AVAILABLE_DATA) $(PLUGLIB_AVAILABLE_STATICS)
|
||||
|
||||
# cp $@ $(C_INS)/r$*/lib/
|
||||
|
||||
$(OUT)/%/lib/$(LIBPROVIDER): $(GLOUT)/%/obj-$(OK)
|
||||
-mkdir -p $(OUT)/$*/lib
|
||||
echo copy includes
|
||||
ar -rv $@ $(GLOUT)/$*/*.o
|
||||
ranlib $@
|
||||
|
||||
## @@ build glu rename files
|
||||
glurens: $(GLUREN_ICU)
|
||||
|
||||
# build single gluren.h
|
||||
$(BUILD)/%/$(GLUREN_H): $(BUILD)/%/ok Makefile makegluren.sh
|
||||
-mkdir -p $(BUILD)/$*/$(GLUREN)
|
||||
env SRC="$(SRC)" SOURCE="$(SOURCE)" GLUE="$(GLUE)" ./makegluren.sh $@ $*
|
||||
@fgrep -q OICU_ $@ || ( echo "Error: $@: no OICU_ symbols found. Removing gluren.h " ; rm -f $@ ; exit 1)
|
||||
|
||||
$(BUILD)/%/config/$(ICU_CONFIG): $(BUILD)/%/config/$(ICU_CONFIG_ORIG) icu-config.sed $(BUILD)/%/ok
|
||||
sed -f icu-config.sed < $(BUILD)/$*/config/$(ICU_CONFIG_ORIG) > $(BUILD)/$*/config/$(ICU_CONFIG) && chmod a+rx $(BUILD)/$*/config/$(ICU_CONFIG)
|
||||
|
||||
# perform installation
|
||||
$(INST)/%/ok: $(BUILD)/%/ok
|
||||
echo $(SUBHEAD) $* "(backend) installing..."
|
||||
echo "INST " "[" $* "]"
|
||||
mkdir -p $(INST)/$*
|
||||
-$(call LOG_COMPILE,$(BUILD)$*/ok.log,$(MAKE) $(MOPTS) -C $(BUILD)/$* install $(MAKE_INSTALL_XTRA_OPTS))
|
||||
touch $@
|
||||
|
||||
# unpack ICU and patch
|
||||
$(SRC)/%/ok: $(ICUS)/icu4c-%-src.tgz
|
||||
-[ -d $(SRC)/$* ] && rm -rf $(SRC)/$*
|
||||
@echo $(SUBHEAD) $* "(backend) unpacking..."
|
||||
mkdir -p $(SRC)/$*
|
||||
$(call LOG_COMPILE,$(SRC)/$*/unpack.log,( cd $(SRC)/$* && gunzip -d < $(TOP)/$(ICUS)/icu4c-$*-src.tgz | tar xvfp - ))
|
||||
([ -f $(DOT)/patch/$* ] && patch -d $(SRC)/$* -p1 < $(DOT)/patch/$*) || true
|
||||
touch $@
|
||||
|
||||
# config
|
||||
$(BUILD)/%/config.status: $(SRC)/%/ok
|
||||
@echo $(SUBHEAD) $* "(backend) configuring..."
|
||||
-[ -d $(BUILD)/$* ] && rm -rf $(BUILD)/$*
|
||||
mkdir -p $(BUILD)/$*
|
||||
$(call LOG_COMPILE,$(BUILD)/$*/configure.log,( cd $(BUILD)/$* && env CFLAGS="$(CFLAGS) $(PBLD_EXTRA_FLAGS)" CXXFLAGS="$(CXXFLAGS) $(PBLD_EXTRA_FLAGS)" $(shell $(SUPERCONF) $(TOP)/$(SRC)/$*/$(SOURCE) $*) $(CONFIGURE_OPTS) --srcdir=$(TOP)/$(SRC)/$*/$(SOURCE) --prefix=$(TOP)/$(INST)/$* ))
|
||||
|
||||
# build
|
||||
# note: regex had renaming problems, and spoof depends on regex. Nuke them.
|
||||
$(BUILD)/%/ok: $(BUILD)/%/config.status
|
||||
@echo $(SUBHEAD) $* "(backend) building.."
|
||||
$(call LOG_COMPILE,$(BUILD)/$*/ok2.log,( $(MAKE) $(MOPTS) -C $(BUILD)/$* all $(MAKE_XTRA_OPTS) ))
|
||||
@if [ ! -f $(BUILD)/$*/common/putil.$(SOBJ) ]; \
|
||||
then \
|
||||
echo re-unpacking $(BUILD)/$*/common ; \
|
||||
( cd $(BUILD)/$*/common && ar xf ../lib/libsicuuc.a || echo could not unpack ../lib/libsicuuc.a ) ; \
|
||||
echo re-unpacking $(BUILD)/$*/i18n ; \
|
||||
( cd $(BUILD)/$*/i18n && ar xf ../lib/libsicui18n.a || echo could not unpack ../lib/libsicui18n.a ) ; \
|
||||
fi
|
||||
@if [ ! -f $(BUILD)/$*/common/putil.$(SOBJ) ]; \
|
||||
then \
|
||||
echo ERROR: still could not find $(BUILD)/$*/common/putil.$(SOBJ) - build may fail.; \
|
||||
fi
|
||||
-rm -f $(BUILD)/$*/i18n/uregex*.* $(BUILD)/$*/i18n/uspoof*.*o*
|
||||
touch $@
|
||||
|
||||
info help:
|
||||
@echo $(SUBHEAD) Provider Build
|
||||
@echo "Targetting Provider against ICU $(PROVIDER_TARGET) ($(PLUGLIB), major $(PLUGLIB_MAJ))"
|
||||
@echo "Available plugins: $(PROVIDER_AVAILABLE) ($(PLUGLIB_AVAILABLE))"
|
||||
@echo "Available keywords:"
|
||||
@for ver in $(PROVIDER_AVAILABLE); do \
|
||||
echo " ...@provider=icu"`echo $$ver | ./icu2symver.sh`; \
|
||||
done
|
||||
@echo "Plugin library will be $(PLUGLIB_NAME)"
|
||||
@echo
|
||||
@echo Available ICU tarballs: $(ICU_TARBALLS)
|
||||
@echo Available ICU versions: $(shell echo $(ICU_TARBALLS_VERS) | tr '_' '.')
|
||||
|
||||
$(OUT)/$(PLUGLIB)/provider_version.h: Makefile.local Makefile $(ALLDIRS)
|
||||
@echo $(SUBHEAD) $(PLUGIN) "(plugin)" Generating $@ ..
|
||||
@echo "/* Generated file. */" > $@
|
||||
@echo "const char *provider_version[] = {" >> $@
|
||||
@for ver in $(PROVIDER_AVAILABLE); do \
|
||||
sym=`echo $$ver | ./icu2symver.sh` ; \
|
||||
echo Version $$ver, Symbol $$sym ; \
|
||||
echo "\"$$sym\"", >> $@ ; \
|
||||
done
|
||||
@echo " }; " >> $@
|
||||
@echo "#define PROVIDER_COUNT (sizeof(provider_version)/sizeof(provider_version[0]))" >> $@
|
||||
@echo >> $@
|
||||
@echo $(SUBHEAD) $(PLUGIN) "(plugin)" Generated $@
|
||||
|
||||
#-- for the prototype
|
|
@ -1,35 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2008-2012 IBM Corporation and Others. All Rights Reserved
|
||||
|
||||
# local definitions must go in Makefile.local
|
||||
# example:
|
||||
|
||||
##
|
||||
## These two are REQUIRED.
|
||||
##
|
||||
|
||||
# The version of ICU you will build against (which API you will use). Note, 49.1 is required for collation support, and for date support.
|
||||
# EXAMPLE: 49.1
|
||||
PROVIDER_TARGET=49.1
|
||||
|
||||
# The versions of ICU you want to have available in the plugin. Space separated. Don't include the PROVIDER_TARGET version.
|
||||
# EXAMPLE: 3.8.1 4.2.0.1
|
||||
PROVIDER_AVAILABLE=3.8.1 4.2.0.1
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
##
|
||||
## following are OPTIONAL
|
||||
##
|
||||
|
||||
## debug options
|
||||
#EXTRA_COMPILE_OPTS=-g
|
||||
|
||||
## configure options
|
||||
#EXTRA_CONFIGURE_OPTS=--with-library-suffix=srl
|
||||
|
|
@ -1,146 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
*******************************************************************************
|
||||
*
|
||||
* Copyright (C) 2009-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
*
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#include <unicode/datefmt.h>
|
||||
#include <unicode/udat.h>
|
||||
#include <unicode/uclean.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
|
||||
/* String to use. */
|
||||
const UDate stuff = 1299977771000.0L;
|
||||
|
||||
int err=0;
|
||||
#include "provider_version.h"
|
||||
|
||||
|
||||
#define LOCALE_COUNT 4
|
||||
const char *locale[LOCALE_COUNT] = { "es_GU", "fr_AD", "et_AM", "en_IE" }; /* List of locales to test */
|
||||
|
||||
/**
|
||||
* Set up ICU, print # of available collators
|
||||
*/
|
||||
void setup(UErrorCode &status) {
|
||||
u_init(&status);
|
||||
|
||||
fprintf(stderr, "ICU %s init: %s\n", U_ICU_VERSION, u_errorName(status));
|
||||
|
||||
int32_t count;
|
||||
const Locale *se = Calendar::getAvailableLocales(count);
|
||||
fprintf(stderr, "# Calendars now available: %d,\t%s - %d providers expected.\n", count, u_errorName(status), (int32_t)PROVIDER_COUNT);
|
||||
}
|
||||
|
||||
int main(int /* argc*/ , const char * /*argv*/ []) {
|
||||
#if 0
|
||||
// fprintf(stderr, "Warning: ICU %s doesn't support date providers. Need at least 49.\n", U_ICU_VERSION );
|
||||
// return 0;
|
||||
#else
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
int diffs = 0;
|
||||
int gbaddiffs =0;
|
||||
UDateFormatStyle styles[] = { UDAT_FULL, UDAT_SHORT };
|
||||
setup(status);
|
||||
if(U_FAILURE(status)) return 1;
|
||||
|
||||
int expected = PROVIDER_COUNT;
|
||||
|
||||
for(uint32_t s=0;s<sizeof(styles)/sizeof(styles[0]);s++) {
|
||||
for(int l=0;l<LOCALE_COUNT;l++) {
|
||||
printf("\n");
|
||||
char oldChars[200];
|
||||
int32_t oldLen = -1;
|
||||
for(int v=0;v<=expected;v++) {
|
||||
|
||||
// Construct the locale ID
|
||||
char locID[200];
|
||||
strcpy(locID, locale[l]);
|
||||
if((v!=expected)) { // -1 = no version
|
||||
strcat(locID, "@sp=icu");
|
||||
strcat(locID, provider_version[v]);
|
||||
}
|
||||
|
||||
printf("%18s : ", locID);
|
||||
|
||||
UErrorCode subStatus = U_ZERO_ERROR;
|
||||
char outchars[200];
|
||||
|
||||
LocalPointer<Calendar> cal(Calendar::createInstance(Locale(locID), subStatus));
|
||||
|
||||
if(U_FAILURE(subStatus)) {
|
||||
printf("ERR: %s\n", u_errorName(subStatus));
|
||||
err++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// int32_t len = udat_format(dat, stuff, outchars, 200, nullptr, &subStatus);
|
||||
|
||||
// //printf("\n");
|
||||
//char utf8[200];
|
||||
// u_strToUTF8(utf8, 200, nullptr, outchars, len, &subStatus);
|
||||
|
||||
sprintf(outchars, " cal: mindays=%d firstday=%d ", (int)cal->getMinimalDaysInFirstWeek(), (int)cal->getFirstDayOfWeek());
|
||||
int32_t len = strlen(outchars);
|
||||
|
||||
if(oldLen!=len || memcmp(outchars,oldChars,len*sizeof(outchars[0]))) {
|
||||
if(v==0) {
|
||||
putchar(' ');
|
||||
} else {
|
||||
putchar ('!');
|
||||
diffs++;
|
||||
}
|
||||
} else {
|
||||
putchar ('=');
|
||||
}
|
||||
printf(" %s ", outchars);
|
||||
|
||||
for(int i=0;i<len;i++) {
|
||||
if((i<oldLen)&&(outchars[i]!=oldChars[i])) {
|
||||
diffs++;
|
||||
printf("*", oldChars[i]);
|
||||
} else {
|
||||
printf(" ");
|
||||
}
|
||||
// // printf("U+%04X", (outchars[i]));
|
||||
}
|
||||
putchar('\n');
|
||||
|
||||
oldLen = len;
|
||||
memcpy(oldChars, outchars, len*sizeof(oldChars[0]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(diffs==0) {
|
||||
printf("ERROR: 0 differences found between platforms.. are the platforms installed? Try 'icuinfo -L'\n");
|
||||
return 1;
|
||||
} else {
|
||||
printf("%d differences found among provider versions! Provider is working!\n", diffs);
|
||||
}
|
||||
|
||||
// if(gbaddiffs>0) {
|
||||
// printf("ERROR: %d diffs found between a collator and it's reopened (from shortstring) variant.\n", gbaddiffs);
|
||||
// return 2;
|
||||
// } else {
|
||||
// printf("Collator and reopened (shortstring) are OK.\n");
|
||||
// }
|
||||
|
||||
if(err) {
|
||||
printf("%d errors - FAIL!\n", err);
|
||||
return 1;
|
||||
}
|
||||
|
||||
printf("Success!\n");
|
||||
|
||||
return 0;
|
||||
#endif
|
||||
}
|
|
@ -1,61 +0,0 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2010-2012 IBM Corporation and Others, All Rights Reserved.
|
||||
|
||||
if [ $# -eq 1 ];
|
||||
then
|
||||
VERBOSE=1
|
||||
else
|
||||
VERBOSE=0
|
||||
fi
|
||||
|
||||
function verbose()
|
||||
{
|
||||
if [ ${VERBOSE} -eq 1 ];
|
||||
then
|
||||
echo "$*"
|
||||
else
|
||||
echo -n .
|
||||
fi
|
||||
}
|
||||
|
||||
function c()
|
||||
{
|
||||
IN=$1
|
||||
EXP=$2
|
||||
OUT=`./icu2symver.sh $IN`
|
||||
if [ "x${OUT}" != "x${EXP}" ];
|
||||
then
|
||||
echo "Error: \"${IN}\" -> \"${OUT}\", expected ${EXP}" >&2
|
||||
exit 1
|
||||
else
|
||||
verbose "${IN} -> ${OUT}"
|
||||
fi
|
||||
|
||||
OUT=`echo ${IN} | ./icu2symver.sh`
|
||||
if [ "x${OUT}" != "x${EXP}" ];
|
||||
then
|
||||
echo "Error: \"${IN}\" -> \"${OUT}\", expected ${EXP} (via stream)" >&2
|
||||
exit 1
|
||||
else
|
||||
verbose "${IN} -> ${OUT} (via stream)"
|
||||
fi
|
||||
}
|
||||
|
||||
c '3.6.2' '36'
|
||||
c '1.0' '10'
|
||||
c '4.8' '48'
|
||||
c '4.8.1.1' '48'
|
||||
c '4.0.2' '40'
|
||||
c '4.1.2' '41'
|
||||
c '49.1.2' '49'
|
||||
c '49' '49'
|
||||
c '50.0.3' '50'
|
||||
c '51.0.0.1' '51'
|
||||
|
||||
echo " OK!"
|
||||
|
||||
exit 0
|
|
@ -1,189 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
*******************************************************************************
|
||||
*
|
||||
* Copyright (C) 2009-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
*
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#include <unicode/coll.h>
|
||||
#include <unicode/uclean.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
|
||||
/* String to use. */
|
||||
const char16_t stuff[] = { 0x30BB, 0x0d4c, 0x53, 0x74, 0x75, 0x66, 0x66, 0x00 }; /* Stuff */
|
||||
|
||||
#include "provider_version.h"
|
||||
|
||||
|
||||
#define LOCALE_COUNT 4
|
||||
const char *locale[LOCALE_COUNT] = { "fi", "en_US", "ja", "ml" }; /* List of locales to test */
|
||||
|
||||
/**
|
||||
* Set up ICU, print # of available collators
|
||||
*/
|
||||
void setup(UErrorCode &status) {
|
||||
u_init(&status);
|
||||
|
||||
fprintf(stderr, "ICU %s init: %s\n", U_ICU_VERSION, u_errorName(status));
|
||||
|
||||
int32_t count;
|
||||
StringEnumeration *se = Collator::getAvailableLocales();
|
||||
count = se->count(status);
|
||||
fprintf(stderr, "# Collators now available: %d,\t%s - %d providers expected.\n", count, u_errorName(status), (int32_t)PROVIDER_COUNT);
|
||||
}
|
||||
|
||||
int main(int /* argc*/ , const char * /*argv*/ []) {
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
int diffs = 0;
|
||||
int gbaddiffs =0;
|
||||
setup(status);
|
||||
if(U_FAILURE(status)) return 1;
|
||||
|
||||
int expected = PROVIDER_COUNT;
|
||||
|
||||
for(int l=0;l<LOCALE_COUNT;l++) {
|
||||
printf("\n");
|
||||
uint8_t oldBytes[200];
|
||||
int32_t oldLen = -1;
|
||||
for(int v=0;v<=expected;v++) {
|
||||
|
||||
// Construct the locale ID
|
||||
char locID[200];
|
||||
strcpy(locID, locale[l]);
|
||||
if((v!=expected)) { // -1 = no version
|
||||
strcat(locID, "@sp=icu");
|
||||
strcat(locID, provider_version[v]);
|
||||
}
|
||||
|
||||
printf("%-28s = ", locID);
|
||||
|
||||
UErrorCode subStatus = U_ZERO_ERROR;
|
||||
uint8_t bytes[200];
|
||||
uint8_t bytesb[200];
|
||||
#define USE_CXX 0
|
||||
|
||||
#if USE_CXX
|
||||
Collator *col = Collator::createInstance(Locale(locID),subStatus);
|
||||
if(U_FAILURE(subStatus)) {
|
||||
printf("ERR: %s\n", u_errorName(subStatus));
|
||||
continue;
|
||||
}
|
||||
int32_t len = col->getSortKey(stuff, -1, bytes, 200);
|
||||
#else
|
||||
#if 1
|
||||
char xbuf2[200];
|
||||
strcpy(xbuf2,"X/");
|
||||
strcat(xbuf2,locID);
|
||||
strcat(xbuf2,"/");
|
||||
//printf(" -> %s\n", xbuf2);
|
||||
UCollator *col = ucol_openFromShortString(xbuf2, false,nullptr, &subStatus);
|
||||
#else
|
||||
UCollator *col = ucol_open(locID, &subStatus);
|
||||
#endif
|
||||
if(U_FAILURE(subStatus)) {
|
||||
printf("ERR: %s\n", u_errorName(subStatus));
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
char xbuf3[200];
|
||||
{
|
||||
int32_t def = ucol_getShortDefinitionString(col,locID/*nullptr*/,xbuf3,200,&subStatus);
|
||||
if(U_FAILURE(subStatus)) {
|
||||
printf("Err getting short string name: %s\n", u_errorName(subStatus));
|
||||
} else {
|
||||
printf(" --> %s\n", xbuf3);
|
||||
}
|
||||
}
|
||||
|
||||
int32_t len = ucol_getSortKey(col, stuff, -1, bytes, 200);
|
||||
#endif
|
||||
|
||||
printf(" ");
|
||||
|
||||
int tdiffs=0;
|
||||
|
||||
for(int i=0;i<len;i++) {
|
||||
if(i<oldLen&&bytes[i]!=oldBytes[i]) {
|
||||
diffs++;
|
||||
printf("*");
|
||||
} else {
|
||||
printf(" ");
|
||||
}
|
||||
printf("%02X", (0xFF&bytes[i]));
|
||||
}
|
||||
printf("\n");
|
||||
|
||||
char xbuf4[200];
|
||||
UCollator *col2 = ucol_openFromShortString(xbuf3, false, nullptr, &subStatus);
|
||||
if(U_FAILURE(subStatus)) {
|
||||
printf("Err opening from new short string : %s\n", u_errorName(subStatus));
|
||||
continue;
|
||||
} else {
|
||||
int32_t def4 = ucol_getShortDefinitionString(col,locID/*nullptr*/,xbuf4,200,&subStatus);
|
||||
if(strcmp(xbuf4,xbuf3)) {
|
||||
printf(" --> reopened = %s (%s)\n", xbuf4, u_errorName(subStatus));
|
||||
}
|
||||
}
|
||||
int32_t len2 = ucol_getSortKey(col2, stuff, -1, bytesb, 200);
|
||||
|
||||
int baddiffs=0;
|
||||
for(int i=0;i<len;i++) {
|
||||
if(i<len&&bytes[i]!=bytesb[i]) {
|
||||
baddiffs++;
|
||||
printf("!");
|
||||
} else {
|
||||
// printf(" ");
|
||||
}
|
||||
// printf("%02X", (0xFF&bytesb[i]));
|
||||
}
|
||||
if(baddiffs>0) {
|
||||
printf(" - ERR! Diffs from %s in %d places\n", xbuf2,baddiffs);
|
||||
gbaddiffs+=baddiffs;
|
||||
} else {
|
||||
//printf(" OK.\n");
|
||||
}
|
||||
// printf("\n");
|
||||
|
||||
|
||||
|
||||
#if USE_CXX
|
||||
delete col;
|
||||
#else
|
||||
ucol_close(col);
|
||||
#endif
|
||||
|
||||
oldLen = len;
|
||||
memcpy(oldBytes, bytes, len);
|
||||
}
|
||||
}
|
||||
|
||||
if(diffs==0) {
|
||||
#if (U_ICU_VERSION_MAJOR_NUM < 49)
|
||||
printf("ERROR: 0 differences found between platforms. ICU " U_ICU_VERSION " does not support collator plugins properly (not until 49)\n");
|
||||
#else
|
||||
printf("ERROR: 0 differences found between platforms.. are the platforms installed? Try 'icuinfo -L'\n");
|
||||
#endif
|
||||
return 1;
|
||||
} else {
|
||||
printf("%d differences found among provider versions!\n", diffs);
|
||||
}
|
||||
|
||||
if(gbaddiffs>0) {
|
||||
printf("ERROR: %d diffs found between a collator and it's reopened (from shortstring) variant.\n", gbaddiffs);
|
||||
return 2;
|
||||
} else {
|
||||
printf("Collator and reopened (shortstring) are OK.\n");
|
||||
}
|
||||
|
||||
printf("Success!\n");
|
||||
|
||||
return 0;
|
||||
}
|
|
@ -1,133 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
*******************************************************************************
|
||||
*
|
||||
* Copyright (C) 2009-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
*
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#include <unicode/datefmt.h>
|
||||
#include <unicode/udat.h>
|
||||
#include <unicode/uclean.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
|
||||
/* String to use. */
|
||||
const UDate stuff = 1299977771000.0L;
|
||||
|
||||
#include "provider_version.h"
|
||||
|
||||
|
||||
#define LOCALE_COUNT 4
|
||||
const char *locale[LOCALE_COUNT] = { "fi", "en_US", "ja", "ml" }; /* List of locales to test */
|
||||
|
||||
/**
|
||||
* Set up ICU, print # of available collators
|
||||
*/
|
||||
void setup(UErrorCode &status) {
|
||||
u_init(&status);
|
||||
|
||||
fprintf(stderr, "ICU %s init: %s\n", U_ICU_VERSION, u_errorName(status));
|
||||
|
||||
// int32_t count;
|
||||
// StringEnumeration *se = DateFormat::getAvailableLocales();
|
||||
// count = se->count(status);
|
||||
// fprintf(stderr, "# DateFormats now available: %d,\t%s - %d providers expected.\n", count, u_errorName(status), (int32_t)PROVIDER_COUNT);
|
||||
}
|
||||
|
||||
int main(int /* argc*/ , const char * /*argv*/ []) {
|
||||
#if (U_ICU_VERSION_MAJOR_NUM < 49)
|
||||
fprintf(stderr, "Warning: ICU %s doesn't support date providers. Need at least 49.\n", U_ICU_VERSION );
|
||||
return 0;
|
||||
#else
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
int diffs = 0;
|
||||
int gbaddiffs =0;
|
||||
UDateFormatStyle styles[] = { UDAT_FULL, UDAT_SHORT };
|
||||
setup(status);
|
||||
if(U_FAILURE(status)) return 1;
|
||||
|
||||
int expected = PROVIDER_COUNT;
|
||||
|
||||
for(uint32_t s=0;s<sizeof(styles)/sizeof(styles[0]);s++) {
|
||||
for(int l=0;l<LOCALE_COUNT;l++) {
|
||||
printf("\n");
|
||||
char16_t oldChars[200];
|
||||
int32_t oldLen = -1;
|
||||
for(int v=0;v<=expected;v++) {
|
||||
|
||||
// Construct the locale ID
|
||||
char locID[200];
|
||||
strcpy(locID, locale[l]);
|
||||
if((v!=expected)) { // -1 = no version
|
||||
strcat(locID, "@sp=icu");
|
||||
strcat(locID, provider_version[v]);
|
||||
}
|
||||
|
||||
printf("%18s : ", locID);
|
||||
|
||||
UErrorCode subStatus = U_ZERO_ERROR;
|
||||
char16_t outchars[200];
|
||||
|
||||
UDateFormat *dat = udat_open(styles[s],styles[s], locID, nullptr, -1, nullptr, 0, &subStatus);
|
||||
|
||||
if(U_FAILURE(subStatus)) {
|
||||
printf("ERR: %s\n", u_errorName(subStatus));
|
||||
continue;
|
||||
}
|
||||
|
||||
int32_t len = udat_format(dat, stuff, outchars, 200, nullptr, &subStatus);
|
||||
|
||||
//printf("\n");
|
||||
char utf8[200];
|
||||
u_strToUTF8(utf8, 200, nullptr, outchars, len, &subStatus);
|
||||
if(oldLen!=len || memcmp(outchars,oldChars,len*sizeof(outchars[0]))) {
|
||||
putchar ('!');
|
||||
diffs++;
|
||||
} else {
|
||||
putchar ('=');
|
||||
}
|
||||
printf(" %s ", utf8);
|
||||
|
||||
// for(int i=0;i<len;i++) {
|
||||
// if((i<oldLen)&&(outchars[i]!=oldChars[i])) {
|
||||
// diffs++;
|
||||
// printf("*", oldChars[i]);
|
||||
// } else {
|
||||
// printf(" ");
|
||||
// }
|
||||
// // printf("U+%04X", (outchars[i]));
|
||||
// }
|
||||
putchar('\n');
|
||||
udat_close(dat);
|
||||
|
||||
oldLen = len;
|
||||
memcpy(oldChars, outchars, len*sizeof(oldChars[0]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(diffs==0) {
|
||||
printf("ERROR: 0 differences found between platforms.. are the platforms installed? Try 'icuinfo -L'\n");
|
||||
return 1;
|
||||
} else {
|
||||
printf("%d differences found among provider versions!\n", diffs);
|
||||
}
|
||||
|
||||
// if(gbaddiffs>0) {
|
||||
// printf("ERROR: %d diffs found between a collator and it's reopened (from shortstring) variant.\n", gbaddiffs);
|
||||
// return 2;
|
||||
// } else {
|
||||
// printf("Collator and reopened (shortstring) are OK.\n");
|
||||
// }
|
||||
|
||||
printf("Success!\n");
|
||||
|
||||
return 0;
|
||||
#endif
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2017 and later: Unicode, Inc. and others.
|
||||
# License & terms of use: http://www.unicode.org/copyright.html
|
||||
#
|
||||
# Copyright (C) 2010 International Business Machines Corporation and Others. All Rights Reserved.
|
||||
_coll_provider_plugin
|
|
@ -1,38 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
*******************************************************************************
|
||||
*
|
||||
* Copyright (C) 2009, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
*
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#include <icuglue/icuglue.h>
|
||||
#include <unicode/coll.h>
|
||||
|
||||
|
||||
#if defined ( ICUGLUE_VER )
|
||||
//#error DEFINED!
|
||||
#else
|
||||
|
||||
#define GLUE_VER(x) puts("Version " # x );
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
// generate list of versions
|
||||
#include <icuglue/fe_verlist.h>
|
||||
|
||||
int main(int argc, const char *argv[]) {
|
||||
printf("I'm on " U_ICU_VERSION " but i have modules for: \n");
|
||||
for(int i=0;fe_verlist[i];i++) {
|
||||
printf("%d: %s\n", i, fe_verlist[i]);
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,430 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
*******************************************************************************
|
||||
*
|
||||
* Copyright (C) 2009-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
*
|
||||
*******************************************************************************
|
||||
*/
|
||||
#define CAL_FE_DEBUG 1
|
||||
|
||||
#ifndef CAL_FE_DEBUG
|
||||
#define CAL_FE_DEBUG 0
|
||||
#endif
|
||||
|
||||
#if CAL_FE_DEBUG
|
||||
#define debugfprintf(x) fflush(stderr),fflush(stdout),fprintf x,fflush(stderr),fflush(stdout)
|
||||
#else
|
||||
#define debugfprintf(x)
|
||||
#endif
|
||||
|
||||
#include <icuglue/icuglue.h>
|
||||
#include "unicode/ucal.h"
|
||||
//#include <unicode/tblcoll.h>
|
||||
#include "unicode/calendar.h"
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include "unicode/ustring.h"
|
||||
#include "unicode/gregocal.h"
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Macro to define the Calendar_glue_4_2 class
|
||||
*/
|
||||
#ifdef GLUE_VER
|
||||
#error GLUE_VER is defined
|
||||
#endif
|
||||
|
||||
#define GLUE_VER(x) class GLUE_SYM_V( Calendar, x ) : public Calendar { \
|
||||
public: /* static create */ \
|
||||
UCalendar *_this; GLUE_SYM_V( Calendar, x ) ( const Locale&, UErrorCode& ); \
|
||||
private: \
|
||||
virtual ~ GLUE_SYM_V ( Calendar, x) (); \
|
||||
public: \
|
||||
virtual void* getDynamicClassID() const; \
|
||||
static void* getStaticClassID() ; \
|
||||
/* overrides */ \
|
||||
virtual UBool haveDefaultCentury() const; \
|
||||
virtual UDate defaultCenturyStart() const ; \
|
||||
virtual int32_t handleGetExtendedYear() ; \
|
||||
virtual const char * getType() const ; \
|
||||
virtual UBool inDaylightTime(UErrorCode& status) const ; \
|
||||
virtual int32_t defaultCenturyStartYear() const ; \
|
||||
virtual int32_t handleComputeMonthStart(int32_t eyear, int32_t month, UBool useMonth) const ; \
|
||||
virtual int32_t handleGetLimit(UCalendarDateFields field, ELimitType limitType) const ; \
|
||||
virtual Calendar* clone() const; \
|
||||
public: static int32_t countAvailable(); \
|
||||
public: static int32_t appendAvailable(UnicodeString* strs, int32_t i, int32_t count); \
|
||||
};
|
||||
|
||||
|
||||
/** ==================================== The following code runs inside the 'target' version (i.e. old ICU) ========== **/
|
||||
#if defined ( ICUGLUE_VER )
|
||||
|
||||
/* code for some version */
|
||||
#include <icuglue/gluren.h>
|
||||
#include "oicu.h"
|
||||
|
||||
#ifdef GLUE_VER
|
||||
GLUE_VER( ICUGLUE_VER )
|
||||
#endif
|
||||
|
||||
GLUE_SYM (Calendar ) :: GLUE_SYM(Calendar) ( const Locale& loc, UErrorCode& status ) :
|
||||
Calendar(status), _this(nullptr)
|
||||
{
|
||||
|
||||
_this = OICU_ucal_open(nullptr, -1, /*locale*/nullptr, UCAL_DEFAULT, &status);
|
||||
|
||||
// copy some things over
|
||||
setMinimalDaysInFirstWeek(OICU_ucal_getAttribute(_this, UCAL_MINIMAL_DAYS_IN_FIRST_WEEK));
|
||||
setFirstDayOfWeek((UCalendarDaysOfWeek)OICU_ucal_getAttribute(_this, UCAL_FIRST_DAY_OF_WEEK));
|
||||
}
|
||||
|
||||
GLUE_SYM ( Calendar ) :: ~ GLUE_SYM(Calendar) () {
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " ucal_close");
|
||||
#endif
|
||||
OICU_ucal_close(_this);
|
||||
}
|
||||
|
||||
|
||||
UBool GLUE_SYM ( Calendar ) :: haveDefaultCentury() const {
|
||||
return false;
|
||||
}
|
||||
UDate GLUE_SYM ( Calendar ) :: defaultCenturyStart() const {
|
||||
return 0L;
|
||||
}
|
||||
int32_t GLUE_SYM ( Calendar ) :: handleGetExtendedYear() {
|
||||
return 0;
|
||||
}
|
||||
const char * GLUE_SYM ( Calendar ) :: getType() const {
|
||||
return "dilbert";
|
||||
}
|
||||
UBool GLUE_SYM ( Calendar ) :: inDaylightTime(UErrorCode& status) const {
|
||||
return false;
|
||||
}
|
||||
int32_t GLUE_SYM ( Calendar ) :: defaultCenturyStartYear() const {
|
||||
return 2012;
|
||||
}
|
||||
int32_t GLUE_SYM ( Calendar ) :: handleComputeMonthStart(int32_t eyear, int32_t month, UBool useMonth) const {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int32_t GLUE_SYM ( Calendar ) :: handleGetLimit(UCalendarDateFields field, ELimitType limitType) const {
|
||||
return 1;
|
||||
}
|
||||
Calendar* GLUE_SYM ( Calendar ) :: clone() const {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
||||
// DateFormat *
|
||||
// GLUE_SYM ( DateFormat ) :: create(UDateFormatStyle timeStyle,
|
||||
// UDateFormatStyle dateStyle,
|
||||
// const char *locale,
|
||||
// const char16_t *tzID,
|
||||
// int32_t tzIDLength,
|
||||
// const char16_t *pattern,
|
||||
// int32_t patternLength,
|
||||
// UErrorCode *status,
|
||||
// const Locale &loc, const char */*ver*/) {
|
||||
// // TODO: save version
|
||||
// //char locBuf[200];
|
||||
// //char kwvBuf[200];
|
||||
// UDateFormat * uc = OICU_udat_open( timeStyle, dateStyle, locale,
|
||||
// tzID,
|
||||
// tzIDLength,
|
||||
// pattern,
|
||||
// patternLength,
|
||||
// status);
|
||||
// if(U_FAILURE(*status)) return nullptr; // TODO: ERR?
|
||||
// DateFormat *c = new GLUE_SYM( DateFormat ) ( uc );
|
||||
// #if CAL_FE_DEBUG
|
||||
// fprintf(stderr, "VCF " ICUGLUE_VER_STR " udat_open=%s ->> %p\n", loc.getName(), (void*)c);
|
||||
// #endif
|
||||
// return c;
|
||||
// }
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Calendar ) :: countAvailable() {
|
||||
int32_t count = OICU_udat_countAvailable();
|
||||
return count;
|
||||
}
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Calendar ) :: appendAvailable(UnicodeString* strs, int32_t i, int32_t /*count*/) {
|
||||
int avail = OICU_udat_countAvailable();
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
OICU_u_init(&status);
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " avail %d - init %s\n", avail, u_errorName(status));
|
||||
#endif
|
||||
for(int j=0;j<avail;j++) {
|
||||
strs[i+j].append(OICU_udat_getAvailable(j));
|
||||
strs[i+j].append("@sp=icu");
|
||||
if(IS_OLD_VERSTR(ICUGLUE_VER_STR)) {
|
||||
strs[i+j].append( ICUGLUE_VER_STR[OLD_VERSTR_MAJ] ); // X_y
|
||||
strs[i+j].append( ICUGLUE_VER_STR[OLD_VERSTR_MIN] ); // x_Y
|
||||
} else {
|
||||
strs[i+j].append( ICUGLUE_VER_STR[NEW_VERSTR_MAJ] ); // Xy_
|
||||
strs[i+j].append( ICUGLUE_VER_STR[NEW_VERSTR_MIN] ); // xY_
|
||||
}
|
||||
#if CAL_FE_DEBUG
|
||||
{
|
||||
char foo[999];
|
||||
const char16_t *ss = strs[i+j].getTerminatedBuffer();
|
||||
u_austrcpy(foo, ss);
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " appending [%d+%d=%d] <<%s>>\n", i, j, i+j, foo);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
return OICU_ucol_countAvailable();
|
||||
}
|
||||
|
||||
UOBJECT_DEFINE_RTTI_IMPLEMENTATION( GLUE_SYM( Calendar ) )
|
||||
|
||||
|
||||
|
||||
|
||||
#else
|
||||
/** ==================================== The following code runs inside the 'provider' version (i.e. current ICU) ========== **/
|
||||
|
||||
// #if (U_ICU_VERSION_MAJOR_NUM < 49)
|
||||
// #define CAL_PROVIDER_UNSUPPORTED
|
||||
// #endif
|
||||
|
||||
#ifndef CAL_PROVIDER_UNSUPPORTED
|
||||
// define Collator_XX
|
||||
#include "icuglue/glver.h"
|
||||
|
||||
#include "servloc.h"
|
||||
|
||||
// generate list of versions
|
||||
static
|
||||
#include <icuglue/fe_verlist.h>
|
||||
|
||||
class VersionCalendarFactory : public LocaleKeyFactory {
|
||||
public:
|
||||
VersionCalendarFactory();
|
||||
virtual UObject* handleCreate(const Locale &loc, int32_t kind, const ICUService* service, UErrorCode& status) const;
|
||||
// virtual Calendar *createFormat(UCalendarStyle timeStyle,
|
||||
// UCalendarStyle dateStyle,
|
||||
// const char *locale,
|
||||
// const char16_t *tzID,
|
||||
// int32_t tzIDLength,
|
||||
// const char16_t *pattern,
|
||||
// int32_t patternLength,
|
||||
// UErrorCode *status);
|
||||
virtual void* getDynamicClassID() const;
|
||||
static void* getStaticClassID() ;
|
||||
virtual const Hashtable* getSupportedIDs(UErrorCode& status) const;
|
||||
private:
|
||||
const UnicodeString *getSupportedIDs(int32_t &count, UErrorCode &status) const;
|
||||
|
||||
public:
|
||||
virtual UObject*
|
||||
create(const ICUServiceKey& key, const ICUService* service, UErrorCode& status) const ;
|
||||
|
||||
};
|
||||
|
||||
UOBJECT_DEFINE_RTTI_IMPLEMENTATION( VersionCalendarFactory )
|
||||
|
||||
UObject*
|
||||
VersionCalendarFactory::create(const ICUServiceKey& key, const ICUService* service, UErrorCode& status) const {
|
||||
// UnicodeString id;
|
||||
// key.currentID(id);
|
||||
// Locale l(id);
|
||||
Locale l;
|
||||
const LocaleKey& lkey = (LocaleKey&)key;
|
||||
lkey.currentLocale(l);
|
||||
debugfprintf((stderr, "VCalF::create() .. %s err=%s\n", (const char*)l.getName(), u_errorName(status)));
|
||||
|
||||
char kw[100];
|
||||
int32_t kwlen = l.getKeywordValue("sp", kw, 100, status);
|
||||
|
||||
UObject *f;
|
||||
if(kwlen>0) {
|
||||
debugfprintf((stderr, "Trying for kw=%s\n", kw));
|
||||
f = handleCreate(l, -1, service, status);
|
||||
} else {
|
||||
f = LocaleKeyFactory::create(key,service,status);
|
||||
}
|
||||
|
||||
|
||||
|
||||
debugfprintf((stderr, "VCalF::create() .. = %p err=%s\n", (void*)f, u_errorName(status)));
|
||||
return f;
|
||||
}
|
||||
|
||||
VersionCalendarFactory::VersionCalendarFactory() :LocaleKeyFactory(LocaleKeyFactory::VISIBLE){
|
||||
#if CAL_FE_DEBUG
|
||||
printf("VCalF: hi! pid=%d, this=%p\n", getpid(), (void*)this);
|
||||
#endif
|
||||
}
|
||||
UObject* VersionCalendarFactory::handleCreate(const Locale &loc, int32_t kind, const ICUService* service, UErrorCode& status) const {
|
||||
//Locale loc(locale);
|
||||
// pull off provider #
|
||||
char provider[200];
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCalF:CC %s\n", loc.getName());
|
||||
#endif
|
||||
int32_t len = loc.getKeywordValue("sp", provider, 200, status);
|
||||
if(U_FAILURE(status)||len==0) return nullptr;
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCalF:KWV> %s/%d\n", u_errorName(status), len);
|
||||
#endif
|
||||
provider[len]=0;
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCalF:KWV %s\n", provider);
|
||||
#endif
|
||||
if(strncmp(provider,"icu",3)) return nullptr;
|
||||
const char *icuver=provider+3;
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCalF:ICUV %s\n", icuver);
|
||||
#endif
|
||||
|
||||
#if defined(GLUE_VER)
|
||||
#undef GLUE_VER
|
||||
#endif
|
||||
#define GLUE_VER(x) debugfprintf((stderr,"%c/%c|%c/%c\n", icuver[0],(#x)[0],icuver[1],(#x)[2])); if(CMP_VERSTR(icuver, (#x))) { Calendar *c = new glue ## Calendar ## x (loc, status); debugfprintf((stderr, "VCalF::CC %s -> %p\n", loc.getName(), c)); return c; }
|
||||
#include "icuglue/glver.h"
|
||||
#if CAL_FE_DEBUG
|
||||
fprintf(stderr, "VCalF:CC %s failed\n", loc.getName());
|
||||
#endif
|
||||
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
||||
static const UnicodeString *gLocalesDate = nullptr;
|
||||
static int32_t gLocCountDate = 0;
|
||||
|
||||
const Hashtable *VersionCalendarFactory::getSupportedIDs (UErrorCode& status) const {
|
||||
// from coll.cpp
|
||||
Hashtable *_ids = nullptr;
|
||||
if (U_SUCCESS(status)) {
|
||||
int32_t count = 0;
|
||||
_ids = new Hashtable(status);
|
||||
if (_ids) {
|
||||
const UnicodeString * idlist = /* _delegate -> */ getSupportedIDs(count, status);
|
||||
for (int i = 0; i < count; ++i) {
|
||||
_ids->put(idlist[i], (void*)this, status);
|
||||
if (U_FAILURE(status)) {
|
||||
delete _ids;
|
||||
_ids = nullptr;
|
||||
return;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
status = U_MEMORY_ALLOCATION_ERROR;
|
||||
}
|
||||
debugfprintf((stderr,"VCalF: hash=%p, count=%d, err=%s\n", (void*)_ids, count, u_errorName(status)));
|
||||
}
|
||||
return _ids;
|
||||
}
|
||||
|
||||
const UnicodeString
|
||||
*VersionCalendarFactory::getSupportedIDs(int32_t &count, UErrorCode &/*status*/) const {
|
||||
if(gLocalesDate==nullptr) {
|
||||
count = 0;
|
||||
|
||||
|
||||
/* gather counts */
|
||||
|
||||
#if defined(GLUE_VER)
|
||||
#undef GLUE_VER
|
||||
#endif
|
||||
#define GLUE_VER(x) count += glue ## Calendar ## x :: countAvailable();
|
||||
#include "icuglue/glver.h"
|
||||
|
||||
#if CAL_FE_DEBUG
|
||||
printf("VCalF: count=%d\n", count);
|
||||
#endif
|
||||
UnicodeString *strs = new UnicodeString[count];
|
||||
int32_t i = 0;
|
||||
|
||||
#if defined(GLUE_VER)
|
||||
#undef GLUE_VER
|
||||
#endif
|
||||
#define GLUE_VER(x) i += glue ## Calendar ## x :: appendAvailable(strs, i, count);
|
||||
#include "icuglue/glver.h"
|
||||
|
||||
#if CAL_FE_DEBUG
|
||||
printf("VCalF: appended count=%d\n", count);
|
||||
#endif
|
||||
|
||||
gLocCountDate = count;
|
||||
gLocalesDate = strs;
|
||||
}
|
||||
count = gLocCountDate;
|
||||
return gLocalesDate;
|
||||
}
|
||||
|
||||
|
||||
/* Plugin Code */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <unicode/uversion.h>
|
||||
|
||||
static URegistryKey rkcal = nullptr;
|
||||
|
||||
void cal_provider_register(UErrorCode &status) {
|
||||
debugfprintf((stderr, "about to register VCalF\n"));
|
||||
rkcal = Calendar::registerFactory(new VersionCalendarFactory(), status);
|
||||
debugfprintf((stderr, ".. registered VCalF, key=%p\n", (void*)rkcal));
|
||||
}
|
||||
|
||||
void cal_provider_unregister(UErrorCode &status) {
|
||||
Calendar::unregister(rkcal, status);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
/* no op- this ICU doesn't support date providers */
|
||||
|
||||
void cal_provider_register(UErrorCode &) {
|
||||
// not supported
|
||||
}
|
||||
|
||||
void cal_provider_unregister(UErrorCode &) {
|
||||
// not supported
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/* Plugin- only ICU 4.4+ */
|
||||
#if (U_ICU_VERSION_MAJOR_NUM > 4) || ((U_ICU_VERSION_MAJOR_NUM==4)&&(U_ICU_VERSION_MINOR_NUM>3))
|
||||
#include "unicode/icuplug.h"
|
||||
|
||||
U_CAPI UPlugTokenReturn U_EXPORT2 cal_provider_plugin (UPlugData *data, UPlugReason reason, UErrorCode *status);
|
||||
|
||||
U_CAPI UPlugTokenReturn U_EXPORT2 cal_provider_plugin (UPlugData *data, UPlugReason reason, UErrorCode *status)
|
||||
{
|
||||
switch(reason) {
|
||||
case UPLUG_REASON_QUERY:
|
||||
uplug_setPlugName(data, "Calendar Provider Plugin");
|
||||
uplug_setPlugLevel(data, UPLUG_LEVEL_HIGH);
|
||||
break;
|
||||
case UPLUG_REASON_LOAD:
|
||||
cal_provider_register(*status);
|
||||
break;
|
||||
case UPLUG_REASON_UNLOAD:
|
||||
cal_provider_unregister(*status);
|
||||
break;
|
||||
default:
|
||||
break; /* not handled */
|
||||
}
|
||||
return UPLUG_TOKEN;
|
||||
}
|
||||
#else
|
||||
|
||||
/*
|
||||
Note: this ICU version must explicitly call 'cal_provider_plugin'
|
||||
*/
|
||||
|
||||
#endif /* plugin */
|
||||
|
||||
#endif /* provider side (vs target) */
|
|
@ -1,516 +0,0 @@
|
|||
// © 2017 and later: Unicode, Inc. and others.
|
||||
// License & terms of use: http://www.unicode.org/copyright.html
|
||||
/*
|
||||
*******************************************************************************
|
||||
*
|
||||
* Copyright (C) 2009-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
*
|
||||
*******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef COLL_FE_DEBUG
|
||||
#define COLL_FE_DEBUG 0
|
||||
#endif
|
||||
|
||||
#include <icuglue/icuglue.h>
|
||||
#include <unicode/coll.h>
|
||||
//#include <unicode/tblcoll.h>
|
||||
#include <unicode/ucol.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include "unicode/ustring.h"
|
||||
|
||||
#if COLL_FE_DEBUG
|
||||
#define debugfprintf(x) fprintf x
|
||||
#else
|
||||
#define debugfprintf(x)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Before ICU 50.0.2 (50m2) - there was a different collator signature.
|
||||
* see: ticket:9460 ticket:9346
|
||||
*/
|
||||
#if (U_ICU_VERSION_MAJOR_NUM < 50) || ((U_ICU_VERSION_MAJOR_NUM==50)&&(U_ICU_VERSION_MINOR_NUM==0)&&(U_ICU_VERSION_PATCHLEVEL_NUM<2))
|
||||
#define PRE_50_0_2_COLLATOR
|
||||
#define CONST_BEFORE_50_0_2 const
|
||||
#define CONST_AFTER_50_0_2
|
||||
#define REF_AFTER_50_0_2
|
||||
#else
|
||||
/* "current" API */
|
||||
#define CONST_BEFORE_50_0_2
|
||||
#define CONST_AFTER_50_0_2 const
|
||||
#define REF_AFTER_50_0_2 &
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Macro to define the Collator_glue_4_2 class
|
||||
*/
|
||||
#define GLUE_VER(x) class GLUE_SYM_V( Collator, x ) : public Collator { \
|
||||
\
|
||||
public: static Collator *create(const Locale &loc, const char *ver); \
|
||||
private: UCollator *_this; GLUE_SYM_V( Collator, x ) ( UCollator* tn ) : _this(tn){} \
|
||||
virtual ~ GLUE_SYM_V ( Collator, x) (); \
|
||||
public: \
|
||||
virtual void* getDynamicClassID() const; \
|
||||
static void* getStaticClassID() ; \
|
||||
virtual Collator* clone() const; \
|
||||
virtual UCollationResult compare(const UnicodeString&, const UnicodeString&, UErrorCode&) const; \
|
||||
virtual UCollationResult compare(const UnicodeString&, const UnicodeString&, int32_t, UErrorCode&) const; \
|
||||
virtual UCollationResult compare(const char16_t*, int32_t, const char16_t*, int32_t, UErrorCode&) const; \
|
||||
virtual CollationKey& getCollationKey(const UnicodeString&, CollationKey&, UErrorCode&) const; \
|
||||
virtual CollationKey& getCollationKey(const char16_t*, int32_t, CollationKey&, UErrorCode&) const; \
|
||||
virtual int32_t hashCode() const; \
|
||||
virtual CONST_BEFORE_50_0_2 Locale getLocale(ULocDataLocaleType, UErrorCode&) const; \
|
||||
virtual ECollationStrength getStrength() const; \
|
||||
virtual void setStrength(ECollationStrength); \
|
||||
virtual void getVersion(uint8_t*) const; \
|
||||
virtual void setAttribute(UColAttribute, UColAttributeValue, UErrorCode&) ; \
|
||||
virtual UColAttributeValue getAttribute(UColAttribute, UErrorCode&) CONST_AFTER_50_0_2; \
|
||||
virtual uint32_t setVariableTop(const char16_t*, int32_t, UErrorCode&); \
|
||||
virtual uint32_t setVariableTop(const UnicodeString REF_AFTER_50_0_2, UErrorCode&); \
|
||||
virtual void setVariableTop(uint32_t, UErrorCode&); \
|
||||
virtual uint32_t getVariableTop(UErrorCode&) const; \
|
||||
virtual Collator* safeClone() CONST_AFTER_50_0_2 ; \
|
||||
virtual int32_t getSortKey(const UnicodeString&, uint8_t*, int32_t) const; \
|
||||
virtual int32_t getSortKey(const char16_t*, int32_t, uint8_t*, int32_t) const; \
|
||||
public: static int32_t countAvailable(); \
|
||||
public: static int32_t appendAvailable(UnicodeString* strs, int32_t i, int32_t count); \
|
||||
public: virtual int32_t internalGetShortDefinitionString(const char *locale, char *buffer, int32_t capacity, UErrorCode &status) const; \
|
||||
};
|
||||
|
||||
/** ==================================== The following code runs inside the 'target' version (i.e. old ICU) ========== **/
|
||||
#if defined ( ICUGLUE_VER )
|
||||
|
||||
|
||||
// these from tblcoll.h
|
||||
static Collator::ECollationStrength _getECollationStrength(
|
||||
const UCollationStrength &strength)
|
||||
{
|
||||
switch (strength)
|
||||
{
|
||||
case UCOL_PRIMARY :
|
||||
return Collator::PRIMARY;
|
||||
case UCOL_SECONDARY :
|
||||
return Collator::SECONDARY;
|
||||
case UCOL_TERTIARY :
|
||||
return Collator::TERTIARY;
|
||||
case UCOL_QUATERNARY :
|
||||
return Collator::QUATERNARY;
|
||||
default :
|
||||
return Collator::IDENTICAL;
|
||||
}
|
||||
}
|
||||
|
||||
static UCollationStrength _getUCollationStrength(
|
||||
const Collator::ECollationStrength &strength)
|
||||
{
|
||||
switch (strength)
|
||||
{
|
||||
case Collator::PRIMARY :
|
||||
return UCOL_PRIMARY;
|
||||
case Collator::SECONDARY :
|
||||
return UCOL_SECONDARY;
|
||||
case Collator::TERTIARY :
|
||||
return UCOL_TERTIARY;
|
||||
case Collator::QUATERNARY :
|
||||
return UCOL_QUATERNARY;
|
||||
default :
|
||||
return UCOL_IDENTICAL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* code for some version */
|
||||
#include <icuglue/gluren.h>
|
||||
|
||||
#include "oicu.h"
|
||||
|
||||
/* Expand GLUE_VER to define the class */
|
||||
#ifdef GLUE_VER
|
||||
GLUE_VER( ICUGLUE_VER )
|
||||
#endif
|
||||
|
||||
GLUE_SYM ( Collator ) :: ~ GLUE_SYM(Collator) () {
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " ucol_close");
|
||||
#endif
|
||||
OICU_ucol_close(_this);
|
||||
}
|
||||
|
||||
#if 0
|
||||
U_CFUNC int32_t U_CALLCONV
|
||||
GLUE_SYM ( glue_calcSortKey) (const UCollator *coll,
|
||||
const char16_t *source,
|
||||
int32_t sourceLength,
|
||||
uint8_t **result,
|
||||
uint32_t resultLength,
|
||||
UBool allocateSKBuffer,
|
||||
UErrorCode *status);
|
||||
|
||||
#endif
|
||||
|
||||
Collator *
|
||||
GLUE_SYM ( Collator ) :: create (const Locale &loc, const char */*ver*/) {
|
||||
// TODO: save 'ver' off.
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
char locBuf[200];
|
||||
char kwvBuf[200];
|
||||
int32_t len = loc.getKeywordValue("collation", kwvBuf, 200, status);
|
||||
strcpy(locBuf,loc.getBaseName());
|
||||
if(len>0) {
|
||||
strcat(locBuf,"@collator=");
|
||||
strcat(locBuf,kwvBuf);
|
||||
}
|
||||
UCollator * uc = OICU_ucol_open( locBuf, status);
|
||||
if(U_FAILURE(status)) return nullptr; // TODO: ERR?
|
||||
Collator *c = new GLUE_SYM( Collator ) ( uc );
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " ucol_open=%s ->> %p\n", locBuf, c);
|
||||
#endif
|
||||
return c;
|
||||
}
|
||||
|
||||
UOBJECT_DEFINE_RTTI_IMPLEMENTATION( GLUE_SYM( Collator ) )
|
||||
|
||||
Collator* GLUE_SYM ( Collator ) :: clone() const {
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " clone %p -> " , this);
|
||||
#endif
|
||||
UCollator *clc = OICU_ucol_safeClone( _this, nullptr, 0, &status);
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " .. safeclone %s _this %p-> %p " , u_errorName(status), _this, clc);
|
||||
#endif
|
||||
if(U_FAILURE(status)||clc==nullptr) return nullptr;
|
||||
Collator *c = new GLUE_SYM( Collator ) ( clc );
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " .. wrap(%p) -> %p\n", clc, c);
|
||||
#endif
|
||||
|
||||
return c;
|
||||
}
|
||||
|
||||
|
||||
UCollationResult GLUE_SYM ( Collator ) :: compare(const UnicodeString&, const UnicodeString&, UErrorCode&) const {
|
||||
return (UCollationResult)0;
|
||||
}
|
||||
|
||||
|
||||
UCollationResult GLUE_SYM ( Collator ) :: compare(const UnicodeString&, const UnicodeString&, int32_t, UErrorCode&) const {
|
||||
return (UCollationResult)0;
|
||||
}
|
||||
|
||||
|
||||
UCollationResult GLUE_SYM ( Collator ) :: compare(const char16_t* s, int32_t sl, const char16_t* d , int32_t dl, UErrorCode&/*e*/ ) const {
|
||||
return OICU_ucol_strcoll(_this, s, sl, d, dl);
|
||||
}
|
||||
|
||||
#include "unicode/sortkey.h"
|
||||
|
||||
static CollationKey kk;
|
||||
|
||||
CollationKey& GLUE_SYM ( Collator ) :: getCollationKey(const UnicodeString&, CollationKey&, UErrorCode&) const {
|
||||
//#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " GCK - notimp");
|
||||
//#endif
|
||||
return kk;
|
||||
}
|
||||
|
||||
|
||||
CollationKey& GLUE_SYM ( Collator ) :: getCollationKey(const char16_t*, int32_t, CollationKey&, UErrorCode&) const {
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " GKK2 - notimp");
|
||||
return kk;
|
||||
}
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Collator ) :: hashCode() const {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
CONST_BEFORE_50_0_2 Locale GLUE_SYM ( Collator ) :: getLocale(ULocDataLocaleType, UErrorCode&) const {
|
||||
return Locale();
|
||||
}
|
||||
|
||||
|
||||
Collator::ECollationStrength
|
||||
GLUE_SYM ( Collator ) :: getStrength() const {
|
||||
return _getECollationStrength(OICU_ucol_getStrength(_this));
|
||||
}
|
||||
|
||||
|
||||
void GLUE_SYM ( Collator ) :: setStrength(ECollationStrength s) {
|
||||
OICU_ucol_setStrength(_this, _getUCollationStrength(s));
|
||||
}
|
||||
|
||||
|
||||
void GLUE_SYM ( Collator ) :: getVersion(uint8_t*) const {
|
||||
}
|
||||
|
||||
|
||||
void GLUE_SYM ( Collator ) :: setAttribute(UColAttribute, UColAttributeValue, UErrorCode&) {
|
||||
}
|
||||
|
||||
|
||||
UColAttributeValue GLUE_SYM ( Collator ) :: getAttribute(UColAttribute, UErrorCode&) CONST_AFTER_50_0_2 {
|
||||
return (UColAttributeValue)0;
|
||||
}
|
||||
|
||||
|
||||
uint32_t GLUE_SYM ( Collator ) :: setVariableTop(const char16_t*, int32_t, UErrorCode&) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
uint32_t GLUE_SYM ( Collator ) :: setVariableTop(const UnicodeString REF_AFTER_50_0_2, UErrorCode&) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
void GLUE_SYM ( Collator ) :: setVariableTop(uint32_t, UErrorCode&) {
|
||||
}
|
||||
|
||||
|
||||
uint32_t GLUE_SYM ( Collator ) :: getVariableTop(UErrorCode&) const {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Collator* GLUE_SYM ( Collator ) :: safeClone() CONST_AFTER_50_0_2 {
|
||||
return clone();
|
||||
}
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Collator ) :: getSortKey(const UnicodeString& s, uint8_t*buf, int32_t len) const {
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " GSK");
|
||||
#endif
|
||||
return getSortKey(s.getBuffer(),s.length(), buf, len);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Collator ) :: getSortKey(const char16_t*s, int32_t l, uint8_t*d, int32_t b) const {
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " GKS");
|
||||
#endif
|
||||
return OICU_ucol_getSortKey(_this, s,l,d,b);
|
||||
}
|
||||
|
||||
int32_t GLUE_SYM (Collator ) :: internalGetShortDefinitionString(const char *locale, char *buffer, int32_t capacity, UErrorCode &status) const {
|
||||
if(U_FAILURE(status)) return 0;
|
||||
int32_t intRes = OICU_ucol_getShortDefinitionString(_this, locale, buffer, capacity, &status);
|
||||
int32_t newRes = (intRes += 7); /* _PICU38 */
|
||||
int32_t remainCap = capacity - newRes;
|
||||
|
||||
if(remainCap < 0 && U_SUCCESS(status)) {
|
||||
status = U_BUFFER_OVERFLOW_ERROR; /* ran out of space on our watch */
|
||||
}
|
||||
if(U_SUCCESS(status)) {
|
||||
char *p = buffer+strlen(buffer);
|
||||
strncat(p,"_PICU",5);
|
||||
p +=5 ;
|
||||
CPY_VERSTR(p, ICUGLUE_VER_STR);
|
||||
p +=2;
|
||||
if(remainCap>0) {
|
||||
*(p++)=0;
|
||||
}
|
||||
}
|
||||
return newRes;
|
||||
}
|
||||
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Collator ) :: countAvailable() {
|
||||
int32_t count = OICU_ucol_countAvailable();
|
||||
return count;
|
||||
}
|
||||
|
||||
|
||||
int32_t GLUE_SYM ( Collator ) :: appendAvailable(UnicodeString* strs, int32_t i, int32_t /*count*/) {
|
||||
int avail = OICU_ucol_countAvailable();
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
OICU_u_init(&status);
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF " ICUGLUE_VER_STR " avail %d - init %s\n", avail, u_errorName(status));
|
||||
#endif
|
||||
for(int j=0;j<avail;j++) {
|
||||
strs[i+j].append(OICU_ucol_getAvailable(j));
|
||||
strs[i+j].append("@sp=icu");
|
||||
|
||||
if(IS_OLD_VERSTR(ICUGLUE_VER_STR)) {
|
||||
strs[i+j].append( ICUGLUE_VER_STR[OLD_VERSTR_MAJ] ); // X_y
|
||||
strs[i+j].append( ICUGLUE_VER_STR[OLD_VERSTR_MIN] ); // x_Y
|
||||
} else {
|
||||
strs[i+j].append( ICUGLUE_VER_STR[NEW_VERSTR_MAJ] ); // Xy_
|
||||
strs[i+j].append( ICUGLUE_VER_STR[NEW_VERSTR_MIN] ); // xY_
|
||||
}
|
||||
|
||||
#if COLL_FE_DEBUG
|
||||
{
|
||||
char foo[999];
|
||||
const char16_t *ss = strs[i+j].getTerminatedBuffer();
|
||||
u_austrcpy(foo, ss);
|
||||
debugfprintf((stderr, "VCF " ICUGLUE_VER_STR " appending [%d+%d=%d] <<%s>>\n", i, j, i+j, foo));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
return OICU_ucol_countAvailable();
|
||||
}
|
||||
|
||||
|
||||
|
||||
#else
|
||||
/** ==================================== The following code runs inside the 'provider' version (i.e. current ICU) ========== **/
|
||||
|
||||
// define Collator_XX
|
||||
#include "icuglue/glver.h"
|
||||
|
||||
// generate list of versions
|
||||
static
|
||||
#include <icuglue/fe_verlist.h>
|
||||
|
||||
class VersionCollatorFactory : public CollatorFactory {
|
||||
public:
|
||||
virtual Collator *createCollator(const Locale &loc);
|
||||
virtual const UnicodeString *getSupportedIDs(int32_t &count, UErrorCode &status);
|
||||
virtual void* getDynamicClassID() const;
|
||||
static void* getStaticClassID() ;
|
||||
};
|
||||
|
||||
UOBJECT_DEFINE_RTTI_IMPLEMENTATION( VersionCollatorFactory )
|
||||
|
||||
Collator *VersionCollatorFactory::createCollator(const Locale &loc) {
|
||||
// pull off provider #
|
||||
char provider[200];
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF:CC %s\n", loc.getName());
|
||||
#endif
|
||||
int32_t len = loc.getKeywordValue("sp", provider, 200, status);
|
||||
if(U_FAILURE(status)||len==0) return nullptr;
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF:KWV> %s/%d\n", u_errorName(status), len);
|
||||
#endif
|
||||
provider[len]=0;
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF:KWV %s\n", provider);
|
||||
#endif
|
||||
if(strncmp(provider,"icu",3)) return nullptr;
|
||||
const char *icuver=provider+3;
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF:ICUV %s\n", icuver);
|
||||
#endif
|
||||
|
||||
#if defined(GLUE_VER)
|
||||
#undef GLUE_VER
|
||||
#endif
|
||||
|
||||
#define GLUE_VER(x) \
|
||||
debugfprintf((stderr,"%c/%c|%c/%c\n", icuver[0],(#x)[0],icuver[1],(#x)[2])); \
|
||||
if(CMP_VERSTR(icuver, (#x))) { \
|
||||
Collator *c = glue ## Collator ## x :: create(loc, icuver); \
|
||||
debugfprintf((stderr, "VCF::CC %s -> %p\n", loc.getName(), c)); \
|
||||
return c; \
|
||||
}
|
||||
|
||||
#include "icuglue/glver.h"
|
||||
#if COLL_FE_DEBUG
|
||||
fprintf(stderr, "VCF:CC %s failed\n", loc.getName());
|
||||
#endif
|
||||
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
||||
static const UnicodeString *gLocales = nullptr;
|
||||
static int32_t gLocCount = 0;
|
||||
|
||||
const UnicodeString
|
||||
*VersionCollatorFactory::getSupportedIDs(int32_t &count, UErrorCode &/*status*/) {
|
||||
if(gLocales==nullptr) {
|
||||
count = 0;
|
||||
|
||||
|
||||
/* gather counts */
|
||||
#if defined(GLUE_VER)
|
||||
#undef GLUE_VER
|
||||
#endif
|
||||
#define GLUE_VER(x) count += glue ## Collator ## x :: countAvailable();
|
||||
#include "icuglue/glver.h"
|
||||
|
||||
#if COLL_FE_DEBUG
|
||||
printf("VCF: count=%d\n", count);
|
||||
#endif
|
||||
UnicodeString *strs = new UnicodeString[count];
|
||||
int32_t i = 0;
|
||||
|
||||
#if defined(GLUE_VER)
|
||||
#undef GLUE_VER
|
||||
#endif
|
||||
#define GLUE_VER(x) i += glue ## Collator ## x :: appendAvailable(strs, i, count);
|
||||
#include "icuglue/glver.h"
|
||||
|
||||
#if COLL_FE_DEBUG
|
||||
printf("VCF: appended count=%d\n", count);
|
||||
#endif
|
||||
|
||||
gLocCount = count;
|
||||
gLocales = strs;
|
||||
}
|
||||
count = gLocCount;
|
||||
return gLocales;
|
||||
}
|
||||
|
||||
|
||||
/* Plugin Code */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <unicode/uversion.h>
|
||||
|
||||
static URegistryKey rk = nullptr;
|
||||
|
||||
void coll_provider_register(UErrorCode &status) {
|
||||
rk = Collator::registerFactory(new VersionCollatorFactory(), status);
|
||||
}
|
||||
|
||||
void coll_provider_unregister(UErrorCode &status) {
|
||||
Collator::unregister(rk, status);
|
||||
}
|
||||
|
||||
/* Plugin- only ICU 4.4+ */
|
||||
#if (U_ICU_VERSION_MAJOR_NUM > 4) || ((U_ICU_VERSION_MAJOR_NUM==4)&&(U_ICU_VERSION_MINOR_NUM>3))
|
||||
#include "unicode/icuplug.h"
|
||||
|
||||
U_CAPI UPlugTokenReturn U_EXPORT2 coll_provider_plugin (UPlugData *data, UPlugReason reason, UErrorCode *status);
|
||||
|
||||
U_CAPI UPlugTokenReturn U_EXPORT2 coll_provider_plugin (UPlugData *data, UPlugReason reason, UErrorCode *status)
|
||||
{
|
||||
switch(reason) {
|
||||
case UPLUG_REASON_QUERY:
|
||||
uplug_setPlugName(data, "Collation Provider Plugin");
|
||||
uplug_setPlugLevel(data, UPLUG_LEVEL_HIGH);
|
||||
break;
|
||||
case UPLUG_REASON_LOAD:
|
||||
coll_provider_register(*status);
|
||||
break;
|
||||
case UPLUG_REASON_UNLOAD:
|
||||
coll_provider_unregister(*status);
|
||||
break;
|
||||
default:
|
||||
break; /* not handled */
|
||||
}
|
||||
return UPLUG_TOKEN;
|
||||
}
|
||||
#else
|
||||
|
||||
/*
|
||||
Note: this ICU version must explicitly call 'coll_provider_plugin'
|
||||
*/
|
||||
|
||||
#endif /* plugin */
|
||||
|
||||
#endif /* provider side (vs target) */
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue