在Visual Studio安装VsVim扩展后编辑器下方报错,该如何解决?
问题本质
你在Visual Studio底部看到的未解析字符串,不是VsVim抛出的功能错误,是VsVim加载自定义配置时出现的渲染问题。那串%{HasPaste()}%F%m%r%h\ %w\ \ CWD:\ %r%{getcwd()}%h\ \ \ Line:\ %l本身是Vim生态通用的状态栏格式定义,因为配置语法缺失,没有被VsVim识别为状态栏样式,直接被当成普通文本显示在了窗口最下方。
具体解决步骤
- 定位问题配置
打开VsVim的自定义配置文件,默认路径为用户根目录下的_vsvimrc;如果之前配置过全局Vim的.vimrc并指定VsVim加载,也要同步检查该文件。在文件内搜索这串带%的文本,找到对应的配置行位置。 - 修正配置语法
要让VsVim正常渲染这串状态栏格式,必须在文本前加上set statusline=的语法前缀。如果之前漏写了这个前缀,直接把格式串当成普通的启动输出写入配置,就会导致原文直接平铺显示在底部栏。
修正后的正确配置示例:
保存配置文件后,在Visual Studio的VsVim命令行中执行set statusline=%{HasPaste()}%F%m%r%h\ %w\ \ CWD:\ %r%{getcwd()}%h\ \ \ Line:\ %l:source $MYVIMRC重新加载配置,底部栏就会正常解析显示当前打开的文件路径、工作目录、光标所在行号等实际状态值,不再显示原始格式串。 - 无自定义需求的快速处理
如果你不需要调整VsVim的状态栏样式,直接删掉配置文件里对应的这行文本,重启VsVim扩展后就会恢复默认的状态栏显示效果。
内容的提问来源于stack exchange,提问作者emrich
相关产品推荐
相关产品推荐

