VS Code Unity环境下带参方法悬停不显示Summary注释如何解决
VS Code Unity环境注释悬停显示异常修复方案
故障表现
- 仅包含Summary的基础注释,鼠标悬停可正常显示内容:
// // Summary: // Does something. public void DoesAThing(){...}
- 包含参数、返回值等扩展说明的注释,悬停时无法正常展示Summary内容:
// // Summary: // Does something with a speed value // // Parameters: // speed: // How fast are you? public void DoesSomething(int speed){...}
修复操作步骤
- 回退C#扩展到兼容版本
卸载当前安装的C# Dev Kit扩展,将C#扩展回退到v1.26.0版本,这是目前验证对Unity注释格式兼容性最好的版本,回退后关闭扩展自动更新,避免版本自动升级导致修复失效。 - 修改OmniSharp运行配置
打开VS Code设置面板,搜索omnisharp.useModernNet,将配置项改为false;再搜索omnisharp.enableRoslynAnalyzers,关闭该配置项,适配Unity使用的Mono运行时环境。 - 规范自定义注释格式
自己编写代码注释时优先使用标准三斜杠XML注释格式,兼容性更强:/// <summary> /// 处理带速度参数的逻辑 /// </summary> /// <param name="speed">移动速度数值</param> public void DoesSomething(int speed){...} - 重启OmniSharp服务生效配置
按Ctrl+Shift+P(Mac端为Cmd+Shift+P)调出命令面板,执行OmniSharp: Restart OmniSharp命令,等待服务重启完成后即可测试注释悬停效果。 - 排查第三方插件冲突
如果上述操作后仍有问题,可临时禁用Unity Code Snippets等第三方Unity辅助扩展,排查是否是插件的解析逻辑冲突导致的显示异常。
内容的提问来源于stack exchange,提问作者Reizo
相关产品推荐
相关产品推荐

