Subject: Re: bug#25641: 25.1; insert-char function inconsistency

From: Eli Zaretskii <[email-masked]>
Date: Wed, 08 Feb 2017 19:54:12 +0200

> From: Stephen Berman <[email-masked]>
> Date: Wed, 08 Feb 2017 14:15:00 +0100
> Cc: [email-masked]
> 
> I agree.  The following patch does that (the special-casing here has a
> precedent in ucs-names in mule-cmds.el, from which the comment is
> copied):
> 
> diff --git a/lisp/descr-text.el b/lisp/descr-text.el
> index 3971dbb..a1efb67 100644
> --- a/lisp/descr-text.el
> +++ b/lisp/descr-text.el
> @@ -617,7 +617,14 @@ describe-char
>  				 "input method")
>  			 (list
>                            (let ((name
> -                                 (or (get-char-code-property char 'name)
> +                                 (or (when (= char 7)
> +				       ;; Special case for "BELL" which is
> +				       ;; apparently the only char which
> +				       ;; doesn't have a new name and whose
> +				       ;; old-name is shadowed by a newer char
> +				       ;; with that name.
> +				       (car (rassoc char ucs-names)))
> +				     (get-char-code-property char 'name)
>                                       (get-char-code-property char 'old-name))))
>                              (if (and name (assoc-string name (ucs-names)))
>                                  (format
> 
> Eli, what do you say?

I don't mind, but ucs-names might be nil if the function by the same
name was not yet called, so I think we should call it first.

Also, I think it would be good to mention this bug report in the
comment.

Thanks.