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

在Neovim中使用vim-slime-cells插件出现无效参数错误

问题分析与解决方案

错误根源

报错的核心是第13行的Vimscript语法在Neovim v0.4.3中不兼容,导致函数定义中断,后续的:return和:endfunction因失去函数上下文触发语法错误:

  • E475错误说明第13行的参数格式无效,老版本Neovim对Vim 8.1支持的命名参数写法(如include_header=0)或函数参数默认值语法支持不完善。
  • 函数定义中断后,后续的:return和:endfunction不再属于任何函数块,因此触发E133、E193错误。

具体修复步骤

  1. 编辑插件文件:打开/home/navarro/.vim/bundle/vim-slime-cells/autoload/slime_cells.vim
  2. 修复第13行语法:
    • 如果是调用函数时使用了命名参数(比如call some_func(include_header=0)),将其改为位置参数形式。例如若include_header是目标函数的第一个参数,就改成call some_func(0)。
    • 如果是函数定义时使用了参数默认值(比如function! slime_cells#select_current_cell(include_header=0)),老Neovim不支持这种写法,需替换为:
      function! slime_cells#select_current_cell(...) abort
        let l:include_header = get(a:000, 0, 0)
        " 后续原有代码保持不变
      
  3. 验证修复:保存文件后重启Neovim,调用slime_cells#select_current_cell函数,检查报错是否消除。

替代方案

若不想修改插件代码,可升级Neovim到v0.5及以上版本——新版本对Vimscript的兼容性更好,原生支持更多Vim 8.x的语法特性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 12:15:25