quangnguyen30192 / cmp-nvim-ultisnips

nvim-cmp source for ultisnips
Apache License 2.0
145 stars 19 forks source link

Error out when using latest master. #94

Closed jdhao closed 5 months ago

jdhao commented 5 months ago

With the latest commit baac332791a2910190b5c6eec3b79b72c53227d9, when I open nvim, I am seeing the following errors:

vim/_editor.lua:0: User Autocommands for "VeryLazy"..script nvim_exec2() called at User Autocommands for "VeryLazy":0../Users/hao/.local/share/nvim/lazy/cmp-nvim-ultisnips/after/plugin/cmp_nvim_ultisnips.lua: Vim(source):E5113: Er ror while calling lua chunk: vim/_editor.lua:0: User Autocommands for "VeryLazy"..script nvim_exec2() called at User Autocommands for "VeryLazy":0../Users/hao/.local/share/nvim/lazy/cmp-nvim-ultisnips/after/plugin/cmp_nvim_ultisni ps.lua..nvim_exec2() called at /Users/hao/.local/share/nvim/lazy/cmp-nvim-ultisnips/after/plugin/cmp_nvim_ultisnips.lua:0..function provider#python3#Call, line 1: Vim(return):E5108: Error executing lua Vim:Error invoking 'python_e xecute' on channel 4 (python3-script-host): Traceback (most recent call last): File "", line 1, in File "/Users/hao/.local/share/nvim/lazy/cmp-nvim-ultisnips/python3/ultisnips_utils.py", line 1, in from UltiSnips import UltiSnips_Manager, vim_helper ModuleNotFoundError: No module named 'UltiSnips'

The previous commit works without errors.

jdhao commented 5 months ago

This seem to be caused by lazy-loading Ultisnips with InsertEnter event (I am using lazy.nvim to manage the plugins). If I remove this event from the plug spec, the error is gone. However, another error pops up each time when I type in insert mode:

Error detected while processing TextChangedI Autocommands for "": E5108: Error executing lua TextChangedI Autocommands for ""..function provider#python3#Call, line 1: Vim(return):E5108: Error executing lua Vim:Error invoking 'python_eval' on channel 6 (python3-script-host): error caught in request handler 'python_eval ['ultisnips_utils.set_filetype(markdown_inline)']': Traceback (most recent call last): File "/opt/homebrew/Caskroom/miniconda/base/lib/python3.10/site-packages/pynvim/plugin/script_host.py", line 167, in python_eval return eval(expr, self.module.dict) File "", line 1, in NameError: name 'markdown_inline' is not defined stack traceback: [C]: at 0x010074f668 [C]: in function 'pyeval' ...cmp-nvim-ultisnips/lua/cmp_nvim_ultisnips/treesitter.lua:37: in function 'set_filetype' [string ":lua"]:1: in main chunk stack traceback: [C]: in function 'pyeval' ...cmp-nvim-ultisnips/lua/cmp_nvim_ultisnips/treesitter.lua:37: in function 'set_filetype' [string ":lua"]:1: in main chunk

quangnguyen30192 commented 5 months ago

I appreciate the report, but I'm unable to reproduce the error. Please help specify the file type on which the error is occurring

and try the following:

  1. do the command UpdateRemotePlugins
  2. use the ultisnips default setup
    require("cmp_nvim_ultisnips").setup({
    filetype_source = "treesitter",
    documentation = function(snippet)
    return snippet.description .. "\n\n" .. snippet.value
    end,
    })
quangnguyen30192 commented 5 months ago

@smjonas JFYI

jdhao commented 5 months ago

The second error pops up when I am editting markdown files. I will try to reproduce.

smjonas commented 5 months ago

@jdhao The error regarding set_filetype should be fixed on the latest main, please try the latest commit and report back

jdhao commented 5 months ago

Thanks, the second error seem to be gone.

smjonas commented 5 months ago

I added another commit that defers the import of the UltiSnips python, could you try if this resolved your lazy-loading issue?

jdhao commented 5 months ago

Thanks, this seems to fix the issue of lazy-loading. I can also use the VeryLazy event from lazy.nvim for Ultisnips and cmp related plugins. This also works.