-
Notifications
You must be signed in to change notification settings - Fork 3
Description
eovim --version
: 0.1.3.99-69652c1nvim --version | head -n1
: NVIM v0.4.3edje_cc --version
: Version: 1.23.
Hello
Thanks for your work on this. It is definitely one of the best Neovim front-ends. The simple addition of the floating command palette makes a massive difference in these days of high-res/large screens.
One issue, however. I have noticed that vertical splits seem to have an alignment issue, possibly/probably related to the ligature (?) support, and in particular triggered by NERDTree
.
As recommended, I installed Fira Code, which looks great. If I set the font to use any of the different font weights (e.g. style=Medium), the problem with vertical alignment is 10x worse.
If I just use plain Fira Code with no style option specified as my guifont
, the problem is essentially almost non-existent; I say "almost", because when I toggle NERDTree, a couple of vertical bars are very slightly misaligned, e.g. by just a couple of pixels, far less dramatic than the screenshots below. This misalignment propagates to any other split views in the window. However, it immediately disappears and all is perfect again as soon as I close/toggle NERDTRee back to hidden.
So in practice it is only the tiniest imperfection and does not impact usability, it is more of a slight aesthetic ugliness issue.
With, say, Fira Code using the medium style option to increase the font weight, the problem is much more serious. Even after toggling NERDTree to close again, the vertical misalignment remains between splits, which is very ugly. So it essentially makes alternative font weights very problematical.
As I say, my guess is this is related to way that eovim
is handling ligatures or some other font width metric.
Hopefully the attached screenshots will explain it better than my text above does.
Activity
jeanguyomarch commentedon Jul 4, 2020
Thanks for your very detailed report and your thoughts on eovim, I really appreciate ;)
The text widget I use in eovim enables rich text rendering, such as ligatures, easy line spacing, and fancy underlines. Since it is not a "matrix of glyphs", it absolutely requires that all glyphs have the same width.
I ran on the exact same problem with a
Fira Code
I manually installed. I did not experience this issue withFira Code
distributed by my package manager (i.e. the Debian packagefonts-firacode
on Ubuntu 20.04).I think that the problem here is caused by the bold font. I'm not sure what happens exactly, but when
Fira Code
is "not properly installed (??)" bold glyphs are a bit larger than normal glyphs, which makes the UI quite ugly.I have very little knowledge of the text rendering that happens behind the scenes, but it seems that when
Fira Code (Bold)
is not installed, the text engine makes glyphs bigger.Can you please check if
Fira Code (Bold)
is installed or not ? Please let me know if installing it indeed "fixes" the problem.ArenT1981 commentedon Jul 4, 2020
Interesting. Your explanation certainly makes sense, however I do have Fira Code Bold installed.
I'm on Fedora 32 so I simply installed the fira-code-fonts package:
I have Fira Code Bold installed:
Here is the output of
fc-query Fira-code-*
run in the Fira Code font installation directory. I don't know whether it will yield any useful comparison information with the versions of the fonts installed on your system:ArenT1981 commentedon Jul 4, 2020
One other unrelated side issue that is probably simple to resolve, but I don't know much vimscript, is that in order to make eovim work properly with colorschemes I have had to put
set termguicolors
into my neoviminit.vim
.The only downside of this is now the colorscheme doesn't load properly if I just happen to run nvim within my rxvt terminal, probably due to lack of true color support or so, or something else. Setting my $TERM made no difference. I don't use nvim directly in the console that much (I use eovim!), but sometimes it is handy just for a super quick edit, and so having all the nice colours disappear is slightly annoying although no big deal. I suppose I could switch terminals, to something like kitty, but I rather like the efficiency of rxvt-unicode.
It works fine in rxvt without the
set termguicolors
option. So is there a way of putting something likeSo that basically the
set termguicolors
option is only set when starting up a eovim session? (Can it be passed as a command line argument?). I don't know what the correct syntax is.Thanks! :-)
jeanguyomarch commentedon Jul 18, 2020
Okay... interesting. I'll investigate the font issue more into details. Thanks for the info.
For setting
termguicolors
only when Eovim runs, I think you can do the following:If you are interested in more vim scripting, there is a Wiki page that explains some tricks.