You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

排查Neovim(LazyVim)中.erb文件异常报错的来源

定位.erb文件报错来源的排查步骤

1. 逐个禁用工具验证

  • 禁用Ruby-LSP:在LazyVim的Ruby-LSP插件配置中临时添加enabled = false,重启Neovim后打开目标.erb文件,观察报错是否消失。
  • 禁用erb-lint:要么在项目根目录的.erb-lint.yml中添加enabled: false全局禁用,要么在Neovim的linting配置(如nvim-lint的配置项)中移除erb-lint的检查入口,重启后验证。
  • 禁用rubocop:在项目的.rubocop.yml中设置AllCops: Enabled: false,或者在Neovim中关闭rubocop的lint检查,确认报错是否消失。

2. 查看Neovim诊断详情

  • 光标定位到报错行,执行:LspInfo命令,查看当前激活的LSP服务列表,若Ruby-LSP在列,可初步锁定排查方向。
  • 执行vim.diagnostic.open_float()打开诊断弹窗,弹窗内会明确标注诊断来源(如rubocop、erb-lint或ruby-lsp),这是最直接的定位方式。

3. 终端手动运行工具对比

  • 直接在终端执行erb-lint path/to/your/file.erb,将输出的报错内容、行号和Neovim中的报错对比,匹配则说明是erb-lint触发。
  • 执行rubocop path/to/your/file.erb(需确保rubocop已安装erb相关插件),对比报错信息是否一致。
  • 查看Ruby-LSP的日志文件,默认路径为~/.local/share/nvim/lsp_logs/ruby_lsp.log,搜索目标文件的报错记录,确认是否来自Ruby-LSP。

4. 检查工具版本变更

由于问题是更新后出现,可分别查看三个工具的版本更新日志:

  • 查看erb-lint、rubocop的GitHub Release记录,或Ruby-LSP的更新说明,重点关注是否新增了.erb相关的检查规则,或修改了文件解析逻辑。

内容的提问来源于stack exchange,提问作者DenicioCode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 13:20:58