Skip to content
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

Only blank window shown when launching #53

Closed
deto opened this issue Jun 1, 2016 · 72 comments
Closed

Only blank window shown when launching #53

deto opened this issue Jun 1, 2016 · 72 comments
Labels

Comments

@deto
Copy link

deto commented Jun 1, 2016

Expected Behavior

When running nyaovim from the command prompt, only a blank window is launched. Does not respond to input.

Actual Behavior

NyaoVim launches as expected

Steps to Reproduce (including precondition)

Install NyaoVim using "npm install -g nyaovim". Open a command prompt and type nyaovim

Screenshot on This Problem (if possible)

{Please write here}

Your Environment

  • OS: {Windows 10, Build 14342}
  • NyaoVim version: {0.0.19}
  • nvim version: {0.1.5-dev}
  • Keyboard layout: {qwerty}
  • Linux: Window manager: {N/A}

Additional Comments (if any)

Neovim-qt works as expected. Using the MSVC 2015 - compiled version of nvim (the MSYS version wouldn't work with neovim-qt or nyaovim)

@gosukiwi
Copy link

gosukiwi commented Jun 1, 2016

Same here. Using Windows 10 14352 insider build.

@gwerbin
Copy link

gwerbin commented Jun 4, 2016

Same problem here, too... except did you switch "expected" and "actual" behavior?

I'm on OS X 10.11.5

NyaoVim version 0.0.19
  electron : 0.36.12
  chrome : 47.0.2526.110
  node : 5.1.1
  v8 : 4.7.80.27
NVIM v0.1.5-800-gecbc9db
Build type: Release
Compilation: /usr/local/Library/ENV/4.3/clang -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNDEBUG -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -I/tmp/neovim-20160529-87005-2rt9sk/build/config -I/tmp/neovim-20160529-87005-2rt9sk/src -I/tmp/neovim-20160529-87005-2rt9sk/deps-build/usr/include -I/tmp/neovim-20160529-87005-2rt9sk/deps-build/usr/include -I/tmp/neovim-20160529-87005-2rt9sk/deps-build/usr/include -I/tmp/neovim-20160529-87005-2rt9sk/deps-build/usr/include -I/tmp/neovim-20160529-87005-2rt9sk/deps-build/usr/include -I/tmp/neovim-20160529-87005-2rt9sk/deps-build/usr/include -I/usr/local/opt/gettext/include -I/usr/include -I/usr/include -I/tmp/neovim-20160529-87005-2rt9sk/build/src/nvim/auto -I/tmp/neovim-20160529-87005-2rt9sk/build/include
Compiled by greg@greg-macbook.local

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui
For differences from Vim, see :help vim-differences

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/local/Cellar/neovim/HEAD/share/nvim"

@deto
Copy link
Author

deto commented Jun 4, 2016

Yeah. Whoops. Hope it's obvious from context

@gwerbin
Copy link

gwerbin commented Jun 5, 2016

FWIW I see this error in the devloper console (and nothing else):

Uncaught TypeError: Cannot read property 'prototype' of undefined

@tjdevries
Copy link

I have the same problem, with the same error as noted by @gwerbin.

Has anyone found a solution to this? Maybe reverting to an older version of Neovim?

@gwerbin
Copy link

gwerbin commented Jun 19, 2016

Any updates on this?

@gosukiwi
Copy link

Personally, the issue I had was related to my .vimrc. It was not compatible with neovim, it seems. It would be great to get an error message instead of just a blank screen though.

@gwerbin
Copy link

gwerbin commented Jun 20, 2016

@gosukiwi I tried renaming/disabling both my .vimrc and nvim/init.vim files, still got a blank white window.

@jonsmithers
Copy link

jonsmithers commented Jul 2, 2016

I'm getting this issue in Ubuntu. I was able to print a stacktrace:

TypeError: Cannot read property 'prototype' of undefined
    at generateWrappers (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/promised-neovim-client/index.js:75:13)
    at /home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/promised-neovim-client/index.js:189:13
    at Session._parse_message (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/msgpack5rpc/index.js:96:5)
    at Decoder.<anonymous> (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/msgpack5rpc/index.js:42:11)
    at emitOne (events.js:77:13)
    at Decoder.emit (events.js:169:7)
    at readableAddChunk (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/msgpack5/node_modules/readable-stream/lib/_stream_readable.js:210:18)
    at Decoder.Readable.push (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/msgpack5/node_modules/readable-stream/lib/_stream_readable.js:169:10)
    at Decoder.Transform.push (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/msgpack5/node_modules/readable-stream/lib/_stream_transform.js:123:32)
    at Decoder._transform (/home/smithers/.npm-global/lib/node_modules/nyaovim/node_modules/msgpack5/lib/streams.js:65:10)

Renaming .vimrc didn't help.

@rhysd rhysd added the bug label Aug 10, 2016
@rhysd rhysd self-assigned this Aug 10, 2016
@rhysd
Copy link
Owner

rhysd commented Aug 10, 2016

The error looks to occur here:

https://github.com/rhysd/promised-neovim-client/blob/03ede48e03ae4505290512acbbad4252dc591e19/index.js#L93

I'll try this on Windows8 machine (I don't have Windows10 machine).

