在NVIM Kickstart(Lazy包管理器)中无法使用pontusk/cmp-sass-variables
SCSS变量补全失效问题解决(cmp-sass-variables + NVIM Kickstart)
核心问题:未完成nvim-cmp的源注册与路径配置
你仅安装了cmp-sass-variables插件,但未将其加入nvim-cmp的补全源列表,也未指定变量文件的查找范围,这是补全失效的主要原因。以下是具体修复步骤:
1. 将sass-variables源添加到nvim-cmp配置
nvim-cmp不会自动加载所有安装的补全源,必须手动注册。找到你的nvim-cmp配置(Kickstart默认在lua/plugins/cmp.lua),在sources数组中加入sass_variables:
local cmp = require('cmp') cmp.setup({ sources = cmp.config.sources({ { name = 'nvim_lsp' }, { name = 'path' }, { name = 'buffer' }, { name = 'sass_variables' }, -- 新增这一行 }), -- 保留其他原有配置 })
2. 配置cmp-sass-variables的变量文件路径
插件需要明确知道你的SCSS变量文件位置,避免找不到目标文件。修改init.lua中插件的配置,添加opts指定文件路径:
{ "pontusk/cmp-sass-variables", dependencies = { "hrsh7th/nvim-cmp" }, opts = { files = { "src/styles/**/*.scss", -- 匹配你所有SCSS变量文件,支持通配符 }, }, }
3. 确认SCSS文件类型识别正确
打开你的SCSS文件,执行:set filetype?命令,确保输出为filetype=scss。如果不是,安装nvim-treesitter并启用scss语法支持:
-- 在lazy插件列表中添加treesitter配置 { 'nvim-treesitter/nvim-treesitter', opts = { ensure_installed = { 'scss', -- 其他你需要的语言 }, highlight = { enable = true }, }, }
完成以上配置后,重启Neovim,即可在variables.scss和引入它的文件中正常补全SCSS变量。
内容的提问来源于stack exchange,提问作者Frizzant
相关产品推荐
相关产品推荐

