GNU bug report logs - #1560
23.0.60; Cannot use function as value of :height face attribute

Previous Next

Package: emacs;

Reported by: "Drew Adams" <drew.adams <at> oracle.com>

Date: Sat, 13 Dec 2008 18:25:04 UTC

Severity: normal

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: "Drew Adams" <drew.adams <at> oracle.com>
To: <emacs-pretest-bug <at> gnu.org>
Subject: bug#1560: 23.0.60; Cannot use function as value of :height face attribute
Date: Sat, 13 Dec 2008 10:17:23 -0800
emacs -Q
 
M-: (set-face-attribute 'default (selected-frame) :height (quote 1+))
 
gives this error: (error "Invalid face height" 1+)
 
Emacs 22 gives the same error, BTW.
 
But the Elisp manual, node Face Attributes says this:
 
`:height'
Either the font height, an integer in units of 1/10 point, a
floating point number specifying the amount by which to scale the
height of any underlying face, or a function, which is called with
the old height (from the underlying face), and should return the
new height.
 
Am I misunderstanding the doc, or should you be able to use a function
as the value of the :height attribute?
 
What's more, if you do `M-x customize-face RET default', the Value
Menu for attribute Height does not have an item for a function
value. It has only `Height in 1/10 pt' and `Scale'. That suggests, but
doesn't prove, that a function value is not allowed.
 
And grepping the Elisp sources, I see no use of a function value for
:height.
 
Beyond this bug (or my misunderstanding), can we say more about the
kind of function that would be needed? Is it supposed to treat each
kind of :height value: integer, floating-point number, and function?
The doc says the old height (passed to the function) is "from the
underlying face", so I guess this means the actual face height, not
the old value of :height. But which units are used for the actual face
height? Are they too "units of 1/10 point"?
 
 
 
In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-11-24 on LENNART-69DE564
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include
-fno-crossjumping'
 





This bug report was last modified 16 years and 203 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.