jeanguyomarch/eovim

seg fault at start

Closed this issue · 6 comments

  • eovim --version: last git
  • nvim --version | head -n1: NVIM v0.4.3
  • edje_cc --version:1.23.3
    Installed on debian bullseye after installing
    enlightenment libefl-all-dev neovim libmsgpack-dev

I am ready to help fixing that :

GNU gdb (Debian 9.2-1) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from eovim...
(No debugging symbols found in eovim)
(gdb) r
Starting program: /home/nous/eovim/build/eovim
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff456a700 (LWP 73787)]
[New Thread 0x7ffff3d69700 (LWP 73788)]
[New Thread 0x7ffff3568700 (LWP 73789)]
[Thread 0x7ffff3568700 (LWP 73789) exited]
[Detaching after fork from child process 73790]
[New Thread 0x7ffff208d700 (LWP 73791)]

Thread 1 "eovim" received signal SIGSEGV, Segmentation fault.
0x00007ffff74d5128 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) Quit
(gdb)

Thanks for the report. It's something that goes away with EFL dev (at least on EFL commit ca169ec715, which I'm based on). IIRC, there was a bug with text classes in edje files prior 1.24...
I'm working on changes that get rid of them and should resolve this. Hopefully to land this month.

As a local workaround, you can add:

font='the font name' font_size=10

to all the styles in default.edc. It should allow eovim to run, but with limited font support.

Mmm, sorry, I am novice, I see only one default.edc (and I have no idea what it is...).
Should I add the line
font='the font name' font_size=10
as it is, just at the end of this file after :
#include "cursor.edc"
#include "tab.edc"
}
.....?

And I see styles in it :
style { name: "cmdline"; base: "color=#bcbcbc wrap=word left_margin=2 right_margin=2 text_class=cmdline"; } style { name: "cmdline"; base: "color=#bcbcbc wrap=word left_margin=2 right_margin=2 text_class=cmdline"; }

Sorry, I should have been more specific. Yes, that's there.

diff --git a/data/themes/default.edc b/data/themes/default.edc
index 523ea26..d68f5b6 100644
--- a/data/themes/default.edc
+++ b/data/themes/default.edc
@@ -38,10 +38,10 @@ color_classes {
 }
 
 #define CMDLINE_INFO_STYLE(Color) \
-   "font_weight=Bold text_class=cmdline color="Color" left_margin=8 right_margin=8"
+   "font=Courier font_size=14 font_weight=Bold text_class=cmdline color="Color" left_margin=8 right_margin=8"
 styles {
    style { name: "cmdline";
-      base: "color=#bcbcbc wrap=word left_margin=2 right_margin=2 text_class=cmdline";
+      base: "font=Courier font_size=14 color=#bcbcbc wrap=word left_margin=2 right_margin=2 text_class=cmdline";
    }
    style { name: "cmdline_slash_info";
       base: CMDLINE_INFO_STYLE("#ffffa7");

If you make the changes in the diff above, Eovim should not segfault. Here, I used the Courier font with size 14. However, changing the font after startup will not take effect in some parts... I have to find a proper fix for this to work with EFL 1.23.

Also, I just noticed that there is a weird behavior with Courier, (there is "wave effect when the cursor changes lines) that I do not observe with Fira Code.

Ok, fine after reinstall :

sudo cmake --build . --target install

Thank you very much !

For reference, the font problems in EFL 1.23 (and probably earlier versions) seem to be mentioned in upstream T8477.