Mercurial > hg > xemacs-beta
changeset 4073:c098c0d9125f
[xemacs-hg @ 2007-07-23 14:19:39 by aidan]
Interpret @cyrillic as a locale modifier, pick up coding-sys aliases.
author | aidan |
---|---|
date | Mon, 23 Jul 2007 14:20:29 +0000 |
parents | aa28d959af41 |
children | 61b662e30ea9 |
files | lisp/ChangeLog lisp/mule/general-late.el lisp/mule/mule-cmds.el src/ChangeLog src/text.c |
diffstat | 5 files changed, 26 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sun Jul 22 22:04:14 2007 +0000 +++ b/lisp/ChangeLog Mon Jul 23 14:20:29 2007 +0000 @@ -1,3 +1,12 @@ +2007-07-23 Aidan Kehoe <kehoea@parhasard.net> + + * mule/general-late.el (posix-charset-to-coding-system-hash): + Pick up coding system aliases as well as their canonical names + when initialising this hash. + * mule/mule-cmds.el (parse-posix-locale-string): + Interpret @cyrillic to mean that the coding system for a language + environment is Windows-1251. + 2007-07-21 Aidan Kehoe <kehoea@parhasard.net> * mule/chinese.el:
--- a/lisp/mule/general-late.el Sun Jul 22 22:04:14 2007 +0000 +++ b/lisp/mule/general-late.el Mon Jul 23 14:20:29 2007 +0000 @@ -31,13 +31,16 @@ (setq posix-charset-to-coding-system-hash (eval-when-compile (let ((res (make-hash-table :test 'equal))) - (dolist (coding-system (coding-system-list) res) + ;; We want both normal and internal coding systems in order + ;; to pick up coding system aliases. + (dolist (coding-system (coding-system-list 'both-normal-and-internal) res) (setq coding-system - (symbol-name (coding-system-name coding-system))) - (unless (string-match #r"\(-unix\|-mac\|-dos\)$" coding-system) + (symbol-name coding-system)) + (unless (or (string-match #r"\(-unix\|-mac\|-dos\)$" coding-system) + (string-match #r"^\(internal\|mswindows\)" coding-system)) (puthash (replace-in-string (downcase coding-system) "[^a-z0-9]" "") - (intern coding-system) res))))) + (coding-system-name (intern coding-system)) res))))) ;; In a thoughtless act of cultural imperialism, move English, German ;; and Japanese to the front of language-info-alist to make start-up a
--- a/lisp/mule/mule-cmds.el Sun Jul 22 22:04:14 2007 +0000 +++ b/lisp/mule/mule-cmds.el Mon Jul 23 14:20:29 2007 +0000 @@ -1053,6 +1053,9 @@ ;; where the @euro modifier doesn't mean ISO-8859-15 in the 956 ;; I have. (setq charset "iso-8859-15")) + (when (and modifiers (equal modifiers "cyrillic") (null charset)) + ;; Feedback wanted! + (setq charset "windows-1251")) (values language region charset modifiers)) ((and (string-match "^[a-z0-9]+$" locale-string) (assoc-ignore-case locale-string language-info-alist))
--- a/src/ChangeLog Sun Jul 22 22:04:14 2007 +0000 +++ b/src/ChangeLog Mon Jul 23 14:20:29 2007 +0000 @@ -1,3 +1,9 @@ +2007-07-23 Aidan Kehoe <kehoea@parhasard.net> + + * text.c: + Backslash a parenthesis at the start of a line, for the sake of + our font lock engine. + 2007-07-21 Aidan Kehoe <kehoea@parhasard.net> * elhash.c (struct Lisp_Hash_Table):
--- a/src/text.c Sun Jul 22 22:04:14 2007 +0000 +++ b/src/text.c Mon Jul 23 14:20:29 2007 +0000 @@ -245,7 +245,7 @@ @item The Eistring API -(This API is currently under-used) When doing simple things with +\(This API is currently under-used) When doing simple things with internal text, the basic internal-format API's are enough. But to do things like delete or replace a substring, concatenate various strings, etc. is difficult to do cleanly because of the allocation issues.