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

Could not load completion data #33

Open
PumpkinL opened this issue May 18, 2021 · 3 comments
Open

Could not load completion data #33

PumpkinL opened this issue May 18, 2021 · 3 comments

Comments

@PumpkinL
Copy link

PumpkinL commented May 18, 2021

I encountered the same problem #17 (comment).

The message is :

[ncmR] Could not load completion data: [Errno 20] Not a directory: 0
[ncm_r@yarp] Traceback (most recent call last):
[ncm_r@yarp]   File "/home/liuck/.vim/plugged/nvim-yarp/pythonx/yarp.py", line 63, in <module>
[ncm_r@yarp]     module_obj = importlib.import_module(module)
[ncm_r@yarp]   File "/usr/local/lang/python/3.9.4/lib/python3.9/importlib/__init__.py", line 127, in import_module
[ncm_r@yarp]     return _bootstrap._gcd_import(name[level:], package, level)
[ncm_r@yarp]   File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
[ncm_r@yarp]   File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
[ncm_r@yarp]   File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
[ncm_r@yarp]   File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
[ncm_r@yarp]   File "<frozen importlib._bootstrap_external>", line 790, in exec_module
[ncm_r@yarp]   File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
[ncm_r@yarp]   File "/home/liuck/.vim/plugged/ncm-R/pythonx/ncm_r.py", line 303, in <module>
[ncm_r@yarp]     SOURCE = Source(vim)
[ncm_r@yarp]   File "/home/liuck/.vim/plugged/ncm-R/pythonx/ncm_r.py", line 37, in __init__
[ncm_r@yarp]     self.get_all_pkg_matches()
[ncm_r@yarp]   File "/home/liuck/.vim/plugged/ncm-R/pythonx/ncm_r.py", line 128, in get_all_pkg_matches
[ncm_r@yarp]     comps = [f for f in listdir(cmp) if 'omnils' in f]
[ncm_r@yarp] NotADirectoryError: [Errno 20] Not a directory: 0
[ncm_r@yarp] Job is dead. cmd=['python3', '-u', '/home/liuck/.vim/plugged/nvim-yarp/pythonx/yarp.py', '/tmp/vZP3jDS/2', 4, 'ncm_r']

But the completion of Omni in Nvim-R working successfully when I type <C-x><C-o>

I also checked the R_compldir:
ls

descr_base_4.0.5       descr_methods_4.0.5  fun_base_4.0.5       fun_methods_4.0.5  last_default_libnames  omnils_graphics_4.0.5   omnils_stats_4.0.5 descr_graphics_4.0.5   descr_stats_4.0.5    fun_graphics_4.0.5   fun_stats_4.0.5    nvimcom_info           omnils_grDevices_4.0.5  omnils_utils_4.0.5 descr_grDevices_4.0.5  descr_utils_4.0.5    fun_grDevices_4.0.5  fun_utils_4.0.5    omnils_base_4.0.5      omnils_methods_4.0.5    README

Here is my .vimrc file.

" vim plugs -----------------------------------------
call plug#begin('~/.vim/plugged')
    Plug 'roxma/vim-hug-neovim-rpc'            " support for neovim
    " completion framework ----------------------------
    Plug 'ncm2/ncm2'                           " completion framework
    Plug 'roxma/nvim-yarp'                     " Remote Plugin 
    " python support ----------------------------------
    Plug 'ncm2/ncm2-jedi'
    " R support ---------------------------------------
    Plug 'jalvesaq/Nvim-R'
    Plug 'gaalcaras/ncm-R'
call plug#end()

" ncm2 setting --------------------------------------------
" enable ncm2 for all buffers
autocmd BufEnter * call ncm2#enable_for_buffer()
" IMPORTANT: :help Ncm2PopupOpen for more information
set completeopt=noinsert,menuone,noselect

@PumpkinL PumpkinL changed the title not load completion data Could not load completion data May 18, 2021
@joiharalds
Copy link

I also encountered this problem after a long overdue update to my neovim plugins and will leave this here as information for others.

I looked into the version history of Nvim-R and in commit 467768ee03be66e4db89b7dd1b34cd91f0689d38 from the 15th of June 2020 the git log says

Remove reference to ncm-R
It seems that ncm2 and ncm-R are no longer being developed.

So it looks like ncm-r has been abandoned and the ncm2 plugin too. The Nvim-R devs then removed support for ncm-r in commit 76a8d661acaa4b74c1b74103f7de5f6a729b3333 from the 29th of April 2021. The lines

" For compatibility with ncm-R:
let g:rplugin_compldir = g:rplugin.compldir

were removed from the setcompldir.vim file. This affects the ncm_r.py file but could be easily fixed by changing _ into .

In the same commit of Nvim-r the file system structure of the generated omnicompletion files (default folder: ~/.cache/Nvim-R/) changed. There is no longer a specific folder, /Nvim-R/pack_descriptions/, for description files for R packages but instead the description files are in the /Nvim-R/ folder and have prefix descr_. This would also need to be fixed in the ncm_r.py file.

There are probably other fixes needed in order to get ncm-r working again but since ncm2 seems to also be abandoned it's probably smartest to just use alternatives to ncm2 and ncm-r. For now I'll just use the autocompletion that comes with Nvim-r, initiated with the key presses c-x c-o. If anyone has suggestions for comparable alternatives please send me a message.

@PumpkinL
Copy link
Author

PumpkinL commented Sep 9, 2021

@joiharalds Thank you very much. I use coc.nvim instead.

@ryan-heslin
Copy link

ryan-heslin commented Sep 24, 2021

@joiharalds Thanks so much for explaining this. I've been trying to chase down the cause of this issue for a month, and this finally solves the mystery. It seems like YouCompleteMe is a good alternative, since it's being actively developed and supports R, though it dowsn't officially support neovim.

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

No branches or pull requests

3 participants