summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2025-06-25 11:15:53 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2025-06-25 11:15:53 (GMT)
commit2e36c3e97b4312ea643a4332068c3e7890195fc1 (patch)
tree15824781aa4b62e4c1a7778af315eabb0f353879
parent86070b6f2653cfc4e29eacc044ca66e7385ec9c9 (diff)
parente57c57e122ddac19071e6bc59bf686315f067557 (diff)
downloadtcl-2e36c3e97b4312ea643a4332068c3e7890195fc1.zip
tcl-2e36c3e97b4312ea643a4332068c3e7890195fc1.tar.gz
tcl-2e36c3e97b4312ea643a4332068c3e7890195fc1.tar.bz2
Fix [ecafd8611d]: Euro/Tail-sign missing from cp864 encoding
-rw-r--r--changes.md2
-rwxr-xr-xlibrary/encoding/cp165.enc20
-rw-r--r--library/encoding/cp864.enc4
-rw-r--r--tests/encoding.test8
-rw-r--r--tools/encoding/cp864.txt4
5 files changed, 33 insertions, 5 deletions
diff --git a/changes.md b/changes.md
index 7c88017..b22273a 100644
--- a/changes.md
+++ b/changes.md
@@ -36,6 +36,8 @@ to the userbase.
- [Missing include dir for extensions in non-default locations](https://core.tcl-lang.org/tcl/tktview/333512)
- [tcl::tm::path doesn't handle tilde expand](https://core.tcl-lang.org/tcl/tktview/b87673)
- [lseq numeric overflow](https://core.tcl-lang.org/tcl/tktview/0ee626)
+ - ["return": broken ordering of nested -options](https://core.tcl-lang.org/tcl/tktview/ecf35c)
+ - [Euro/Tail-sign missing from cp864 encoding](https://core.tcl-lang.org/tcl/tktview/ecafd8)
# Incompatibilities
- [The ActiveCodePage element has been removed from the Windows executable manifest for tclsh](https://core.tcl-lang.org/tips/doc/trunk/tip/716.md)
diff --git a/library/encoding/cp165.enc b/library/encoding/cp165.enc
new file mode 100755
index 0000000..b796d58
--- /dev/null
+++ b/library/encoding/cp165.enc
@@ -0,0 +1,20 @@
+# Encoding file: cp165, single-byte
+S
+003F 0 1
+00
+0000000100020003000400050006000700080009000A000B000C000D000E000F
+0010001100120013001400150016001700180019001A001B001C001D001E001F
+00200021002200230024066A0026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+00B000B72219221A259225002502253C2524252C251C25342510250C25142518
+03B2221E03C600B100BD00BC224800AB00BBFEF7FEF8FEF9FEFAFEFBFEFCFE73
+00A000ADFE8200A300A4FE84FE87FE88FE8EFE8FFE95FE99060CFE9DFEA1FEA5
+0660066106620663066406650666066706680669FED1061BFEB1FEB5FEB9061F
+00A2FE80FE81FE83FE85FECAFE8BFE8DFE91FE93FE97FE9BFE9FFEA3FEA7FEA9
+FEABFEADFEAFFEB3FEB7FEBBFEBFFEC1FEC5FECBFECF00A600AC00F700D7FEC9
+0640FED3FED7FEDBFEDFFEE3FEE7FEEBFEEDFEEFFEF3FEBDFECCFECEFECDFEE1
+FE7D0651FEE5FEE9FEECFEF0FEF2FED0FED5FEF5FEF6FEDDFED9FEF125A000A0
diff --git a/library/encoding/cp864.enc b/library/encoding/cp864.enc
index dad7c20..a66396a 100644
--- a/library/encoding/cp864.enc
+++ b/library/encoding/cp864.enc
@@ -11,8 +11,8 @@ S
0060006100620063006400650066006700680069006A006B006C006D006E006F
0070007100720073007400750076007700780079007A007B007C007D007E007F
00B000B72219221A259225002502253C2524252C251C25342510250C25142518
-03B2221E03C600B100BD00BC224800AB00BBFEF7FEF800000000FEFBFEFC0000
-00A000ADFE8200A300A4FE8400000000FE8EFE8FFE95FE99060CFE9DFEA1FEA5
+03B2221E03C600B100BD00BC224800AB00BBFEF7FEF800000000FEFBFEFCFE73
+00A000ADFE8200A300A4FE84000020ACFE8EFE8FFE95FE99060CFE9DFEA1FEA5
0660066106620663066406650666066706680669FED1061BFEB1FEB5FEB9061F
00A2FE80FE81FE83FE85FECAFE8BFE8DFE91FE93FE97FE9BFE9FFEA3FEA7FEA9
FEABFEADFEAFFEB3FEB7FEBBFEBFFEC1FEC5FECBFECF00A600AC00F700D7FEC9
diff --git a/tests/encoding.test b/tests/encoding.test
index 9712073..1f6be7c 100644
--- a/tests/encoding.test
+++ b/tests/encoding.test
@@ -312,6 +312,12 @@ test encoding-12.5 {LoadTableEncoding: symbol encoding} {
append x [encoding convertto symbol g]
append x [encoding convertfrom symbol g]
} "ggγ"
+test encoding-12.7 {cp864 [ecafd8611d]} {
+ encoding convertfrom cp864 \xA7
+} €
+test encoding-12.8 {cp165 [ecafd8611d]} {
+ encoding convertfrom cp165 \xA7
+} ﺈ
test encoding-13.1 {LoadEscapeTable} {
encoding convertto iso2022 ab乎棙g
@@ -1073,7 +1079,7 @@ test encoding-28.0 {all encodings load} -body {
llength $name
}
return $count
-} -result 93
+} -result 94
runtests
diff --git a/tools/encoding/cp864.txt b/tools/encoding/cp864.txt
index 7aa055f..98b9630 100644
--- a/tools/encoding/cp864.txt
+++ b/tools/encoding/cp864.txt
@@ -174,7 +174,7 @@
0x9c #UNDEFINED
0x9d 0xfefb #ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
0x9e 0xfefc #ARABIC LIGATURE LAM WITH ALEF FINAL FORM
-0x9f #UNDEFINED
+0x9f 0xfe73 #ARABIC TAIL FRAGMENT
0xa0 0x00a0 #NON-BREAKING SPACE
0xa1 0x00ad #SOFT HYPHEN
0xa2 0xfe82 #ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
@@ -182,7 +182,7 @@
0xa4 0x00a4 #CURRENCY SIGN
0xa5 0xfe84 #ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
0xa6 #UNDEFINED
-0xa7 #UNDEFINED
+0xa7 0x20ac #EURO SIGN
0xa8 0xfe8e #ARABIC LETTER ALEF FINAL FORM
0xa9 0xfe8f #ARABIC LETTER BEH ISOLATED FORM
0xaa 0xfe95 #ARABIC LETTER TEH ISOLATED FORM