Closed cpitclaudel closed 1 year ago
Well, the previous fix doesn't set height to 0, does it? The font object created from frame font string would have no height, which is different. Perhaps propertize needs explicit height these days or there's better way to get the frame font.
Either way, I'm on holiday without computer until end of June. I can take a look then.
Thanks for the reply!
Well, the previous fix doesn't set height to 0, does it?
I think it does, indirectly, due to the added find-font
:
ELISP> (font-face-attributes (font-spec :name (frame-parameter nil 'font)))
(:family "Ubuntu Mono" :height 181 :weight normal :slant normal :width normal)
ELISP> (font-face-attributes (find-font (font-spec :name (frame-parameter nil 'font))))
(:family "Ubuntu Mono" :height 0 :weight normal :slant normal :width normal)
This will be a busy week, it seems, so I will not look at it straight away.
Thanks for the update!
Same problem for me. But it appears only in Emacs 29 pretest (currently 29.0.92). It works well with Emacs 28 and I didn't test with master branch (future Emacs 30)
It also does not reproduce on my Ubuntu with emacs 28, but does reproduce on pretest.
It appears its find-font that breaks it somehow. Looking at it now, frame's font parameter corresponds to the default face. The test case works then if you just remove :font as a parameter altogether, but since the function takes it from a specific frame and different frames may have different defaults, that probably won't work under all circumstances.
However, you can just read the font object directly from the frame's default face, without find-font.
The fix in https://github.com/pitkali/pos-tip/issues/10 breaks causes
pos-tip
s to be displayed with height 0 in Emacs 28.Here's a repro:
This is what I see:
This seems to be related to the fact that Emacs now respects the
:height 0
parameter that pos-tip passes it: