* bug#36288: 27.0.50; Cannot use menu-set-font @ 2019-06-19 7:48 Robert Pluim 2019-06-20 2:54 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 11+ messages in thread From: Robert Pluim @ 2019-06-19 7:48 UTC (permalink / raw) To: 36288 emacs -Q M-x menu-set-font select Ubuntu Mono Regular => "set-face-attribute: Font not available: #<font-spec xft nil Ubuntu\ Mono nil nil normal normal nil 10.0 nil nil nil ((:name . "Ubuntu Mono"))>" I can select Ubuntu Mono using M-x customize-face. Why does menu-set-font try to use an xft spec? (frame-parameter nil 'font-backend) => (xfthb x) In GNU Emacs 27.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version 3.22.30) of 2019-06-19 Repository revision: 50c5d5621cb5e6d7c86829ac4b776d81e47b2189 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.11804000 System Description: Ubuntu 18.04.2 LTS Configured features: XPM JPEG TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS PDUMPER LCMS2 GMP ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-19 7:48 bug#36288: 27.0.50; Cannot use menu-set-font Robert Pluim @ 2019-06-20 2:54 ` YAMAMOTO Mitsuharu 2019-06-20 7:51 ` Robert Pluim 2019-06-23 6:34 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 11+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-06-20 2:54 UTC (permalink / raw) To: Robert Pluim; +Cc: 36288 On Wed, 19 Jun 2019 16:48:04 +0900, Robert Pluim wrote: > > emacs -Q > M-x menu-set-font > select Ubuntu Mono Regular => > > "set-face-attribute: Font not available: #<font-spec xft nil Ubuntu\ Mono nil nil normal normal nil 10.0 nil nil nil ((:name . "Ubuntu Mono"))>" > > I can select Ubuntu Mono using M-x customize-face. Why does > menu-set-font try to use an xft spec? > > (frame-parameter nil 'font-backend) => > (xfthb x) Maybe better to use the first entry of the font-backend frame parameter rather than hardcoded one? YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp diff --git a/src/gtkutil.c b/src/gtkutil.c index dccee159254..de4b25f7794 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c @@ -2281,19 +2281,16 @@ xg_get_font (struct frame *f, const char *default_name) gint size = pango_font_description_get_size (desc); PangoWeight weight = pango_font_description_get_weight (desc); PangoStyle style = pango_font_description_get_style (desc); + Lisp_Object frame, font_type_wanted; -#ifdef USE_CAIRO -#define FONT_TYPE_WANTED (Qftcr) -#else -#define FONT_TYPE_WANTED (Qxft) -#endif + XSETFRAME (frame, f); + font_type_wanted = XCAR (Fframe_parameter (frame, Qfont_backend)); font = CALLN (Ffont_spec, QCname, build_string (name), QCsize, make_float (pango_units_to_double (size)), QCweight, XG_WEIGHT_TO_SYMBOL (weight), QCslant, XG_STYLE_TO_SYMBOL (style), - QCtype, - FONT_TYPE_WANTED); + QCtype, font_type_wanted); pango_font_description_free (desc); dupstring (&x_last_font_name, name); ^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 2:54 ` YAMAMOTO Mitsuharu @ 2019-06-20 7:51 ` Robert Pluim 2019-06-20 8:32 ` Robert Pluim 2019-06-23 6:34 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 11+ messages in thread From: Robert Pluim @ 2019-06-20 7:51 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: 36288 >>>>> On Thu, 20 Jun 2019 11:54:21 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> Maybe better to use the first entry of the font-backend frame >> parameter rather than hardcoded one? Thanks, that works for me. Iʼve not tested what happens if I try to use an X font rather than an xft one, but I think that usage will eventually go away anyway. Robert ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 7:51 ` Robert Pluim @ 2019-06-20 8:32 ` Robert Pluim 2019-06-20 12:56 ` Eli Zaretskii 0 siblings, 1 reply; 11+ messages in thread From: Robert Pluim @ 2019-06-20 8:32 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: 36288 >>>>> On Thu, 20 Jun 2019 09:51:19 +0200, Robert Pluim <rpluim@gmail.com> said: >>>>> On Thu, 20 Jun 2019 11:54:21 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >>> Maybe better to use the first entry of the font-backend frame >>> parameter rather than hardcoded one? Robert> Thanks, that works for me. Iʼve not tested what happens if I try to Robert> use an X font rather than an xft one, but I think that usage will Robert> eventually go away anyway. I tried a different variant: (add-to-list 'default-frame-alist '(font-backend x xfthb)) then M-x menu-set-font which gives (with your patch): set-face-attribute: Font not available: #<font-spec x nil Ubuntu\ Mono nil nil normal normal nil 1.0 nil nil nil ((:name . "Ubuntu Mono"))> Robert ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 8:32 ` Robert Pluim @ 2019-06-20 12:56 ` Eli Zaretskii 2019-06-20 14:19 ` Robert Pluim 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2019-06-20 12:56 UTC (permalink / raw) To: Robert Pluim; +Cc: 36288 > From: Robert Pluim <rpluim@gmail.com> > Date: Thu, 20 Jun 2019 10:32:34 +0200 > Cc: 36288@debbugs.gnu.org > > I tried a different variant: > > (add-to-list 'default-frame-alist '(font-backend x xfthb)) Where did you put this? In the init file? or just evaluated it after Emacs started? In the latter case, it will be in effect only for frames created henceforth. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 12:56 ` Eli Zaretskii @ 2019-06-20 14:19 ` Robert Pluim 2019-06-20 16:21 ` Eli Zaretskii 0 siblings, 1 reply; 11+ messages in thread From: Robert Pluim @ 2019-06-20 14:19 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 36288 >>>>> On Thu, 20 Jun 2019 15:56:52 +0300, Eli Zaretskii <eliz@gnu.org> said: >> From: Robert Pluim <rpluim@gmail.com> >> Date: Thu, 20 Jun 2019 10:32:34 +0200 >> Cc: 36288@debbugs.gnu.org >> >> I tried a different variant: >> >> (add-to-list 'default-frame-alist '(font-backend x xfthb)) Eli> Where did you put this? In the init file? or just evaluated it after Eli> Emacs started? In the latter case, it will be in effect only for Eli> frames created henceforth. I evaluated it, and then created a new frame, and ran menu-set-font from there. Although I just retested with it in init.el and the result is the same. Robert ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 14:19 ` Robert Pluim @ 2019-06-20 16:21 ` Eli Zaretskii 2019-06-21 13:52 ` Robert Pluim 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2019-06-20 16:21 UTC (permalink / raw) To: Robert Pluim; +Cc: 36288 > From: Robert Pluim <rpluim@gmail.com> > Cc: 36288@debbugs.gnu.org > Date: Thu, 20 Jun 2019 16:19:05 +0200 > > >>>>> On Thu, 20 Jun 2019 15:56:52 +0300, Eli Zaretskii <eliz@gnu.org> said: > > >> From: Robert Pluim <rpluim@gmail.com> > >> Date: Thu, 20 Jun 2019 10:32:34 +0200 > >> Cc: 36288@debbugs.gnu.org > >> > >> I tried a different variant: > >> > >> (add-to-list 'default-frame-alist '(font-backend x xfthb)) > > Eli> Where did you put this? In the init file? or just evaluated it after > Eli> Emacs started? In the latter case, it will be in effect only for > Eli> frames created henceforth. > > I evaluated it, and then created a new frame, and ran menu-set-font > from there. Although I just retested with it in init.el and the result > is the same. This seems to be X- (and maybe also GTK-) specific. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 16:21 ` Eli Zaretskii @ 2019-06-21 13:52 ` Robert Pluim 0 siblings, 0 replies; 11+ messages in thread From: Robert Pluim @ 2019-06-21 13:52 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 36288 >>>>> On Thu, 20 Jun 2019 19:21:05 +0300, Eli Zaretskii <eliz@gnu.org> said: >> From: Robert Pluim <rpluim@gmail.com> >> Cc: 36288@debbugs.gnu.org >> Date: Thu, 20 Jun 2019 16:19:05 +0200 >> >> >>>>> On Thu, 20 Jun 2019 15:56:52 +0300, Eli Zaretskii <eliz@gnu.org> said: >> >> >> From: Robert Pluim <rpluim@gmail.com> >> >> Date: Thu, 20 Jun 2019 10:32:34 +0200 >> >> Cc: 36288@debbugs.gnu.org >> >> >> >> I tried a different variant: >> >> >> >> (add-to-list 'default-frame-alist '(font-backend x xfthb)) >> Eli> Where did you put this? In the init file? or just evaluated it after Eli> Emacs started? In the latter case, it will be in effect only for Eli> frames created henceforth. >> >> I evaluated it, and then created a new frame, and ran menu-set-font >> from there. Although I just retested with it in init.el and the result >> is the same. Eli> This seems to be X- (and maybe also GTK-) specific. And it doesnʼt happen in emacs-26, which makes me strongly suspect something to do with either the HarfBuzz or Cairo changes. Robert ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-20 2:54 ` YAMAMOTO Mitsuharu 2019-06-20 7:51 ` Robert Pluim @ 2019-06-23 6:34 ` YAMAMOTO Mitsuharu 2019-06-23 13:50 ` Robert Pluim 1 sibling, 1 reply; 11+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-06-23 6:34 UTC (permalink / raw) To: Robert Pluim; +Cc: 36288 On Thu, 20 Jun 2019 11:54:21 +0900, YAMAMOTO Mitsuharu wrote: > > On Wed, 19 Jun 2019 16:48:04 +0900, > Robert Pluim wrote: > > > > emacs -Q > > M-x menu-set-font > > select Ubuntu Mono Regular => > > > > "set-face-attribute: Font not available: #<font-spec xft nil Ubuntu\ Mono nil nil normal normal nil 10.0 nil nil nil ((:name . "Ubuntu Mono"))>" > > > > I can select Ubuntu Mono using M-x customize-face. Why does > > menu-set-font try to use an xft spec? > > > > (frame-parameter nil 'font-backend) => > > (xfthb x) > > Maybe better to use the first entry of the font-backend frame > parameter rather than hardcoded one? On second thought, it seems to be better to leave the font type unspecified. Hard-coding the wanted font type was introduced as a "fix" for Bug#3228, but I suspect its reasoning is no longer valid (I couldn't find fonts.alias in the Type1 font directory in CentOS or Linux Mint). Also, probably we should set the :family font property instead of :name. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp diff --git a/src/gtkutil.c b/src/gtkutil.c index dccee159254..1d15aec253e 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c @@ -2277,26 +2277,19 @@ xg_get_font (struct frame *f, const char *default_name) if (desc) { - const char *name = pango_font_description_get_family (desc); + const char *family = pango_font_description_get_family (desc); gint size = pango_font_description_get_size (desc); PangoWeight weight = pango_font_description_get_weight (desc); PangoStyle style = pango_font_description_get_style (desc); -#ifdef USE_CAIRO -#define FONT_TYPE_WANTED (Qftcr) -#else -#define FONT_TYPE_WANTED (Qxft) -#endif font = CALLN (Ffont_spec, - QCname, build_string (name), + QCfamily, build_string (family), QCsize, make_float (pango_units_to_double (size)), QCweight, XG_WEIGHT_TO_SYMBOL (weight), - QCslant, XG_STYLE_TO_SYMBOL (style), - QCtype, - FONT_TYPE_WANTED); + QCslant, XG_STYLE_TO_SYMBOL (style)); pango_font_description_free (desc); - dupstring (&x_last_font_name, name); + dupstring (&x_last_font_name, family); } #else /* Use old font selector, which just returns the font name. */ ^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-23 6:34 ` YAMAMOTO Mitsuharu @ 2019-06-23 13:50 ` Robert Pluim 2019-06-30 7:02 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 11+ messages in thread From: Robert Pluim @ 2019-06-23 13:50 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: 36288 >>>>> On Sun, 23 Jun 2019 15:34:23 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> On second thought, it seems to be better to leave the font type >> unspecified. Hard-coding the wanted font type was introduced as a >> "fix" for Bug#3228, but I suspect its reasoning is no longer valid (I >> couldn't find fonts.alias in the Type1 font directory in CentOS or >> Linux Mint). Also, probably we should set the :family font property >> instead of :name. Thanks, that fixed things for me, with font-backend '(xfthb x) and '(x xfthb) Iʼve not looked at Bug#3228, but at least on my Ubuntu machine I have: /usr/share/fonts/X11/Type1/fonts.alias /usr/share/fonts/X11/misc/fonts.alias but given the prevalence of opentype and truetype fonts, Iʼm not sure that thereʼs anything to worry about. Robert ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#36288: 27.0.50; Cannot use menu-set-font 2019-06-23 13:50 ` Robert Pluim @ 2019-06-30 7:02 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 11+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-06-30 7:02 UTC (permalink / raw) To: Robert Pluim; +Cc: 36288-done On Sun, 23 Jun 2019 22:50:11 +0900, Robert Pluim wrote: > > >>>>> On Sun, 23 Jun 2019 15:34:23 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > >> On second thought, it seems to be better to leave the font type > >> unspecified. Hard-coding the wanted font type was introduced as a > >> "fix" for Bug#3228, but I suspect its reasoning is no longer valid (I > >> couldn't find fonts.alias in the Type1 font directory in CentOS or > >> Linux Mint). Also, probably we should set the :family font property > >> instead of :name. > > Thanks, that fixed things for me, with font-backend '(xfthb x) and '(x xfthb) > > Iʼve not looked at Bug#3228, but at least on my Ubuntu machine I have: > > /usr/share/fonts/X11/Type1/fonts.alias > /usr/share/fonts/X11/misc/fonts.alias > > but given the prevalence of opentype and truetype fonts, Iʼm not sure > that thereʼs anything to worry about. Ah, the package gsfonts-X11 seems to provide fonts.alias for URW Type1 fonts. Anyway, I think the behavior originally reported as Bug#3228 is actually consistent in the sense that "% emacs -fn courier-12" also displays the text in "ugly" font in OP's environment. Also, x-select-font is a function for a generic font selection dialog, not specific to menu-select-font. So its result should not include font type property only for menu-select-font. I've pushed the patch to master as e2d8c1e8bcf. Closing the bug. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2019-06-30 7:02 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-06-19 7:48 bug#36288: 27.0.50; Cannot use menu-set-font Robert Pluim 2019-06-20 2:54 ` YAMAMOTO Mitsuharu 2019-06-20 7:51 ` Robert Pluim 2019-06-20 8:32 ` Robert Pluim 2019-06-20 12:56 ` Eli Zaretskii 2019-06-20 14:19 ` Robert Pluim 2019-06-20 16:21 ` Eli Zaretskii 2019-06-21 13:52 ` Robert Pluim 2019-06-23 6:34 ` YAMAMOTO Mitsuharu 2019-06-23 13:50 ` Robert Pluim 2019-06-30 7:02 ` YAMAMOTO Mitsuharu
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).