bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


From: Drew Adams
Subject: bug#119: modify-frame-parameters in Emacs 23 for fonts
Date: Fri, 28 Nov 2008 14:07:44 -0800

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://emacsbugs.donarmstrong.com/cgi-bin/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'?)
> > 
> > 
> > 
> > 
> > 
> > 
> 
> 
> 
> 
> 
> 







reply via email to

[Prev in Thread] Current Thread [Next in Thread]