Problem
global.json snippets (date, dateDMY, dateMDY, datetime, etc.) appear twice in completion for markdown, html, tex, and plaintext files.
This is because package.json declares:
{
"language": ["plaintext", "markdown", "tex", "html", "global", "all"],
"path": "./snippets/global.json"
}
"all" already applies to every filetype. Listing "markdown", "html", "tex", and "plaintext" explicitly causes snippet engines (e.g. LuaSnip) to register the same snippets under both the global scope and the specific filetype scope, resulting in duplicates.
Other filetypes are unaffected because they only match via "all".
Expected
{
"language": ["global", "all"],
"path": "./snippets/global.json"
}
Environment
- LuaSnip v2 + friendly-snippets (latest)
- blink.cmp v1 with
snippets = { preset = 'luasnip' }
require("luasnip.loaders.from_vscode").lazy_load()

Problem
global.jsonsnippets (date,dateDMY,dateMDY,datetime, etc.) appear twice in completion for markdown, html, tex, and plaintext files.This is because
package.jsondeclares:{ "language": ["plaintext", "markdown", "tex", "html", "global", "all"], "path": "./snippets/global.json" }"all"already applies to every filetype. Listing"markdown","html","tex", and"plaintext"explicitly causes snippet engines (e.g. LuaSnip) to register the same snippets under both the global scope and the specific filetype scope, resulting in duplicates.Other filetypes are unaffected because they only match via
"all".Expected
{ "language": ["global", "all"], "path": "./snippets/global.json" }Environment
snippets = { preset = 'luasnip' }require("luasnip.loaders.from_vscode").lazy_load()