Sublime Text TypeScript 插件失效主因是 tsserver 未连通:需手动绑定 TypeScript 语法、正确配置 tsserver_path 指向项目内 tsserver.js、确保 tsconfig.json 在项目根目录,且仅使用 SublimeTSC 插件。

Sublime Text 装完插件没提示、没跳转、没错误波浪线?不是插件坏了,是 tsserver 没连上——90% 的问题卡在这一步。
为什么装了插件还是“Plain Text”或没语法高亮
Sublime 默认不识别 .ts 文件,打开就是“Plain Text”,和插件装没装无关。必须手动绑定语法类型。
- 打开任意
.ts文件,点击右下角显示的语法名(如 “Plain Text”) - 在弹出菜单中选 TypeScript(注意不是 JavaScript、Babel 或 TypeScriptReact)
- 如果列表里没有
TypeScript,说明语法包没装:用Cmd+Shift+P/Ctrl+Shift+P→Package Control: Install Package→ 安装TypeScriptSyntax(轻量、维护勤) - 装完后进
Preferences → Settings – Syntax Specific,加一行:"extensions": ["ts", "tsx"],让新.tsx文件也自动生效
tsserver_path 必须手动填,不能靠默认
SublimeTSC 插件默认尝试调用全局 tsserver,但现代项目基本不用全局安装。一旦你用了 nvm、volta、pnpm 或本地 typescript,它就找不到——结果就是有高亮、无提示、无跳转。
完整的Galileo AI平台 TypeScript/JS SDK 参考,用于评估、观察和保护 GenAI 应用。适用于构建 Node.js 或 TypeScript 项目。
- 路径必须指向
tsserver.js(不是tsserver或tsserver.cmd),且是相对于你用 Sublime 打开的文件夹(即项目根目录) - 项目级安装(推荐):填
"tsserver_path": "./node_modules/typescript/lib/tsserver.js" - 全局 npm 安装:先运行
npm list -g typescript,再拼出路径,例如/usr/local/lib/node_modules/typescript/lib/tsserver.js(macOS/Linux)或C:\Users\xxx\AppData\Roaming\npm\node_modules\typescript\lib\tsserver.js(Windows) - Windows 用户若用
.cmd包装器,仍要指向.js文件,不是.cmd
终端能跑 tsc --version ≠ tsserver 就可用
很多用户验证了 tsc 有输出,就以为万事大吉。但 tsserver 是独立可执行模块,版本必须和 tsc 严格一致,且需能被 Sublime 进程访问到。
- 在终端运行
tsserver --version,输出必须和tsc --version完全一致;若报command not found,说明node_modules/.bin不在当前 shell 的$PATH中 - macOS/Linux:检查
echo $PATH是否含~/.npm-global/bin或/usr/local/bin;若用pnpm,需确保项目内已执行pnpm add -D typescript - Windows:查系统环境变量,确认 Node.js 安装路径下的
node_modules.bin已加入PATH - Node.js 版本建议用 v18 或 v20;v16 在部分插件里有兼容问题,v14 已过时
别碰 TSCompleteMe 和 TypeScript-Sublime-Plugin
这两个插件是历史遗留坑。前者多年未更新,不兼容 Sublime Text 4,大量用户报告崩溃和补全失效;后者自带旧版内嵌 tsserver,不读 tsconfig.json,也不支持 moduleResolution: bundler 等现代配置。
- 只装
SublimeTSC(名称无空格,不是Sublime Text TypeScript) - 别装
TSFormatter或SublimeLinter-tslint:它们已废弃,不兼容 TS 4.0+ 和 ST4 - 装完
SublimeTSC后,打开.ts文件,状态栏左下角应显示TS,右键菜单出现TypeScript子项——这是最基础的连通性验证
最容易被忽略的是:即使所有路径都对,tsconfig.json 缺失或位置不对,tsserver 也会降级为默认配置,导致类型推导不准、lib 报错(比如 Cannot find name 'Promise')。务必把 tsconfig.json 放在 Sublime 打开的文件夹(项目根目录)下,且至少包含 {}。

















