amarakon / nvim-cmp-buffer-lines

nvim-cmp completion source for buffer lines

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Plugin crashes because treesitter is not available.

bagohart opened this issue · comments

Hi,
I just tried this plugin because nvim-cmp breaks manual ^X^L completion for me.
I don't use treesitter.
I configured it like this:

                    ['<C-x><C-l>'] = cmp.mapping.complete({ -- manual ^X^L is broken, so use this instead...
                        config = {
                            sources = {
                                { name = 'buffer-lines' },
                                option = {
                                    words = true,
                                    comments = true,
                                    leading_whitespace = false,
                                },
                            },
                        },
                    }),

When I press ^X^L I get:

E5108: Error executing lua: .../nvim-cmp-buffer-lines/lua/cmp-buffer-lines/complete.lua:19: module 'nvim-treesitter.ts_utils' not found:
	no field package.preload['nvim-treesitter.ts_utils']
	no file './nvim-treesitter/ts_utils.lua'
	no file '/usr/share/luajit-2.1.0-beta3/nvim-treesitter/ts_utils.lua'
	no file '/usr/local/share/lua/5.1/nvim-treesitter/ts_utils.lua'
	no file '/usr/local/share/lua/5.1/nvim-treesitter/ts_utils/init.lua'
	no file '/usr/share/lua/5.1/nvim-treesitter/ts_utils.lua'
	no file '/usr/share/lua/5.1/nvim-treesitter/ts_utils/init.lua'
	no file '/home/felix/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/nvim-treesitter/ts_utils.lua'
	no file '/home/felix/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/nvim-treesitter/ts_utils/init.lua'
	no file '/home/felix/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/nvim-treesitter/ts_utils.lua'
	no file '/home/felix/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/nvim-treesitter/ts_utils/init.lua'
	no file './nvim-treesitter/ts_utils.so'
	no file '/usr/local/lib/lua/5.1/nvim-treesitter/ts_utils.so'
	no file '/usr/lib/lua/5.1/nvim-treesitter/ts_utils.so'
	no file '/usr/local/lib/lua/5.1/loadall.so'
	no file '/home/felix/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/nvim-treesitter/ts_utils.so'
	no file './nvim-treesitter.so'
	no file '/usr/local/lib/lua/5.1/nvim-treesitter.so'
	no file '/usr/lib/lua/5.1/nvim-treesitter.so'
	no file '/usr/local/lib/lua/5.1/loadall.so'
	no file '/home/felix/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/nvim-treesitter.so'
stack traceback:
	[C]: in function 'require'
	.../nvim-cmp-buffer-lines/lua/cmp-buffer-lines/complete.lua:19: in function 'rmcomments'
	.../nvim-cmp-buffer-lines/lua/cmp-buffer-lines/complete.lua:110: in function 'generate'
	.../nvim-cmp-buffer-lines/lua/cmp-buffer-lines/complete.lua:158: in function 'complete'
	...re/nvim/site/pack/packer/opt/nvim-cmp/lua/cmp/source.lua:325: in function 'complete'
	...hare/nvim/site/pack/packer/opt/nvim-cmp/lua/cmp/core.lua:289: in function 'complete'
	...hare/nvim/site/pack/packer/opt/nvim-cmp/lua/cmp/init.lua:77: in function 'complete'
	...site/pack/packer/opt/nvim-cmp/lua/cmp/config/mapping.lua:113: in function 'on_keymap'
	...hare/nvim/site/pack/packer/opt/nvim-cmp/lua/cmp/core.lua:145: in function 'callback'
	...m/site/pack/packer/opt/nvim-cmp/lua/cmp/utils/keymap.lua:133: in function <...m/site/pack/packer/opt/nvim-cmp/lua/cmp/utils/keymap.lua:127>

My suspicion is that the condition in complete.lua is wrong:

local function rmcomments(nmbr, line)
	-- Use tree-sitter if is installed
	if not (vim.fn.exists(":TSUpdate") >= 2) then
		local ts_utils = require "nvim-treesitter.ts_utils"

Can you run the following Vim command and tell me what the output is?

echo exists(":TSUpdate")

Yeah, it's 0.

My suspicion is that the condition in complete.lua is wrong:

local function rmcomments(nmbr, line)
  -- Use tree-sitter if is installed
  if not (vim.fn.exists(":TSUpdate") >= 2) then
  	local ts_utils = require "nvim-treesitter.ts_utils"

I think you're right, I shouldn't have the not there. Please check if the latest commit fixes your issue.

Great, that works. Thanks!