-
Notifications
You must be signed in to change notification settings - Fork 298
Oni can't display the contents of any file(including tutorials) #2704
Comments
Hello and welcome to the Oni repository! Thanks for opening your first issue here. To help us out, please make sure to include as much detail as possible - including screenshots and logs, if possible. |
I'm new to the project, but I thought I'd take a look to see why. I cloned, built, and ran this project in debug mode to see if it'll give any better information. The only thing I found was an unhandled promise rejection in "TutorialManager"
I can only assume there is a promise rejection elsewhere causing it to not open files, but this is the only place where it's unhandled. I spent a little bit of time looking around the project to try to better understand it After following all of the function calls, I tracked it down to this line, which calls the getter It's getting a little bit late for me, I'll see if I can find out why this weekend. |
I'm getting the same blank editor behavior in oni 0.3.7 and 0.3.9. Rolling back neovim to 0.3.1 fixes the issue. @rektrex on Arch you can do this with:
|
Same for me running Manjaro and i3 on 0.3.9 |
I also can't see content, but only in tutorials. MacOS Mojave. |
Same for me: |
Looking at it a bit more. I think I found out a general gist of what's happening here. The issue is located on this line oni/browser/src/neovim/NeovimInstance.ts Line 476 in ed8d338
On my machine, the function call doesn't seem to finish. Ironically the function name I listened on stderr and I listened on stdout. There's no output of any sort. |
I'm getting the same blank editor behaviour in oni 0.3.7 (also tried oni 0.3.9) and neovim 0.3.10 on ubuntu 18.10. |
Following @mbitokhov findings, I've opened a bug in Neovim: neovim/neovim#9473 |
#2613 is still pending. As explained there, Oni should call
In particular see #2613 (comment) and #2613 (comment) .
|
Thanks for your input! I don't know why that PR wasn't pulled in yet. But I'm glad there's some reasonable explanation of why nvim_get_mode was breaking |
@mbitokhov @rektrex, @CrossR is currently looking into this (I think) and reached a similar conclusion, sorry for the delay re. a response and a resolution, we're currently spending a lot of time working on |
Yeah, sorry for the delay, I've started a PhD recently so I've been more strapped for time. The long story short of why the PR isn't merged is that currently, when simply removing the broken call, if neovim errors/gives any messages on startup (ie errors in your As far as I can see, Oni will only start drawing once nvim is fully up and running, but when there is startup errors, the draw calls don't work (partially because the renderer isn't fully set up, partially because the renderer if it were setup, depends on a fully started nvim instance). The end result is that when there is errors/any startup messages, oni shows a blank screen for the editor, and only starts drawing once the user hits enter a bunch to agree to the messages they can't see. It looks like I need to restructure the startup and how the drawing is done, so that the renderer is initialised earlier in the process, and that the drawing will work when nvim sends any startup |
Let me know if there's some way I can help. I don't know much about the nvim API. But I might be able to get something done on a weekend edit: just for historical purposes. I just changed my username. formerly "mbitokhov" |
This happens with several other GUIs on ubuntu bionic, nvim >=0.3.2. In troubleshooting the same behavior in eovim, it looks like a blocking/empty vimenter request was changed or added in 0.3.2 to eliminate spurious UI events during initialization. I believe you are expected to send a command back after your initialization is complete, otherwise it's just a notice that UI events are being blocked waiting on your initialization to complete. Below, is a representation of the offending message that eovim chokes on after running with an option to dump msgpack content.
I have full traces of working vs non-working neovim versions and more explanation over here: |
I think I've got this working now, in that it will launch normally and will launch when there is any startup messages as well. I'm still trying to work around setting the colour scheme up correctly (since I've had to move the first draw call around, the colour scheme isn't set so there is a split second flash of black before the theme kicks in). @devendor , there is an explanation of this change over in NeoVims wiki : https://github.com/neovim/neovim/wiki/Following-HEAD#20180922 which might make things a bit clearer on why it was changed, why its a good thing and how to work around it. |
Let's use #2706 as the title is more descriptive of the underlying issue. |
Oni Version: 0.3.9
Neovim Version (Linux only): 0.3.2
Operating System: Arch Linux(Linux 4.20.0)
Issue: Oni can't display the contents of any file(including tutorials) or a new file. Tested with and without an existing init.vim, unmodified oni config, and no plugins.Other UI elements seem to work fine.
Screenshot after opening "Main.hs"
![Screenshot after opening "Main.hs"](https://user-images.githubusercontent.com/23721797/50599382-f30b4080-0ed3-11e9-958a-56823bcaff28.png)
Expected behavior: The contents of the file is displayed.
Actual behavior: The editor pane is empty.
Steps to reproduce:
The text was updated successfully, but these errors were encountered: