comparison lisp/international/mule-cmds.el @ 55047:428f891f9e31

Use assoc-string, not assoc-ignore-case.
author Richard M. Stallman <rms@gnu.org>
date Wed, 21 Apr 2004 19:16:15 +0000
parents 96c240b674ee
children 9629ef26c137
comparison
equal deleted inserted replaced
55046:59e11b0793cf 55047:428f891f9e31
1052 KEY is a symbol denoting the kind of information. 1052 KEY is a symbol denoting the kind of information.
1053 For a list of useful values for KEY and their meanings, 1053 For a list of useful values for KEY and their meanings,
1054 see `language-info-alist'." 1054 see `language-info-alist'."
1055 (if (symbolp lang-env) 1055 (if (symbolp lang-env)
1056 (setq lang-env (symbol-name lang-env))) 1056 (setq lang-env (symbol-name lang-env)))
1057 (let ((lang-slot (assoc-ignore-case lang-env language-info-alist))) 1057 (let ((lang-slot (assoc-string lang-env language-info-alist t)))
1058 (if lang-slot 1058 (if lang-slot
1059 (cdr (assq key (cdr lang-slot)))))) 1059 (cdr (assq key (cdr lang-slot))))))
1060 1060
1061 (defun set-language-info (lang-env key info) 1061 (defun set-language-info (lang-env key info)
1062 "Modify part of the definition of language environment LANG-ENV. 1062 "Modify part of the definition of language environment LANG-ENV.
1595 This variable should be set only with \\[customize], which is equivalent 1595 This variable should be set only with \\[customize], which is equivalent
1596 to using the function `set-language-environment'." 1596 to using the function `set-language-environment'."
1597 :link '(custom-manual "(emacs)Language Environments") 1597 :link '(custom-manual "(emacs)Language Environments")
1598 :set (lambda (symbol value) (set-language-environment value)) 1598 :set (lambda (symbol value) (set-language-environment value))
1599 :get (lambda (x) 1599 :get (lambda (x)
1600 (or (car-safe (assoc-ignore-case 1600 (or (car-safe (assoc-string
1601 (if (symbolp current-language-environment) 1601 (if (symbolp current-language-environment)
1602 (symbol-name current-language-environment) 1602 (symbol-name current-language-environment)
1603 current-language-environment) 1603 current-language-environment)
1604 language-info-alist)) 1604 language-info-alist t))
1605 "English")) 1605 "English"))
1606 ;; custom type will be updated with `set-language-info'. 1606 ;; custom type will be updated with `set-language-info'.
1607 :type (if language-info-alist 1607 :type (if language-info-alist
1608 (cons 'choice (mapcar 1608 (cons 'choice (mapcar
1609 (lambda (lang) 1609 (lambda (lang)
1747 "Set language environment (default, English): "))) 1747 "Set language environment (default, English): ")))
1748 (if language-name 1748 (if language-name
1749 (if (symbolp language-name) 1749 (if (symbolp language-name)
1750 (setq language-name (symbol-name language-name))) 1750 (setq language-name (symbol-name language-name)))
1751 (setq language-name "English")) 1751 (setq language-name "English"))
1752 (let ((slot (assoc-ignore-case language-name language-info-alist))) 1752 (let ((slot (assoc-string language-name language-info-alist t)))
1753 (unless slot 1753 (unless slot
1754 (error "Language environment not defined: %S" language-name)) 1754 (error "Language environment not defined: %S" language-name))
1755 (setq language-name (car slot))) 1755 (setq language-name (car slot)))
1756 (if current-language-environment 1756 (if current-language-environment
1757 (let ((func (get-language-info current-language-environment 1757 (let ((func (get-language-info current-language-environment
2280 first by case-insensitive lookup in `locale-charset-alist'. Then 2280 first by case-insensitive lookup in `locale-charset-alist'. Then
2281 matches are looked for in the coding system list, treating case and 2281 matches are looked for in the coding system list, treating case and
2282 the characters `-' and `_' as insignificant. The coding system base 2282 the characters `-' and `_' as insignificant. The coding system base
2283 is returned. Thus, for instance, if charset \"ISO8859-2\", 2283 is returned. Thus, for instance, if charset \"ISO8859-2\",
2284 `iso-latin-2' is returned." 2284 `iso-latin-2' is returned."
2285 (or (car (assoc-ignore-case charset locale-charset-alist)) 2285 (or (car (assoc-string charset locale-charset-alist t))
2286 (let ((cs coding-system-alist) 2286 (let ((cs coding-system-alist)
2287 c) 2287 c)
2288 (while (and (not c) cs) 2288 (while (and (not c) cs)
2289 (if (locale-charset-match-p charset (caar cs)) 2289 (if (locale-charset-match-p charset (caar cs))
2290 (setq c (intern (caar cs))) 2290 (setq c (intern (caar cs)))