domtronn / spaceline-all-the-icons.el

A Spaceline Mode Line theme using All The Icons for Emacs
MIT License
235 stars 25 forks source link

modeline overflow in adjacent buffer and underling not consistent #40

Closed bricewge closed 6 years ago

bricewge commented 7 years ago

I get several glitch with the theme and I don't know where to start looking to fix them.

With solarized the underline is not on a consistent level: screen shot 2017-05-22 at 13 44 07

The buffers on the right have their modeline which overflow on the right buffer: screen shot 2017-05-22 at 13 31 26

domtronn commented 7 years ago

Hi @bricewge sorry for the slow response! I'm not sure why the overflow is happening, what version of Emacs are you using and what OS?

I do add a space character with loads of width to make sure there are no gaps, but I wouldn't imagine this would overflow onto buffers on the right! 😅

However, the underlining issue is known. The mode line modifies the heights & vertical alignments of strings (to allow for more room to show information) and the icons (because all the different icon fonts have varied heights/vertical alignments) so that they line up nicely.

But because this modifies the text properties, when adding an underscore to the face, this also adheres to the vertical adjust ('display (raise 0.X) property).

You could try using a box property on the mode-line face, this works quite nicely (see screenshot)!

Apart from around the wave and slant separators unfortunately, but I'm looking into that... You can use the arrow one and that works nicely 🙂

screen shot 2017-05-30 at 09 35 40
domtronn commented 7 years ago

I've managed to reproduce the overflow issue! It seems to only happen on inactive buffers... And when you focus one of these overflowing buffers, when you force a re-render of the mode line it'll go away!

It seems to be due to this line which is supposed to just add padding so you don't get any gaps 🙂

I'll investigate a solution and get back to you!

domtronn commented 7 years ago

Hmm, I just found out that this only happens in buffers that don't have linum (or some variant of it) enabled - Which is why you'll see it happening on the Spacemacs splash screen.

jwintz commented 7 years ago

Hi @domtronn, @bricewge,

I have the same issue, and yes, I have nlinum package required, but not always triggered. It comes from the great doom: (doom-themes-nlinum-config).

screen shot 2017-06-22 at 21 28 46

You can see on the upper-right buffer, that the modeline is obfuscated.

As I am always playing with frame splitting, it happens a lot!

PS: Enabling nlinum in all buffers does indeed make a difference.

domtronn commented 7 years ago

@jwintz I think the overflowing part should be fixed by your previous PR #58? Could you please verify this as well? :)

jwintz commented 7 years ago

Yes indeed. Thanks for merging !

bricewge commented 6 years ago

The overflow bug is fixed, thanks!