Skip to content

Attempt to call nil method when using luasnip.extras.fmt #1425

@TheseusGrey

Description

@TheseusGrey

Hi ^_^

I'm trying to make my snippets alil easier to read by using the fmt helper from extras. However, whenever I try to expand the snippet, I get this error:

...are/nvim/lazy/blink.cmp/lua/blink/cmp/lib/text_edits.lua:139: attempt to index local 'item' (a nil value)
...k.cmp/lua/blink/cmp/completion/windows/documentation.lua:67: attempt to index local 'item' (a nil value)
failed to resolve item with error: ...al/share/nvim/lazy/LuaSnip/lua/luasnip/nodes/snippet.lua:1075: attempt to call method 'indent' (a nil value)

Below is my plugin config and a minimal snippet that spits out the error.

snippets.lua:

local ls = require("luasnip")
-- some shorthands...
local s = ls.snippet
local n = ls.snippet_node
local t = ls.text_node
local i = ls.insert_node
local f = ls.function_node
local c = ls.choice_node
local d = ls.dynamic_node
local r = ls.restore_node
local l = require("luasnip.extras").lambda
local rep = require("luasnip.extras").rep
local p = require("luasnip.extras").partial
local m = require("luasnip.extras").match
local n = require("luasnip.extras").nonempty
local dl = require("luasnip.extras").dynamic_lambda
local fmt = require("luasnip.extras.fmt").fmt
local fmta = require("luasnip.extras.fmt").fmta
local types = require("luasnip.util.types")
local conds = require("luasnip.extras.conditions")
local conds_expand = require("luasnip.extras.conditions.expand")

return {
  s("test", {
    fmt("some text: {};", { i(1, "A Value") }),
  }),
}

Plugin Config:

return {
  "saghen/blink.cmp",
  dependencies = {
    "rafamadriz/friendly-snippets",
    {
      "L3MON4D3/LuaSnip",
      build = "make install_jsregexp",
      config = function()
        -- Load custom snippets from ~/.config/nvim/lua/snippets
        require("luasnip.loaders.from_lua").load({
          paths = vim.fn.stdpath("config") .. "/lua/snippets",
        })
      end,
    },
  },
  version = "*",
  opts = {
    ...
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions