<TheAnachron>
novokane not sure if you wanna know, but the latest changes made it worse, it always flickers here now. I figured out that is only the case when I use both "center" and "right" aligned items
<TheAnachron>
s/novokane/novakane/
<novakane>
TheAnachron: the "Render only in response to frame callbacks" commit?
<TheAnachron>
yeah, exactly. I always pull latest from that branch
<novakane>
damn I really can't see why, I can't reproduce whatever I tried
<novakane>
now with the buffer pool and the frames callbacks implementationI don't think the problem comes from this part
<TheAnachron>
Can you maybe install "remixicon" and then try to pipe my status text into zelbar?
<novakane>
is it multiple scripts that you write as <name>: in your text, e.g. "status-wrapper:"?
<novakane>
or is it not in bash?
<TheAnachron>
Yes, it's around 5 scripts for handling the bar alone. All in posix shell (dash)
<TheAnachron>
the issue also happens when I only use a single script to launch the bar. It seems to be caused by the input
<TheAnachron>
so if I want to create a debug build, I need to write my own do_build :P
<novakane>
just clone and build it from source for testing purpose no?
<TheAnachron>
Yeah, I use voids build system for that which already has a build-style for zig builds, but that runs it on release by default. Dont worry, it's not a big deal, just not for now. I believe I am on the right track.
<TheAnachron>
Basically my status-display sources another script and then runs awk on my status-data-file.
<novakane>
something I saw in the debug log while sending a lot of data quickly is that it reads the STDIN with multiple newline in it
<novakane>
not sure how I can stop a the first newline with os.read()
<TheAnachron>
I only have one newline, made sure of that, but thanks for that hint.
<plumeus>
oh yeah, novakane, I was just trying zelbar and I was wondering if there's a simple way to show the active tags on River.
<plumeus>
oh, so I can use the output of that command to generate something, I guess
<novakane>
yes there is only one newline, but it reads it multiple time in one call if it changes too fast, the parser stop at the first one though
<novakane>
plumeus: I started writing something to have an easy way to do it but haven't make it works yet. I guess you could parse something like ristate though
<plumeus>
Okay, I want to say your program is quite cool but I had issues compiling on NixOS as the README didn't state all the dependencies required to build
<plumeus>
and the trace I get from lacking wayland and wayland-protocols is quite annoying to read.
<plumeus>
and pkg-config
<plumeus>
The error for lacking pixman was quite legible as it gives a simple linking error
<plumeus>
or maybe those are considered zig-wayland deps and not Zelbar's
<TheAnachron>
novakane you know what? I replaced the "printf"s in my status-display with bar="${bar}$(printf)" and print it once at the end
<TheAnachron>
and I have no more flickers!
<TheAnachron>
So it seems like it's some timing issue after all. (even though there is no newline!)
<novakane>
plumeus: yes I kinda considered as wayland deps, but I can add it
<novakane>
TheAnachron: ah nice! yes I'm pretty sure that something with poll() and reading the STDIN
<TheAnachron>
I may eventually go back to check if I can set up an easy way to replicate it, but my bar finally works without flickering and I am very grateful for that.
<TheAnachron>
ohhh. I get it now. between the printfs I read the file again and that causes the delay and even though I dont send newline it will probably still be read and depending on how fast it will cause issues