-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PGTK issue: doesn't look like expected on my setup #3
Comments
I see, so it is working, just looks different. I bet it is the theme after all. How do your outline-* faces look? For the other error, for this large of a character width, you need 3 bytes! I updated the test code; please give a try. |
Also, |
The outline faces: and
also, trying the updated test code gives me a window that looks like this The theme I'm using is Nord from doom themes. |
Same issue here. Also doomed. |
Same issue for me. I tried with my vanilla Emacs (on Linux + Wayland) config with different themes but there was always that “wider background” color of the indentation marks that did not match my theme’s color. |
Huh, interesting. Yeah, thinking about it more, there is no background specified (except for the current depth highlight, if you have For me the test looks like: |
Also, everyone post their version, please. All Wayland? |
Yes, that would by due to rainbow-delimiters. When it's turned off it looks like this when I run the stipple test code. |
Version and build options:
|
I see, now I can see the "inverse text" just barely peeking through there in your image. Needless to say, this is not how a stipple is supposed to look (it was invented as a "cheap shading option" in the monochrome days). This seems to draw the inverse of overlaying a stipple. I.e. it uses the stipple as a mask and only lets through data in those regions. This is looking more to me like a display bug in whichever version you are all using; please report that with |
@jdtsmith |
OK, it seems clear that Pure GTK emacs incorrectly displays stipples. I'd suggest reporting that with |
To be honest, I think 'stipple` is kinda cool, but I don't truly care what face attributes are being used. I'd rather be in control of that instead of the package. And if stipple doesn't work, who cares, I'll use something else. I'm here because all the other indent guides packages suck and I'm hoping this one won't. That all |
There aren't a lot of choices for face attributes that draw vertical bars; who knew a >40yr old functionality for monochrome displays would be so poorly supported in various modern builds? I have an update in the works that will let you use display box-chars, which should work for terminal and stipple-misbehaving emacsen. That might work for you, keep an eye out. |
I made an attempt at reporting the bug using |
A fix announcement has been posted upstream. I've tested it and both the test expression and the indent-bars package itself. Both now look as expected. Note that the fix is on the Emacs 30 branch only, i.e. indent-bars won't work on Emacs 29 with PGTK. |
Great thanks for pushing this through. Updated the README. |
@magthe you may want to acknowledge the fix back to emacs-bugs. |
I made it! Built the latest (30) from sources and it's working... kinda indent.webmindent2.webm |
I have pushed changes that add support for drawing in terminal with a box char of your choice (e.g. |
@jdtsmith NEWS.28:
NEWS.27:
|
Am I still the only one with this issue? My CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS HARFBUZZ JPEG JSON LIBOTF LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XPM LUCID ZLIB I assume that the problem could be due to HARFBUZZ in combination with CAIRO. Any HARFBUZZ users? Besides that I am using the lightweight X11 LUCID toolkit. |
On linux, I haven't heard from anyone besides PGTK users, for whom stipples did display, but incorrectly. The only builds where I know stipples do not display at all are Win and NS ports. So I wonder how prevalent Cairo is, or if it is the culprit at all. It wouldn't be a total surprise for stipple to have been incorrectly ported to a new display system, since that very thing has happened in other ports. But I'd guess 2/3rds of indent-bars users are on linux, so not hearing from anyone else seems... strange. If it's simple to produce a build with Cairo, that would be definitive. Might also be worth taking up on emacs-devel; they resolved the PGTK stipple issue very quickly. |
Cairo is very prevalent since it sits below the gtk/pgtk displays. It is enabled by default if available, see my other comment. Also harfbuzz is recommended afaik. I really don't know what is so odd about my configuration. Have to try various settings or look into the stipple code paths. |
I agree it is mysterious, and worth looking into. |
@minad did you ever get a chance to try a build without Cairo to see if that's the culprit? Surprising if so. |
On 10/7/23 22:03, JD Smith wrote:
@minad <https://github.com/minad> did you ever get a chance to try a
build without Cairo to see if that's the culprit? Surprising if so.
Not yet.
|
@jdtsmith I compiled Emacs in a few different configurations and got the following results:
I don't know what is wrong with my Cairo, since apparently it works correctly for others. |
Thanks for the report; I've added some information to the Compatibility section of the README. Sounds like Cairo is the culprit. It doesn't totally surprise me given the PGTK issue, but I don't know much about Cairo. Worth reporting as a bug; problems were corrected quickly in the case of PGTK. |
Do you know if the aformentioned PGTK (which also relies on Cairo) fix landed in Emacs 29 or Emacs master, which will become Emacs 30? I am "still" running Emacs 29, so it could very well be that stipples will work with Cairo in Emacs 30 in other configurations too. |
It was too late for Emacs 29, so I believe it's on master. Maybe worth testing with that fix, but the misbehavior was different with PGTK (stipples showed, but incorrectly). |
This is what the defaults look like for me (zoomed in a bit):
My config:
I seem to have stipple support, but maybe it's broken?
(set-face-stipple 'default
(,(window-font-width) 1 ,(unibyte-string 1)))` gives the following errorI'm not sure what that means really.
The text was updated successfully, but these errors were encountered: