APPROVE COMMIT
NOTE: This patch has been committed.
Ar an t-ochtú lá de mí Eanair, scríobh Alexander Beck-Ratzka i
comp.emacs.xemacs:
> I'm running xemacs-21.5.21.20050721-4 (SuSE 10.0), and suddenly I've
> problems with german umlauts. The umlaut for a should be presented by "a,
> whenever I type umlaut a on my keyboard (for guys who have the appropiate
> code page here the letter: ä). If LaTeX find the "a combination, it will
> print the correct umlaut a.
>
> To get this, I've first defined:
>
> (fset 'ae "\C-q42a")
!!!
This is a very non-standard and hackish way to do what you want. An
equivalent and less hackish way to do the say thing is:
(defun ae ()
"Insert \"a into the current buffer. "
(interactive)
(insert "\"a"))
And a further advantage of this is that it doesn’t trigger the bug that
you’ve just posted about.
> and later
>
> (local-set-key 'adiaeresis 'ae)
>
> in my init.el xemacs config file.
>
> However, If i type the umlaut a key, I get only the " (quote) character, and
> The following error is displayed in the mode line:
>
> Wrong type argument: command-event-p, ?a unread-command-event
>
> The error never occurs before, and I haven't changed my config file.
>
> What is wrong?
You’ve encountered a bug in our beta version, which is one of those things
that happens when you volunteer to use a beta version. I’m committing a fix,
but you won’t see this fix in your SuSE XEmacs package; replace your fset
with the above function instead and you’ll be fine.
Best regards,
- Aidan
lisp/ChangeLog addition:
2006-01-08 Aidan Kehoe <kehoea(a)parhasard.net>
* cmdloop.el (read-quoted-char):
Eliminate some char/event confusion introduced by a GNU Emacs
sync.
XEmacs Trunk source patch:
Diff command: cvs -q diff -u
Files affected: lisp/cmdloop.el
Index: lisp/cmdloop.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/cmdloop.el,v
retrieving revision 1.18
diff -u -u -r1.18 cmdloop.el
--- lisp/cmdloop.el 2005/06/26 18:04:49 1.18
+++ lisp/cmdloop.el 2006/01/08 19:42:32
@@ -579,7 +579,8 @@
(setq char (aref translated 0)))))
(cond ((null char))
((not (characterp char))
- (setq unread-command-events (list char)
+ ;; XEmacs change; event instead of char.
+ (setq unread-command-events (list event)
done t))
; ((/= (logand char ?\M-\^@) 0)
; ;; Turn a meta-character into a character with the 0200 bit set.
@@ -598,7 +599,8 @@
((and (not first) (eq char ?\C-m))
(setq done t))
((not first)
- (setq unread-command-events (list char)
+ ;; XEmacs change; event instead of char.
+ (setq unread-command-events (list event)
done t))
(t (setq code (char-to-int char)
done t)))
--
I AM IN JAIL AND ALLOWED SEND ONLY ONE CABLE SINCE WAS ARRESTED WHILE
MEASURING FIFTEEN FOOT WALL OUTSIDE PALACE AND HAVE JUST FINISHED COUNTING
THIRTY EIGHT THOUSAND FIVE HUNDERED TWENTY TWO NAMES WHOS WHO IN MIDEAST.