Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Aug 2002 14:37:06 +0700
From:      Tasanakorn Phaipool <tas@thdiy.com>
To:        ache@freebsd.org
Cc:        freebsd-i18n@freebsd.org
Subject:   th_TH.TIS620 locale
Message-ID:  <200208221437.06866.tas@thdiy.com>

index | next in thread | raw e-mail

[-- Attachment #1 --]
Hi,
Please review :
I want to add Thai locale support for FreeBSD.

My current problem is thai sorting.
Because of some thai vowel must be place be for a consonant.
(<SaraE>,<SaraAe>,<SaraO>,<SaraAiMaimuan>,<SaraAiMaimalai>)
But it must be sorted by consonant fist.
Ex.
<KoKai><KoKai>
<KoKai><KhoKhai>
<KoKai><SaraE>
<SaraAe><KoKai>
<KhoKhai><KoKai>
<KhoKhai><KhoKhwai>

When I put 8-Bit Thai charactor as symbol chain, It seem to wok.
But ache say colldef table will be 7bit code.
When I put hexadecimal chain it does not wok


For more information :

Thai Support in GNU/Linux
  http://linux.thai.net/thep/
Basic Concept of Thai Language
  http://www.fedu.uec.ac.jp/ZzzThai/thailang/
Thai Unicode
  http://www.unicode.org/charts/PDF/U0E00.pdf
If you want more information please let me know. 

----------------------------------
Tasanakorn Phaipool

[-- Attachment #2 --]
diff -ruN share.cvs/colldef/Makefile share.new/colldef/Makefile
--- share.cvs/colldef/Makefile	Mon Aug 19 18:10:45 2002
+++ share.new/colldef/Makefile	Mon Aug 19 21:23:14 2002
@@ -27,6 +27,7 @@
 		ru_RU.KOI8-R \
 		sv_SE.ISO8859-1 \
 		sv_SE.ISO8859-15 \
+		th_TH.TIS620 \
 		uk_UA.ISO8859-5 \
 		uk_UA.KOI8-U
 
@@ -73,6 +74,7 @@
 ru_RU.KOI8-R.out:       map.KOI8-R
 sv_SE.ISO8859-15.out:   map.ISO8859-15
 sv_SE.ISO8859-1.out:    map.ISO8859-1
+th_TH.TIS620:		map.TIS620
 uk_UA.ISO8859-5.out:	map.ISO8859-5
 uk_UA.KOI8-U.out:       map.KOI8-U
 
diff -ruN share.cvs/colldef/map.TIS620 share.new/colldef/map.TIS620
--- share.cvs/colldef/map.TIS620	Thu Jan  1 07:00:00 1970
+++ share.new/colldef/map.TIS620	Thu Aug 22 13:37:01 2002
@@ -0,0 +1,215 @@
+NU \x00
+SH \x01
+SX \x02
+EX \x03
+ET \x04
+EQ \x05
+AK \x06
+BL \x07
+BS \x08
+HT \x09
+LF \x0a
+VT \x0b
+FF \x0c
+CR \x0d
+SO \x0e
+SI \x0f
+DL \x10
+D1 \x11
+D2 \x12
+D3 \x13
+D4 \x14
+NK \x15
+SY \x16
+EB \x17
+CN \x18
+EM \x19
+SB \x1a
+EC \x1b
+FS \x1c
+GS \x1d
+RS \x1e
+US \x1f
+SP \x20
+! \x21
+" \x22
+Nb \x23
+DO \x24
+% \x25
+& \x26
+' \x27
+( \x28
+) \x29
+* \x2a
++ \x2b
+, \x2c
+- \x2d
+. \x2e
+/ \x2f
+0 \x30
+1 \x31
+2 \x32
+3 \x33
+4 \x34
+5 \x35
+6 \x36
+7 \x37
+8 \x38
+9 \x39
+: \x3a
+; \x3b
+< \x3c
+= \x3d
+> \x3e
+? \x3f
+At \x40
+A \x41
+B \x42
+C \x43
+D \x44
+E \x45
+F \x46
+G \x47
+H \x48
+I \x49
+J \x4a
+K \x4b
+L \x4c
+M \x4d
+N \x4e
+O \x4f
+P \x50
+Q \x51
+R \x52
+S \x53
+T \x54
+U \x55
+V \x56
+W \x57
+X \x58
+Y \x59
+Z \x5a
+<( \x5b
+// \x5c
+)> \x5d
+'> \x5e
+_ \x5f
+'! \x60
+a \x61
+b \x62
+c \x63
+d \x64
+e \x65
+f \x66
+g \x67
+h \x68
+i \x69
+j \x6a
+k \x6b
+l \x6c
+m \x6d
+n \x6e
+o \x6f
+p \x70
+q \x71
+r \x72
+s \x73
+t \x74
+u \x75
+v \x76
+w \x77
+x \x78
+y \x79
+z \x7a
+(! \x7b
+!! \x7c
+!) \x7d
+'? \x7e
+DT \x7F
+KoKai \xa1
+KhoKhai \xa2
+KhoKhuat \xa3
+KhoKhwai \xa4
+KhoKhon \xa5
+KhoRakhang \xa6
+NgoNgu \xa7
+ChoChan \xa8
+ChoChing \xa9
+ChoChang \xaa
+SoSo \xab
+ChoChoe \xac
+YoYing \xad
+DoChada \xae
+ToPatak \xaf
+ThoThan \xb0
+ThoNagmontho \xb1
+ThoPhuthao \xb2
+NoNen \xb3
+DoDek \xb4
+ToTao \xb5
+ThoThung \xb6
+ThoThanhan \xb7
+ThoThong \xb8
+NoNu \xb9
+BoBaimai \xba
+PoPla \xbb
+PhoPhung \xbc
+FoFa \xbd
+PhoPhan \xbe
+FoFan \xbf
+PhoSamphao \xc0
+MoMa \xc1
+YoYak \xc2
+RoRue \xc3
+Ru \xc4
+LoLing \xc5
+Lu \xc6
+WoWaen \xc7
+SoSala \xc8
+SoRusi \xc9
+SoSua \xca
+HoHip \xcb
+LoChula \xcc
+OAng \xcd
+HoNokhuk \xce
+Paiyannoi \xcf
+SaraA \xd0
+MaiHanAkat \xd1
+SaraAa \xd2
+SaraAm \xd3
+SaraI \xd4
+SaraIi \xd5
+SaraUe \xd6
+SaraUee \xd7
+SaraU \xd8
+SaraUu \xd9
+Phinthu \xda
+SymbolBaht \xdf
+SaraE \xe0
+SaraAe \xe1
+SaraO \xe2
+SaraAiMaimuan \xe3
+SaraAiMaimalai \xe4
+Lakkhangyao \xe5
+Maiyamok \xe6
+Maitaikhu \xe7
+MaiEk \xe8
+MaiTho \xe9
+MaiTri \xea
+MaiChattawa \xeb
+Thanthakhat \xec
+Nikhahit \xed
+Yamakkan \xee
+Fongman \xef
+Zero \xf0
+One \xf1
+Two \xf2
+Three \xf3
+Four \xf4
+Five \xf5
+Six \xf6
+Seven \xf7
+Eight \xf8
+Nine \xf9
+Angkhankhu \xfa
+Khomut \xfb
diff -ruN share.cvs/colldef/th_TH.TIS620.src share.new/colldef/th_TH.TIS620.src
--- share.cvs/colldef/th_TH.TIS620.src	Thu Jan  1 07:00:00 1970
+++ share.new/colldef/th_TH.TIS620.src	Thu Aug 22 13:56:16 2002
@@ -0,0 +1,78 @@
+# TIS620 
+#
+#
+charmap map.TIS620
+order \
+# controls
+	<NU>;...;<US>;\
+#
+	<SP>;!;\";<Nb>;<DO>;\
+	%;&;';\(;\);*;+;\,;-;.;/;\
+# digits
+	(0,<Zero>);(1,<One>);(2,<Two>);(3,<Three>);(4,<Four>);\
+	(5,<Five>);(6,<Six>);(7,<Seven>);(8,<Eight>);(9,<Nine>);\
+#
+	:;\;;\<;=;>;?;<At>;\
+# uppercase
+	A;...;Z;\
+#
+	[;\\;];^;_;`;\
+# lowercase
+	a;...;z;\
+#
+	\{;|;\};~;<DT>;\
+#
+	<KoKai>;\
+	<KhoKhai>;\
+	<KhoKhuat>;\
+	<KhoKhwai>;\
+	<KhoKhon>;\
+	<KhoRakhang>;\
+	<NgoNgu>;\
+	<ChoChan>;\
+	<ChoChing>;\
+	<ChoChang>;\
+	<SoSo>;\
+	<ChoChoe>;\
+	<YoYing>;\
+	<DoChada>;\
+	<ToPatak>;\
+	<ThoThan>;\
+	<ThoNagmontho>;\
+	<ThoPhuthao>;\
+	<NoNen>;\
+	<DoDek>;\
+	<ToTao>;\
+	<ThoThung>;\
+	<ThoThanhan>;\
+	<ThoThong>;\
+	<NoNu>;\
+	<BoBaimai>;\
+	<PoPla>;\
+	<PhoPhung>;\
+	<FoFa>;\
+	<PhoPhan>;\
+	<FoFan>;\
+	<PhoSamphao>;\
+	<MoMa>;\
+	<YoYak>;\
+	<RoRue>;\
+	<Ru>;\
+	<LoLing>;\
+	<Lu>;\
+	<WoWaen>;\
+	<SoSala>;\
+	<SoRusi>;\
+	<SoSua>;\
+	<HoHip>;\
+	<LoChula>;\
+	<OAng>;\
+	<HoNokhuk>;\
+	<Nikhahit>;\
+	<SaraA>;<MaiHanAkat>;<SaraAa>;<SaraAm>;<SaraI>;<SaraIi>;<SaraUe>;<SaraUee>;<SaraU>;<SaraUu>;\
+	<SaraE>;<SaraAe>;<SaraO>;<SaraAiMaimuan>;<SaraAiMaimalai>;\
+	<Khomut>;\
+	<Paiyannoi>;<Phinthu>;\xdb;...;\xde;<SymbolBaht>;<Lakkhangyao>;<Maiyamok>;<Maitaikhu>;\
+	<MaiEk>;<MaiTho>;<MaiTri>;<MaiChattawa>;<Thanthakhat>;<Yamakkan>;<Fongman>;\
+	<Angkhankhu>;\
+	\x80;...;\xa0;\xfc;...;\xff
diff -ruN share.cvs/mklocale/Makefile share.new/mklocale/Makefile
--- share.cvs/mklocale/Makefile	Mon Aug 19 18:10:55 2002
+++ share.new/mklocale/Makefile	Mon Aug 19 21:24:42 2002
@@ -17,6 +17,7 @@
 		ru_RU.CP866 \
 		ru_RU.ISO8859-5 \
 		ru_RU.KOI8-R \
+		th_TH.TIS620 \
 		uk_UA.KOI8-U \
 		zh_CN.eucCN \
 		zh_TW.Big5
diff -ruN share.cvs/mklocale/th_TH.TIS620.src share.new/mklocale/th_TH.TIS620.src
--- share.cvs/mklocale/th_TH.TIS620.src	Thu Jan  1 07:00:00 1970
+++ share.new/mklocale/th_TH.TIS620.src	Mon Aug 19 18:12:08 2002
@@ -0,0 +1,33 @@
+/*
+ * LOCALE_CTYPE for TIS620 set
+ *
+ */
+
+ENCODING	"NONE"
+VARIABLE        TIS620 charset, initially submitted by <tas@thdiy.com>
+
+ALPHA           'A' - 'Z' 'a' - 'z'
+ALPHA		0xa1 - 0xce 0xd0 - 0xd9 0xe0 - 0xe4 0xe5 0xe7 0xe8 - 0xeb 0xec
+BLANK           ' ' '\t' 0xa0
+CONTROL         0x00 - 0x1f 0x7f - 0x9f
+DIGIT		'0' - '9'
+GRAPH           0x21 - 0x7e 
+GRAPH 		0xcf 0xdf 0xe6 0xef 0xfa 0xfb 0xda 0xed 0xee
+LOWER           'a' - 'z'
+PRINT           0x20 - 0x7e 
+PRINT 		0xcf 0xdf 0xe6 0xef 0xfa 0xfb 0xda 0xed 0xee
+PUNCT		0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e 
+PUNCT		0xcf 0xdf 0xe6 0xef 0xfa 0xfb
+SPACE           0x09 - 0x0d 0x20 0xa0
+UPPER           'A' - 'Z'
+XDIGIT          '0' - '9' 'a' - 'f' 'A' - 'F'
+
+MAPLOWER       	<'A' - 'Z' : 'a'>
+MAPLOWER       	<'a' - 'z' : 'a'>
+
+MAPUPPER       	<'A' - 'Z' : 'A'>
+MAPUPPER       	<'a' - 'z' : 'A'>
+
+TODIGIT       	<'0' - '9' : 0>
+TODIGIT       	<'A' - 'F' : 10>
+TODIGIT       	<'a' - 'f' : 10>
diff -ruN share.cvs/monetdef/Makefile share.new/monetdef/Makefile
--- share.cvs/monetdef/Makefile	Mon Aug 19 18:10:55 2002
+++ share.new/monetdef/Makefile	Mon Aug 19 21:25:57 2002
@@ -42,6 +42,7 @@
 		sk_SK.ISO8859-2 \
 		sl_SI.ISO8859-2 \
 		sv_SE.ISO8859-1 \
+		th_TH.TIS620 \
 		tr_TR.ISO8859-9 \
 		uk_UA.ISO8859-5 \
 		uk_UA.KOI8-U \
diff -ruN share.cvs/monetdef/th_TH.TIS620.src share.new/monetdef/th_TH.TIS620.src
--- share.cvs/monetdef/th_TH.TIS620.src	Thu Jan  1 07:00:00 1970
+++ share.new/monetdef/th_TH.TIS620.src	Mon Aug 19 18:12:08 2002
@@ -0,0 +1,35 @@
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+THB 
+# currency_symbol
+฿
+# mon_decimal_point
+.
+# mon_thousands_sep
+,
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+1
+# p_sep_by_space
+2
+# n_cs_precedes
+1
+# n_sep_by_space
+2
+# p_sign_posn
+4
+# n_sign_posn
+4
+# EOF
diff -ruN share.cvs/msgdef/Makefile share.new/msgdef/Makefile
--- share.cvs/msgdef/Makefile	Mon Aug 19 18:10:56 2002
+++ share.new/msgdef/Makefile	Mon Aug 19 21:26:20 2002
@@ -33,6 +33,7 @@
 		ru_RU.KOI8-R \
 		sl_SI.ISO8859-2 \
 		sv_SE.ISO8859-1 \
+		th_TH.TIS620 \
 		tr_TR.ISO8859-9 \
 		uk_UA.ISO8859-5 \
 		uk_UA.KOI8-U \
diff -ruN share.cvs/msgdef/th_TH.TIS620.src share.new/msgdef/th_TH.TIS620.src
--- share.cvs/msgdef/th_TH.TIS620.src	Thu Jan  1 07:00:00 1970
+++ share.new/msgdef/th_TH.TIS620.src	Mon Aug 19 18:12:07 2002
@@ -0,0 +1,9 @@
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[yYsS].*
+# noexpr
+^[nN].*
+# EOF
diff -ruN share.cvs/numericdef/Makefile share.new/numericdef/Makefile
--- share.cvs/numericdef/Makefile	Mon Aug 19 18:10:56 2002
+++ share.new/numericdef/Makefile	Thu Aug 22 14:04:52 2002
@@ -34,6 +34,7 @@
 		sk_SK.ISO8859-2 \
 		sl_SI.ISO8859-2 \
 		sv_SE.ISO8859-1 \
+		th_TH.TIS620 \
 		tr_TR.ISO8859-9 \
 		uk_UA.ISO8859-5 \
 		uk_UA.KOI8-U \
diff -ruN share.cvs/numericdef/hi_IN.ISCII-DEV.out share.new/numericdef/hi_IN.ISCII-DEV.out
--- share.cvs/numericdef/hi_IN.ISCII-DEV.out	Thu Jan  1 07:00:00 1970
+++ share.new/numericdef/hi_IN.ISCII-DEV.out	Mon Aug 19 18:12:07 2002
@@ -0,0 +1,3 @@
+.
+,
+2;3
diff -ruN share.cvs/numericdef/th_TH.TIS620.src share.new/numericdef/th_TH.TIS620.src
--- share.cvs/numericdef/th_TH.TIS620.src	Thu Jan  1 07:00:00 1970
+++ share.new/numericdef/th_TH.TIS620.src	Mon Aug 19 18:12:07 2002
@@ -0,0 +1,11 @@
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# decimal_point
+.
+# thousands_sep
+,
+# grouping, separated by ;
+3;3
+# EOF
diff -ruN share.cvs/timedef/Makefile share.new/timedef/Makefile
--- share.cvs/timedef/Makefile	Mon Aug 19 18:10:55 2002
+++ share.new/timedef/Makefile	Thu Aug 22 14:03:05 2002
@@ -37,6 +37,7 @@
 		sk_SK.ISO8859-2 \
 		sl_SI.ISO8859-2 \
 		sv_SE.ISO8859-1 \
+		th_TH.TIS620 \
 		tr_TR.ISO8859-9 \
 		uk_UA.ISO8859-5 \
 		uk_UA.KOI8-U \
diff -ruN share.cvs/timedef/th_TH.TIS620.src share.new/timedef/th_TH.TIS620.src
--- share.cvs/timedef/th_TH.TIS620.src	Thu Jan  1 07:00:00 1970
+++ share.new/timedef/th_TH.TIS620.src	Mon Aug 19 18:12:07 2002
@@ -0,0 +1,101 @@
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+ม.ค.
+ก.พ.
+มี.ค.
+เม.ย.
+พ.ค.
+มิ.ย.
+ก.ค.
+ส.ค.
+ก.ย.
+ต.ค.
+พ.ย.
+ธ.ค.
+#
+# Long month names
+#
+มกราคม
+กุมภาพันธ์
+มีนาคม
+เมษายน
+พฤษภาคม
+มิถุนายน
+กรกฎาคม
+สิงหาคม
+กันยายน
+คุลาคม
+พฤษจิกายน
+ธันวาคม
+#
+# Short weekday names
+#
+อา.
+จ.
+อ.
+พ.
+พฤ.
+ศ.
+ส.
+#
+# Long weekday names
+#
+อาทิคย์
+จันทร์
+อังคาร
+พุธ
+พฤหัสบดี
+ศุกร์
+เสาร์
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d/%m/%Y
+#
+# c_fmt
+#
+%a %e %b %Y,%X
+#
+# am
+#
+AM
+#
+# pm
+#
+PM
+#
+# date_fmt
+#
+%a %e %b %Y,%X %Z
+#
+# Long months names (alternative)
+#
+January
+February
+March
+April
+May
+June
+July
+August
+September
+October
+November
+December
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200208221437.06866.tas>