Subject: RE: bug#119: modify-frame-parameters in Emacs 23 for fonts

From: "Drew Adams" <[email-masked]>
Date: Mon, 22 Dec 2008 13:46:22 -0800

I sent this bug report update 2008-11-28. It never showed up in the bug tracker,
AFAICT. I'm guessing that bug #119 was merged with bug #1562, but this message
never showed up for either #119 or #1562. It seems that #119 is still closed and
archived, but #1562 is still open (?).

I thought that I sent a message to [email-masked] with this
body, but either I didn't or that did not reopen the bug.

reopen 119
stop

I just tried that again, using the formula that Don gave:

unarchive 119
forcemerge 119 1562
reopen 119
thanks

In any case, the bug is still open.

> From: Drew Adams Sent: Friday, November 28, 2008 2:08 PM
> To: [email-masked]
> Subject: bug#119: modify-frame-parameters in Emacs 23 for fonts
> 
> Perhaps I should have added that the detailed symptoms are 
> the same as before:
> 
> (1) `modify-frame-parameters' changes the `font' parameter behind
>     your back from the value you provide `modify-frame-parameters':
>     (modify-frame-parameters frame
>       (list (cons 'font "-outline-Lucida Console-normal-normal-\
>     normal-mono-15-*-*-*-c-*-iso8859-1")))
>  
>     The `font' frame parameter is then:
>     "-outline-Lucida Console-normal-normal-normal-mono-15-\
>     *-*-*-c-*-fontset-auto8"
>               ^^^^^^^^^^^^^
>  
>    IOW, iso8859-1 gets replaced by fontset-auto8.
> 
> (2) `x-list-fonts' returns nil when passed such a font (i.e. with
>     fontset-auto8).
> 
> 
> > From: Drew Adams Sent: Friday, November 28, 2008 1:38 PM
> > This bug seems still not to be fixed, and I cannot even find 
> > it listed in the bugs database:
> > http://debbugs.gnu.org/cgi/pkgreport.cgi?pkg=emacs.
> > 
> > What is that status of this bug? Is there some other bugs 
> > page where this appears?
> > 
> > AFAICT, this bug persists; it was not fixed by merging the 
> > font-backend. Marking it as fixed seems to have been premature.
> > 
> > Thx - Drew
> > 
> > > From: Drew Adams Sent: Thursday, August 07, 2008 10:38 AM
> > > This bug is marked fixed, but it has not been fixed.
> > > Jason marked it as fixed on 2008-05-08, with this note:
> > > 
> > >   I've marked this as fixed, since the bug reported will
> > >   be fixed when font-backend is merged.
> > >   I will not close it at this time though, as valid points
> > >   about documentation were raised.
> > > 
> > > Then, on 2008-06-12, I received a mail saying that it was
> > > closed. In any case, it is *not* fixed - I see the same
> > > thing in this recent build:
> > > 
> > > GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
> > >  of 2008-08-01 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'
> > > 
> > > There are two things that might be the problem:
> > > 
> > > (1) `modify-frame-parameters' changes the `font' parameter 
> > behind your
> > > back from the value you provide `modify-frame-parameters':
> > > 
> > > (modify-frame-parameters frame
> > >   (list (cons 'font "-outline-Lucida Console-normal-normal-\
> > > normal-mono-15-*-*-*-c-*-iso8859-1")))
> > > 
> > > The `font' frame parameter is then:
> > > 
> > > "-outline-Lucida Console-normal-normal-normal-mono-15-\
> > > *-*-*-c-*-fontset-auto8"
> > > 
> > > IOW, iso8859-1 gets replaced by fontset-auto8.
> > > 
> > > (2) `x-list-fonts' returns nil when passed such a font (i.e. with
> > > fontset-auto8).
> > > 
> > > This breaks my code. Though the frame and the font appear normal,
> > > `x-list-fonts' does not recognize such a font. My code changes the
> > > font name to use a different size (e.g. changes 15 to 14), but it
> > > checks that `x-list-fonts' recognizes the font name 
> before trying to
> > > use it. And `x-list-fonts' does not recognize the name (with
> > > "fontset-auto8") that `modify-frame-parameters' establishes 
> > behind the
> > > scene.
> > > 
> > > The font that I provide to `modify-frame-parameters' is 
> > recognized by
> > > `x-list-fonts', and it has the same appearance, but it 
> never appears
> > > as the frame parameter in this context because
> > > `modify-frame-parameters' substitutes a different name.
> > > 
> > > 
> > > Below is the pertinent part of the original bug report. The 
> > symptom is
> > > the same, but the font that `modify-frame-parameters' 
> substitutes is
> > > slightly different.
> > > 
> > > Back in April, it substituted: 
> > > "-outline-lucida console-normal-roman-normal-mono-15-\
> > > *-*-*-*-*-fontset-startup"
> > > 
> > > Now it substitutes:
> > > "-outline-Lucida Console-normal-normal-normal-mono-15-\
> > > *-*-*-c-*-fontset-auto8"
> > > 
> > > Neither is recognized by `x-list-fonts'.
> > > 
> > > --------8<---------2008-04-05 report -------------------
> > > 
> > > (frame-parameter nil 'font) ->
> > > "-*-Lucida Console-normal-r-*-*-14-*-96-96-c-*-iso8859-1"
> > > 
> > > (modify-frame-parameters
> > >  nil
> > >  (list
> > >   (cons 
> > >    'font
> > >    "-*-Lucida Console-normal-r-*-*-15-*-96-96-c-*-iso8859-1")))
> > > 
> > > (frame-parameter nil 'font) ->
> > > "-outline-lucida 
> > > console-normal-roman-normal-mono-15-*-*-*-*-*-fontset-startup"
> > > 
> > > What's that about? In Emacs 20, 21, and 22, the result is 
> > > just the font I
> > > specified.
> > > 
> > > I have code that zooms frames (font size). I change just the 
> > > point size in the
> > > font spec, using `x-decompose-font-name' and 
> > > `x-compose-font-name'. I check that
> > > the result is a legitimate font using `x-list-fonts'. If not, 
> > > I increase or
> > > decrease the increment until I find the font that works with 
> > > the closest size.
> > > 
> > > [Yes, I know there are other ways to adjust font size, but 
> > > I've found that this
> > > method is flexible for users and provides certain benefits.]
> > > 
> > > My code no longer works without change, because after one call to
> > > `modify-frame-parameters' the font is no longer something 
> > > recognized by
> > > `x-list-fonts'. I can comment out the part that iterates 
> > > until it finds a size
> > > that works (recognized by `x-list-fonts'). That works, but 
> > > I'm still curious
> > > about this. (Is there perhaps a bug in `x-list-fonts' or in
> > > `modify-frame-parameters'?)
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > 
> > 
> > 
> > 
> > 
> > 
> 
> 
> 
> 
> 
>