-
Notifications
You must be signed in to change notification settings - Fork 472
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
The < separators don't render correctly #246
Comments
See issue #94 |
@GladOSkar Thanks for the link. Fiddling with the font size didn't help, and the patch is't merged, I am not sure why that issue is closed. This is my config for reference:
Otherwise authors big thanks for the excellent piece of software! |
@ammgws Now that you mentioned it, yes, I have that problem too. |
I wonder if it is related since my arrows seem a bit off too. |
This #209 (comment) didn't help either. |
@axper the issue was closed because there was nothing this project can do about it. If you want to use the patch, you have to compile i3 with it yourself. |
Same issue here, and removing it is not a viable solution. |
@axper it's not a bug, nor a feature they would ever consider, so no. |
@GladOSkar Alright. Can you suggest some alternatives to i3bar? |
@axper i don't know any bars that can do this natively. That's why i wrote that hacky patch. There are of course other beautiful bars like polybar |
Unfortunately, @GladOSkar is correct. Font and rendering issues are reported all the time, but we haven't really got a way to address them. In this case, the i3bar protocol simply does not support manipulating the height of a character, so we're out of luck. |
So does anyone actually have it lookign like the example from the README? If so please post your config etc so I can try debug further. |
@ammgws as stated previously, there are 2 options:
AFAIK The screenshot was achieved using option 1, but that does not work for everyone. |
Yes, I was at one point able to get that look by fiddling with font size, but a recent sway update seems to have removed that route. |
It believe it's misleading to have that screenshot in the readme with no explanation if you can only reproduce it by fiddling with the font size (not guaranteed to work) or editing and recompiling i3bar/swaybar. |
It still works on my system with the configuration that is in the README. And it looks exactly as advertised |
OK thanks for that. So given that we seem to be getting different results for the same config, perhaps the issue is with the text renderer used by i3/sway itself? In i3 it seems to be either XCB (xcb_image_text_16) or Pango+Cairo. In sway it's Pango+Cairo. Same for both of us:
Possible differences:
|
OK so have managed to get pretty close to (or perhaps even the same as) the example screenshot just by changing the font config (removing DejaVu). You can see the net block arrows issue #238 is also solved. Before I also had Not really sure what to think of this... |
@ammgws Thanks for trying to solve this! If you have a close look you can see after changing the font you still got vertical parts at top & bottom of the '<' sybmol, admittedly smaller, so this is not really a full, reliable solution. |
@ammgws Thanks for the research, I guess I'll live with the fully vertical separator until someone makes a better bar. |
I wish I could help more, but font rendering is a rabbit hole I haven't gone down yet. |
@ammgws In the case of sway, I know you've had some luck getting patches merged. Do you think they would entertain removing the padding that @GladOSkar discovered? |
I doubt it since it's meant to be compatible with i3, and the changes needed to remove padding from just the separator etc don't look to be trivial. Since i3status-rust implements the separators as a text block, anything you change would be applied to every other block too. So you'd need to come up with a special case kinda like what GladOSkar did or maybe add more parameters like font and font size to the block. |
I'll see if we can play with pango markup to get the separator to display properly. Could have a different font, font size, etc just for the separator and not have to touch i3/swaybar code. Though you'd have to live with whatever margins/padding/borders i3/swaybar add.
This is the closest I can get without modifying swaybar to remove margins |
@ammgws i just tried this and my separators stick to the top like this:
Now pango markup has a
Would you try this with your config please? |
@GladOSkar Can confirm negative rise doesn't work. |
Thanks for this piece of software, but I agree with others, it might be nice if you tell people they need a patched version of i3 for it to work as advertised. I personally don't think the vertical separators are terrible so maybe just update the preview to use |
I'm not sure that's the conclusion of this thread. They look fine for me unpatched. Fonts and rendering is just, as it turns out, a bit tricky, as you can see in related issues. |
Do you have an updated config which renders correctly using only font awesome and vanilla i3?
Or a link to an issue where people made it work ?
I was planning to invest the time in making a nice theme without the power line styling otherwise.
…On Feb 6, 2020 11:29 -0800, Aaron Jacobs ***@***.***>, wrote:
> it might be nice if you tell people they need a patched version of i3 for it to work as advertised.
I'm not sure that's the conclusion of this thread. They look fine for me unpatched. Fonts and rendering is just, as it turns out, a bit tricky, as you can see in related issues.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
Sure, I have
|
Sorry I said in my original comment, a vanilla installation of i3. I can't seem to find the "status_padding" option anywhere? |
I think that is only for sway |
how can i get the exact bar as i the example. |
even after installing powerline fonts i cannot get the exact kind of bar as shown on the example |
For everyone: Currently, there are 3 options to remove the padding between the powerline characters and the bar borders:
|
Maybe we should add that to the README or the New Issue template or something |
@ammgws how can we get the exact look with multicolors as in the example in readme? |
For me adding This is what it looks like without adding that to the config: You might have to experiment with the number to get it just right, but 16 works for me. |
I seem to have a different problem where there is a single pixel gap between where the rectangle ends and the triangle begins. Using Nerd fonts which have powerline and awesome patched into everything. The icons from Awesome are also smaller than they should be. |
All we do is output JSON for i3bar/swaybar to process. We don't control the rendering/fonts/etc so not sure how to help. |
Edit: snipped mention I realize it's been over two years, but did you explore this option or have thoughts on how to approach it? The solutions of manually patching i3 or mangling the font/bar for the specific system don't feel right to me. I'm coming in from i3blocks and my separator is just a thin |, so it's not like removing the powerline character is a tremendous downgrade, but I do find those characters help quite a bit with readability when they work. |
@martinpelikan I'm afraid I gave up maintainership on this project two years ago, so I simply cannot be an authority on what may have changed to make this possible in the meantime. |
GitHub quoted the mention, apologies! My question was intended for @pmyjavec, regarding this:
|
@martinpelikan if the solutions in the comments above don't work for you, there's currently no other solution to the issue. This is because the I will say though that many users (like me) have gotten it to work okay when fiddling with font sizes either globally or using pango to set different font sizes for the separators specifically. Screenshot of my bar for demonstration (i had the same issue originally):
|
Below is about as close as I can get with changing the separator size. It's not great, but I can probably live with it. The other issue is that if I'm understanding correctly, it will require adjustment any time I move this config to systems with different screen sizes or resolutions, and might just not work in the case of mixed resolution systems. Because of this, I figured just removing the separator (as suggested earlier) is the most reliable solution, but I first wanted to check if pmyjavec or others had ideas on themed workarounds.
|
Using a monospaced font gets me closer, but introduced the pixel gap between segment and separator, as shown below, while also using a less readable font (outside the context of coding anyway).
|
Yes that also sometimes happens in similar situations. Also not something that can be affected by anything except font size :/ |
One extremely hacky way to avoid these gaps is to use a specific font with disabled antialiasing. For example: <?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<test qual="any" name="family">
<string>NotoSans Nerd Font</string>
</test>
<edit mode="assign" name="antialias">
<bool>false</bool>
</edit>
</match>
</fontconfig> separator = "<span font_family='NotoSans Nerd Font'>\ue0b2</span>" Not sure if it's worth it though, as the result is just as ugly. |
Hey, I managed to fix those gaps in i3bar-river by 1) rendering left to right 2) having one pixel overlap between blocks (but this should probably be optional). I wonder if something like this would be accepted upstream. |
Implements the suggestion from greshake/i3status-rust#246 (comment).
A picture is worth a thousand words:
As you can see the
<
separators between blocks look kinda ugly and broken, which is not the case in the screenshots I have seen other people have.The text was updated successfully, but these errors were encountered: