GNU bug report logs -
#19903
24.4; Emacs fails to save enriched buffer with error message `wrong-type-argument symbolp "bold"'
Previous Next
Reported by: Jorge <jorge13515 <at> gmail.com>
Date: Thu, 19 Feb 2015 17:53:01 UTC
Severity: normal
Found in version 24.4
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #19 received at 19903 <at> debbugs.gnu.org (full text, mbox):
>>>>> Jorge <jorge13515 <at> gmail.com> writes:
[…]
> However, it seems to me that the current behavior is not
> user-friendly. (facemenu-set-face "bold" 1 2) _does_ make the text
> bold, without any warning – which makes it appear that the call was
> successful – but then we get an error when we try to save the buffer.
The facemenu-set-face command is essentially a call to
facemenu-add-new-face, followed by a call to facemenu-add-face.
Curiously enough, the former implements explicit support for
string arguments:
$ git archive --format=tar c4e2be4587ec -- lisp/facemenu.el \
| tar -xO | nl -ba ; # 2015-02-16 07:22:46 +0000
…
785 (defun facemenu-add-new-face (face)
786 "Add FACE (a face) to the Face menu if `facemenu-listed-faces' says so.
787 This is called whenever you create a new face, and at other times."
788 (let* (name
789 symbol
…
792 function menu-val)
793 (if (symbolp face)
794 (setq name (symbol-name face)
795 symbol face)
796 (setq name face
797 symbol (intern name)))
> Generally, it is best for errors to be detected as close to their
> source as possible. What do you think?
If string faces are rendered just the same as symbol ones,
I’d rather wonder if either facemenu-add-face should silently
‘intern’ all the strings it gets before use, /or/ face-attribute
should do that. (Or perhaps both.)
--
FSF associate member #7257 np. Transformation — David Modica B6A0 230E 334A
This bug report was last modified 10 years and 86 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.