@rhysd
Copy link
Owner

rhysd commented Aug 10, 2016

I reproduced this although the error message is not the same:

nvim.uiAttach is not a function

@rhysd
Copy link
Owner

rhysd commented Aug 10, 2016

I noticed nvim in my Windows environment is too old. After updating nvim to 0.1.5-dev, it looks to be working well.

default

I don't know this is Windows10 related issue or already this issue had gone because I can't reproduce.

@rhysd rhysd removed the reproduced label Aug 10, 2016
@rhysd rhysd removed their assignment Aug 10, 2016
@ikouchiha47
Copy link

I am having the same problem on Debian Jessie, using nvim 0.1.1 .

@rhysd
Copy link
Owner

rhysd commented Aug 18, 2016

@argentum47

Please upadte Neovim. Currently nvim v0.1.5 is supported.

@htfy96
Copy link

htfy96 commented Aug 29, 2016

Confirmed on my Arch Linux x64 with Gnome.

NyaoVim version 0.0.20
  electron : 1.3.4
  chrome : 52.0.2743.82
  node : 6.3.0
  v8 : 5.2.361.43
➜  ~ nvim -v
NVIM v0.1.6-27-g0b5a7e4
Build type: Dev
Compilation: /usr/bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -g -fvar-tracking-assignments -Wconversion -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -D_GNU_SOURCE -I/tmp/yaourt-tmp-lz/aur-neovim-git/src/neovim-git/build/config -I/tmp/yaourt-tmp-lz/aur-neovim-git/src/neovim-git/src -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/tmp/yaourt-tmp-lz/aur-neovim-git/src/neovim-git/build/src/nvim/auto -I/tmp/yaourt-tmp-lz/aur-neovim-git/src/neovim-git/build/include
Compiled by lz@lzPC

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui      
For differences from Vim, see :help vim-differences

     System vimrc : "$VIM/sysinit.vim"
         $VIM preset: "/usr/share/nvim"

Run it with gdb --args node /usr/bin/nyaovim --no-detach -u NONE and pause it with C-Z, then bt outputs as follow:

(gdb) info threads 
  Id   Target Id         Frame 
* 1    Thread 0x7ffff7fb0740 (LWP 12617) "node" 0x00007ffff5707f19 in syscall () from /usr/lib/libc.so.6
  2    Thread 0x7ffff7ff7700 (LWP 12621) "node" 0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
  3    Thread 0x7ffff398f700 (LWP 12622) "V8 WorkerThread" 0x00007ffff77aa330 in ?? () from /usr/lib/libuv.so.1
  4    Thread 0x7ffff318e700 (LWP 12623) "V8 WorkerThread" 0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
  5    Thread 0x7ffff298d700 (LWP 12624) "V8 WorkerThread" 0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
  6    Thread 0x7ffff218c700 (LWP 12625) "V8 WorkerThread" 0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
(gdb) thread apply all bt

Thread 6 (Thread 0x7ffff218c700 (LWP 12625)):
#0  0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
#1  0x00007ffff73825a4 in __new_sem_wait_slow.constprop.0 () from /usr/lib/libpthread.so.0
#2  0x0000000000e77b08 in v8::base::Semaphore::Wait() ()
#3  0x0000000000de1339 in v8::platform::TaskQueue::GetNext() ()
#4  0x0000000000de169c in v8::platform::WorkerThread::Run() ()
#5  0x0000000000e78e20 in ?? ()
#6  0x00007ffff737a454 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007ffff570c7df in clone () from /usr/lib/libc.so.6

Thread 5 (Thread 0x7ffff298d700 (LWP 12624)):
#0  0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
#1  0x00007ffff73825a4 in __new_sem_wait_slow.constprop.0 () from /usr/lib/libpthread.so.0
#2  0x0000000000e77b08 in v8::base::Semaphore::Wait() ()
#3  0x0000000000de1339 in v8::platform::TaskQueue::GetNext() ()
#4  0x0000000000de169c in v8::platform::WorkerThread::Run() ()
#5  0x0000000000e78e20 in ?? ()
#6  0x00007ffff737a454 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007ffff570c7df in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7ffff318e700 (LWP 12623)):
#0  0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
#1  0x00007ffff73825a4 in __new_sem_wait_slow.constprop.0 () from /usr/lib/libpthread.so.0
#2  0x0000000000e77b08 in v8::base::Semaphore::Wait() ()
#3  0x0000000000de1339 in v8::platform::TaskQueue::GetNext() ()
#4  0x0000000000de169c in v8::platform::WorkerThread::Run() ()
#5  0x0000000000e78e20 in ?? ()
#6  0x00007ffff737a454 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007ffff570c7df in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7ffff398f700 (LWP 12622)):
#0  0x00007ffff77aa330 in ?? () from /usr/lib/libuv.so.1
#1  <signal handler called>
#2  0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
#3  0x00007ffff73825a4 in __new_sem_wait_slow.constprop.0 () from /usr/lib/libpthread.so.0
#4  0x0000000000e77b08 in v8::base::Semaphore::Wait() ()
#5  0x0000000000de1339 in v8::platform::TaskQueue::GetNext() ()
#6  0x0000000000de169c in v8::platform::WorkerThread::Run() ()
#7  0x0000000000e78e20 in ?? ()
#8  0x00007ffff737a454 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007ffff570c7df in clone () from /usr/lib/libc.so.6

---Type <return> to continue, or q <return> to quit---
Thread 2 (Thread 0x7ffff7ff7700 (LWP 12621)):
#0  0x00007ffff73824f7 in do_futex_wait.constprop () from /usr/lib/libpthread.so.0
#1  0x00007ffff73825a4 in __new_sem_wait_slow.constprop.0 () from /usr/lib/libpthread.so.0
#2  0x00007ffff77ae032 in uv_sem_wait () from /usr/lib/libuv.so.1
#3  0x0000000000d721a2 in node::DebugSignalThreadMain(void*) ()
#4  0x00007ffff737a454 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007ffff570c7df in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7ffff7fb0740 (LWP 12617)):
#0  0x00007ffff5707f19 in syscall () from /usr/lib/libc.so.6
#1  0x00007ffff77b2e0a in ?? () from /usr/lib/libuv.so.1
#2  0x00007ffff77b113d in ?? () from /usr/lib/libuv.so.1
#3  0x00007ffff77a2c44 in uv_run () from /usr/lib/libuv.so.1
#4  0x0000000000d71a70 in node::Start(int, char**) ()
#5  0x00007ffff5644291 in __libc_start_main () from /usr/lib/libc.so.6
#6  0x00000000006c7d3a in _start ()

It seems that this bug is probably caused by deadlock.

Single step result:
debug.log.zip

@Ginden
Copy link

Ginden commented Sep 2, 2016

I have the same issue.

ginden@ginden:~/Projects/node$ nvim -v

NVIM 0.1.6-dev
Build type: RelWithDebInfo
Compilation: /usr/bin/x86_64-linux-gnu-gcc -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -O2 -g -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -D_GNU_SOURCE -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/build/config -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/src -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/.deps/usr/include -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/.deps/usr/include -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/.deps/usr/include -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/.deps/usr/include -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/.deps/usr/include -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/.deps/usr/include -I/usr/include -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/build/src/nvim/auto -I/build/neovim-cFoKmP/neovim-0.1.5ubuntu1+git201608291835+2734+21~ubuntu16.04.1/build/include
Compiled by buildd@lgw01-41

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui      
For differences from Vim, see :help vim-differences

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/share/nvim"

Nyaovim package.json:

  "_id": "nyaovim@0.0.20",
  "_resolved": "https://registry.npmjs.org/nyaovim/-/nyaovim-0.0.20.tgz",

