右下角显示 plain text 时需手动切换语言模式,检查文件后缀、files.associations 配置及是否已保存,否则语言服务器不启动,intellisense 全面失效。

右下角语言模式显示 Plain Text 怎么办
这是最常被忽略的起点。VSCode 不会自动识别文件内容,只靠后缀和配置判断语言类型。一旦状态栏显示 Plain Text 或 Unknown,对应的语言服务器根本不会启动,IntelliSense 全面失效。
点击右下角语言标识,手动选成 JavaScript、TypeScript、Python 等真实语言模式;检查文件是否已保存——未命名的 Untitled-1 默认就是 Plain Text;确认后缀没被误配,比如 files.associations 里写了 "*.js": "typescript",会导致补全降级或类型错乱。
c_cpp_properties.json 配置错误导致 C++ 跳转失败
C++ 的 IntelliSense 严重依赖 c_cpp_properties.json 中的 compilerPath 和 includePath。路径写错、变量未展开、头文件目录漏掉,都会让“转到定义”返回“未找到定义”。
-
compilerPath必须指向真实可执行的编译器(如C:/msys64/ucrt64/bin/g++.exe),不能只写g++ -
includePath要包含标准库头文件路径(如"C:/msys64/ucrt64/include/c++/14.2.0/**"),不能只留"${workspaceFolder}/**" - Windows 下路径分隔符必须用正斜杠
/或双反斜杠\,单反斜杠会被 JSON 解析为转义字符
Python 项目里 F12 跳转失败但 hover 有类型
这种“半失效”现象说明 Pylance 已运行,但模块解析出了问题。核心原因通常是解释器没选对,或者虚拟环境路径没被正确索引。
按 Ctrl+Shift+P 运行 Python: Select Interpreter,确保选中项目根目录下的 venv/Scripts/python.exe(Windows)或 venv/bin/python(macOS/Linux);检查 python.defaultInterpreterPath 是否在 settings.json 中被硬编码为旧路径;如果用了 Poetry,需确认 poetry env info --path 输出的路径已被选中,否则 Pylance 无法定位包内代码。
重启语言服务器比重启 VSCode 更有效
很多失效不是编辑器卡死,而是语言服务器进程僵住或加载不全。盲目重启 VSCode 浪费时间,且可能丢失调试上下文。
- Python:运行
Python: Restart Language Server,强制重载 Pylance - TypeScript/JavaScript:运行
TypeScript: Restart TS Server,比重载窗口快得多 - C/C++:命令面板搜
C/C++: Reset IntelliSense Database,清空损坏的索引缓存 - 所有操作后,看右下角状态栏是否出现
Initializing...或Ready,这才是服务真正就绪的信号
.vscode 文件夹——这会覆盖你调好的 c_cpp_properties.json 或 jsconfig.json,反而把问题变得更难回溯。先查语言模式、再查解释器/编译器路径、最后动配置,顺序不能乱。











