summaryrefslogtreecommitdiff
path: root/lisp/international/mule.el
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2007-04-04 15:34:59 +0000
committerChong Yidong <cyd@stupidchicken.com>2007-04-04 15:34:59 +0000
commitbd72e34f5667f64131524069613349839460c9fd (patch)
tree0184a4d74a855d1a5c4f680e19744cc4b2b8e8a1 /lisp/international/mule.el
parent6a978be38dbc0d43ce73a8f8431feda7bc7e2cd1 (diff)
downloademacs-bd72e34f5667f64131524069613349839460c9fd.tar.gz
(ascii-case-table): New var.
Diffstat (limited to 'lisp/international/mule.el')
-rw-r--r--lisp/international/mule.el14
1 files changed, 14 insertions, 0 deletions
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index 52bf6229b97..bcf6827c7a9 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -392,6 +392,20 @@ code-point in CCS. Currently not supported and just ignored."
char))))))))
+;; Save the ASCII case table in case we need it later. Some locales
+;; (such as Turkish) modify the case behavior of ASCII characters,
+;; which can interfere with networking code that uses ASCII strings.
+
+(defvar ascii-case-table
+ ;; Code copied from copy-case-table to avoid requiring case-table.el
+ (let ((tbl (copy-sequence (standard-case-table)))
+ (up (char-table-extra-slot (standard-case-table) 0)))
+ (if up (set-char-table-extra-slot tbl 0 (copy-sequence up)))
+ (set-char-table-extra-slot tbl 1 nil)
+ (set-char-table-extra-slot tbl 2 nil)
+ tbl)
+ "Case table for the ASCII character set.")
+
;; Coding system stuff
;; Coding system is a symbol that has the property `coding-system'.