System info:

                          ./+o+-       ginden@ginden
                  yyyyy- -yyyyyy+      OS: Ubuntu 16.04 xenial
               ://+//////-yyyyyyo      Kernel: x86_64 Linux 4.4.0-34-generic
           .++ .:/++++++/-.+sss/`      Uptime: 14m
         .:++o:  /++++++++/:--:/-      Packages: 1950
        o:+o+:++.`..```.-/oo+++++/     Shell: bash 4.3.46
       .:+o:+o/.          `+sssoo+/    Resolution: 1920x1200
  .++/+:+oo+o:`             /sssooo.   DE: Unity 7.4.0
 /+++//+:`oo+o               /::--:.   WM: Compiz
 \+/+o+++`o++o               ++////.   WM Theme: Ambiance
  .++.o+++oo+:`             /dddhhh.   GTK Theme: Ambiance [GTK2/3]
       .+.o+oo:.          `oddhhhh+    Icon Theme: ubuntu-mono-dark
        \+.++o+o``-````.:ohdhhhhh+     Font: Ubuntu 11
         `:o+++ `ohhhhhhhhyo++os:      CPU: Intel Core i5-6600 CPU @ 3.9GHz
           .o:`.syhhhhhhh/.oo++o`      GPU: GeForce GTX 960
               /osyyyyyyo++ooo+++/     RAM: 1765MiB / 16000MiB
                   ````` +oo+++o\:    
                          `oo++.      

Issue persist with nyaovim 0.0.18, 0.0.16, 0.0.14.

@israelg99
Copy link

israelg99 commented Sep 8, 2016

Same issue with Kubuntu 16.04.
Any solutions yet? I'll try to investigate further.

More details:

  • I'm using nvm to manage Node versions
  • I have NeoVim 1.6-dev, Vim and gVim.
  • NyaoVim never worked for me, showed white blank screen since install.
  • My nvim files are in ~/.config/nvim/(sl to .vim) and config file is ~/.config/nvim/init.vim (sl to .vimrc)
  • My vim files are in ~/.vim/ and config file is ~/.vim/.vimrc

I try to provide as many details as possible that may be the cause of the bug, perhaps you guys can notice any patterns? maybe nvm, anyone with this issue uses nvm?

@crazymanjinn
Copy link

Seeing the same behavior. It's also interesting that if I launch nyaovim with NODE_ENV=debug, the devtools window doesn't pop-up. If I roll-back to nyaovim 0.0.20, the devtools do pop-up although the blank window behavior is the exact same.

nvim --version
NVIM v0.1.6-93-g7eb4d2f
Build type: Release
Compilation: /usr/local/Library/Homebrew/shims/super/clang -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNDEBUG -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -I/tmp/neovim-20160913-59962-1yxmdyt/build/config -I/tmp/neovim-20160913-59962-1yxmdyt/src -I/tmp/neovim-20160913-59962-1yxmdyt/deps-build/usr/include -I/tmp/neovim-20160913-59962-1yxmdyt/deps-build/usr/include -I/tmp/neovim-20160913-59962-1yxmdyt/deps-build/usr/include -I/tmp/neovim-20160913-59962-1yxmdyt/deps-build/usr/include -I/tmp/neovim-20160913-59962-1yxmdyt/deps-build/usr/include -I/tmp/neovim-20160913-59962-1yxmdyt/deps-build/usr/include -I/usr/local/opt/gettext/include -I/usr/include -I/usr/include -I/tmp/neovim-20160913-59962-1yxmdyt/build/src/nvim/auto -I/tmp/neovim-20160913-59962-1yxmdyt/build/include
Compiled by daniel.samplin@DSamplinerDUR-MBP.local

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui
For differences from Vim, see :help vim-differences

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/local/Cellar/neovim/HEAD-7eb4d2f/share/nvim"

nyaovim --version
NyaoVim version 0.0.21
  electron : 1.3.5
  chrome : 52.0.2743.82
  node : 6.3.0
  v8 : 5.2.361.43

@fsworld009
Copy link

Same issue with nvim 0.1.6 and nyaovim 0.0.21 under Windows 7 x64
I also tried leaving init.vim as blank but it didn't help.
neovim-qt works in my environment, so I believe nvim is installed correctly.

C:\>nvim -v
NVIM v0.1.6-833-g35f67ee
Build type: Release
Compilation: C:/msys64/mingw64/bin/gcc.exe -Wconversion -O2 -DNDEBUG -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -D__USE_MINGW_ANSI_STDIO -D_WIN32_WINNT=0x0600 -Wvla -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -IC:/projects/neovim/build/config -IC:/projects/neovim/src -IC:/projects/neovim/.deps/usr/include -IC:/projects/neovim/.deps/usr/include -IC:/projects/neovim/.deps/usr/include -IC:/projects/neovim/.deps/usr/include -IC:/msys64/mingw64/include -IC:/msys64/mingw64/include -IC:/projects/neovim/build/src/nvim/auto -IC:/projects/neovim/build/include
Compiled by appvyr-winppveyor@APPVYR-WIN

Optional features included (+) or not (-): -acl   +iconv    -jemalloc -tui

For differences from Vim, see :help vim-differences

   system vimrc file: "$VIM\sysinit.vim"
  fall-back for $VIM: "C:/Program Files (x86)/nvim/share/nvim"
C:\>nyaovim --version

NyaoVim version 0.0.21
  electron : 1.4.0
  chrome : 53.0.2785.113
  node : 6.5.0
  v8 : 5.3.332.45

@fsworld009
Copy link

Same issue with Mac OSX 10.11.6 + neovim 0.1.5
Removing init.vim didn't help, either.

$  nvim -v
NVIM 0.1.5
Build type: RelWithDebInfo
Compilation: /usr/local/Library/Homebrew/shims/super/clang -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/build/config -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/src -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/deps-build/usr/include -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/deps-build/usr/include -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/deps-build/usr/include -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/deps-build/usr/include -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/deps-build/usr/include -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/deps-build/usr/include -I/usr/local/opt/gettext/include -I/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/build/src/nvim/auto -I/tmp/neovim-20160916-38433-p43n66/neovim-0.1.5/build/include
Compiled by fsworld009@fsworld009-MacBook-Pro.local

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui      
For differences from Vim, see :help vim-differences

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/local/Cellar/neovim/0.1.5/share/nvim"
$  nyaovim --version
NyaoVim version 0.0.21
  electron : 1.4.0
  chrome : 53.0.2785.113
  node : 6.5.0
  v8 : 5.3.332.45

@fsworld009
Copy link

Reverting nyaovim to 0.0.20, both Windows 7 and Mac environment work now.
For anyone who wants to revert, do

npm uninstall -g nyaovim
npm install -g nyaovim@0.0.20

@rhysd
Copy link
Owner

rhysd commented Sep 17, 2016

@fsworld009

Correct. NyaoVim now works well with nvim HEAD. Please update nvim. This is because nvim v0.1.6 has some msgpack UI RPC API updates. NyaoVim doesn't support nvim v0.1.5 because NyaoVim considers that clean code is more important than backward compatibility until nvim v1.0 is released.

If you have some reason not to use nvim HEAD, please continue to use NyaoVim v0.0.20 until nvim v0.1.6 stable is released.

@htfy96
Copy link

htfy96 commented Sep 17, 2016

Fixed after upgrading nyaovim from 0.0.20 to 0.0.21.
It seems that only 0.0.20 + nvim0.1.5 & 0.0.21 + nvim 0.1.6 work fine.

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

@jordwalke Yes, as I commented in above, my nvim --version and nyaovim --version are

  • nvim --version
NVIM v0.1.6-104-g22dfe69
Build type: Release
Compilation: /usr/local/Homebrew/Library/Homebrew/shims/super/clang -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNDEBUG -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -I/tmp/neovim-20160928-3886-13no3u/build/config -I/tmp/neovim-20160928-3886-13no3u/src -I/tmp/neovim-20160928-3886-13no3u/deps-build/usr/include -I/tmp/neovim-20160928-3886-13no3u/deps-build/usr/include -I/tmp/neovim-20160928-3886-13no3u/deps-build/usr/include -I/tmp/neovim-20160928-3886-13no3u/deps-build/usr/include -I/tmp/neovim-20160928-3886-13no3u/deps-build/usr/include -I/tmp/neovim-20160928-3886-13no3u/deps-build/usr/include -I/usr/local/opt/gettext/include -I/usr/include -I/usr/include -I/tmp/neovim-20160928-3886-13no3u/build/src/nvim/auto -I/tmp/neovim-20160928-3886-13no3u/build/include
Compiled by rhysd

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui      
For differences from Vim, see :help vim-differences

      システム vimrc: "$VIM/sysinit.vim"
       省略時の $VIM: "/usr/local/Cellar/neovim/HEAD-22dfe69/share/nvim"
  • nyaovim --version
NyaoVim version 0.0.21
  electron : 1.4.1
  chrome : 53.0.2785.113
  node : 6.5.0
  v8 : 5.3.332.45

@raacker
Copy link

raacker commented Sep 28, 2016

I think there's an issue between 0.1.6-104 to 0.1.6-14x. That's only different

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

Let me organize 'white screen' issue here. There are two kinds of error in this issue.

  • Renderer process does not work
    • DevTools can't be launched because renderer is not running
    • This is a main issue of this issue (@jordwalke and others reported)
  • Cannot read property 'prototype' error
    • DevTools reports an error in console
    • It occurs because of Neovim's msgpack UI API
    • @raacker reported

So, @raacker, if you can reproduce the 'Cannot read property' error even if updating the latest version (v0.1.6-104-g22dfe69), could you create a new issue for it?

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

I took a screencast gif. As below, it works in my environment...

tmp

@raacker
Copy link

raacker commented Sep 28, 2016

Okay! I'l work on it today and if it still has that issue, I'll create one :) Thank you!

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

@raacker Thank you so much for your confirmation. So some v0.1.6 doesn't work and need to be updated to the latest... I understood 😄

@jordwalke
Copy link

@rhysd Yeah, I have the exact same nvim version as you v0.1.6-144-g22dfe69 release, and same electron, nyaovim version too. Another interesting thing, when I open up nyaovim, I see an error message in the Chrome log that I did not see reported here:

Failed to clear temp storage: It was determined that certain files are unsafe for access within a Web application, or that too many calls are being made on file resources. SecurityError

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

Oh, I didn't get the log. It may be the root cause. Could you please try below?

  1. $ rm -r ~/Library/Application\ Support/Nyaovim
  2. Start NyaoVim

@jordwalke
Copy link

That got rid of that message, thanks. It did not get rid of the white screen problem though.

@jordwalke
Copy link

How do I try a different version of Electron to see if it works?

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

It did not get rid of the white screen problem though.

Thank you for your try. Hmm... $ELECTRON_ENABLE_LOGGIN may be helpful. Could you try below?

$ ELECTRON_ENABLE_LOGGIN=yes NODE_ENV=debug nyaovim -u NONE

It may dump many logs to stderr.

How do I try a different version of Electron to see if it works?

I guess:

  1. $ rm -r ~/Library/Application\ Support/Nyaovim and ensure that nayovim is uninstalled.
  2. $ npm install -g electron-prebuilt@x.y.z (x.y.z is a version number you want to use)
  3. $ npm install -g nyaovim

@jordwalke
Copy link

ELECTRON_ENABLE_LOGGIN=yes NODE_ENV=debug nyaovim -u NONE did not help either. I will try to install electro 3.5.1

@rhysd
Copy link
Owner

rhysd commented Sep 28, 2016

ELECTRON_ENABLE_LOGGIN=yes NODE_ENV=debug nyaovim -u NONE did not help either.

You mean no log is output to stderr?

I will try to install electro 3.5.1

Maybe 1.3.5? 😃

@jordwalke
Copy link

Tried with 1.3.5 and it did not work. Btw: You can't just globally install prebuilt electron, and then install nyaovim, expecting it to use your globally installed version. I had to go into the nyaovim node_modules directory and install 1.3.5 manually. Still did not work. I'm really frustrated because I want to use NyaoVim :D

@sinkuu
Copy link

sinkuu commented Sep 29, 2016

I'm experiencing this problem, but DevTools can be launched and no errors at all in its console.
Using nvim v0.1.6-175-g7246750 and nyaovim 0.0.21 with electron 1.4.1.

Thank you for your try. Hmm... $ELECTRON_ENABLE_LOGGIN may be helpful. Could you try below?

$ ELECTRON_ENABLE_LOGGIN=yes NODE_ENV=debug nyaovim -u NONE

Isn't the correct env var ELECTRON_ENABLE_LOGGING? https://github.com/electron/electron/blob/master/docs/api/environment-variables.md

Still no helpful logs on my mechine though.

$ ELECTRON_ENABLE_LOGGING=true NODE_ENV=debug nyaovim --no-detach
[7500:0929/113819:ERROR:browser_main_loop.cc(239)] GTK theme error: Unable to locate theme engine in module_path: "murrine",

(This error message seems unrelated - installing murrine theme resolves it and getting a blank window anyway)

@rhysd
Copy link
Owner

rhysd commented Sep 29, 2016

@jordwalke

Thank you for confirmation. Hmm... So it's not dependent on Electron version. Anyway, we need to solve this for Electron v1.4.1 because we can't stay in v1.3 to catch up the latest Electron updates.

@sinkuu

Thank you for confirmation.

Isn't the correct env var is ELECTRON_ENABLE_LOGGING?

Oh, you're absolutely right.

$ ELECTRON_ENABLE_LOGGING=yes NODE_ENV=debug nyaovim -u NONE --no-detach

is correct to gather all debug information for now.

When ELECTRON_ENABLE_LOGGING=yes is specified and renderer process correctly runs, console logs in renderer process are dumped to stderr of main process. So silent output means that renderer process doesn't start properly...

@sinkuu
Copy link

sinkuu commented Sep 29, 2016

I inserted console.log here and there, and found that the nyaovim stalled at this line:

if (browser_config.loaded_config.show_menubar === false) { // <===
        win.setMenuBarVisibility(false);
}

So the problem (on my machine, probably) is the configuration not loaded or something. I created browser-config.json

$ echo '{}' > ~/.config/nyaovim/browser-config.json

and NyaoVim worked 😄

@rhysd
Copy link
Owner

rhysd commented Sep 29, 2016

@sinkuu

Nice! Thank you so much for your debug.
I also could reproduce this when removing browser-config.json.

I'll fix this issue and release nyaovim v0.0.22 tonight!

@jordwalke
Copy link

Hey, with my setup above (latest everything including nvim, electron, nyaovim) the browser-config.json fix worked! It still flashes a white screen, but it automatically goes away and loads my colorscheme. Should I file an issue for nyaovim to avoid the ugly white screen (so you can customize the loading color instead of white to match your colorscheme? (even if hardcoded in browser-config.json)

@rhysd
Copy link
Owner

rhysd commented Sep 29, 2016

It still flashes a white screen

You mean that white screen at first, then it shows the screen after enter key? If so, I guess some messages are echoed by nvim (please check :message). Because of Neovim's UI architecture, it's not possible to get messages echoed before process attaching to UI API.

@jordwalke
Copy link

You mean that white screen at first, then it shows the screen after enter key?

I don't even have to press enter. I just wait a second and the white screen goes away.

@rhysd
Copy link
Owner

rhysd commented Sep 29, 2016

I think it's just a loading time. Electron is a customized Chromium browser. So it takes a bit to start up renderer process. In addition, NyaoVim spawn nvim process and attaches to the process for msgpack API. After all UI events are sent from nvim, NyaoVim finally paints UI to the screen.

@jordwalke
Copy link

jordwalke commented Sep 29, 2016

Yeah, I'm not super bothered by it. But it would be nice to be able to customize the color of the screen eventually (you could even read the bg color of the colorscheme at last application-quit time, and use that for the bg color at startup time while waiting for Chromium to load). Chances are, it's the color you want to see there (not 100% of the time, but most of the time).

@rhysd
Copy link
Owner

rhysd commented Sep 29, 2016

NyaoVim's entry point is a HTML file (~/.config/nyaovim/nyaovimrc.html). So at least we can change its background color with CSS before nvim process starts (although JavaScript is needed to obtain fg/bg colors of screen).

@rhysd rhysd closed this as completed in 53eb161 Sep 29, 2016
@rhysd
Copy link
Owner

rhysd commented Sep 29, 2016

I fixed this bug and published new version of NyaoVim. Please update and confirm the fix.

Thank you so much for reporting, confirming and debugging 😄

@deathmaz
Copy link

Confirmed, it works on Linux NVIM v0.1.6-175-g7246750
Thank you!

@szsdk
Copy link

szsdk commented Sep 29, 2016

It works on

NyaoVim version 0.0.22
  electron : 1.4.1
  chrome : 53.0.2785.113
  node : 6.5.0
  v8 : 5.3.332.45

@raacker
Copy link

raacker commented Sep 30, 2016

Wow... It really works! Thanks you for everyone in here :p

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests