sublime text 默认不识别 .ts 文件,显示“plain text”是因未绑定语法;需手动点击右下角选“typescript”,若无该选项则先装 typescriptsyntax 插件,并在 syntax specific 设置中添加 "extensions": ["ts", "tsx"]。

Sublime Text 默认打开 .ts 文件就是纯文本,语法高亮不会自动生效——这不是插件没装,而是文件类型根本没被识别。
为什么装了插件还是 Plain Text?
Sublime 不会根据文件后缀自动关联语法;即使你已安装 TypeScript 插件(比如 TypeScriptSyntax 或官方 TypeScript),.ts 文件仍可能显示为 “Plain Text”,右下角状态栏毫无反应。
- 打开任意一个
.ts文件,点击右下角当前显示的语法名(如 “Plain Text”) - 在弹出菜单中选择 TypeScript(注意:不是 JavaScript、Babel、TypeScriptReact)
- 如果列表里没有
TypeScript,说明语法包还没装——此时必须先装TypeScriptSyntax(轻量、更新勤)或官方TypeScript包(功能全但略重) - 装完后建议进
Preferences → Settings – Syntax Specific,加一行:"extensions": ["ts", "tsx"],这样新建.tsx文件也会自动用 TypeScript 语法
装哪个语法高亮插件?别踩 TSFormatter 这个坑
很多用户搜“TypeScript 插件”误装了早已废弃的 TSFormatter 或 SublimeLinter-tslint,它们不兼容 TS 4.0+ 和 Sublime Text 4,装了反而干扰其他插件。
- 推荐只装
TypeScriptSyntax:体积小、专注语法高亮与基础折叠,GitHub 活跃维护中 - 如果你需要补全/跳转/错误提示等完整支持,那语法高亮只是第一步,后续必须配
SublimeTSC+tsserver,但TypeScriptSyntax仍是最佳搭档 - 别装
TypeScript-Sublime-Plugin(ms-vscode 官方老版):它自带过时内嵌tsserver,不读tsconfig.json,也不支持moduleResolution: bundler等现代配置
语法高亮有了,但没错误提示?那是功能边界问题
语法高亮 ≠ 类型检查。仅靠 TypeScriptSyntax 插件,你只能看到颜色和缩进,不会有红色波浪线、Ctrl+Click 跳转、悬停类型提示——这些全部依赖本地 tsserver 进程,而它由 SublimeTSC 插件启动并桥接。
- 确认终端能运行
tsc --version和tsserver --version,且两者版本一致 - 若用
pnpm或yarn管理项目,tsserver很可能只装在node_modules/.bin里,全局不可见 → 此时必须手动填tsserver_path -
tsserver_path必须指向tsserver.js(不是tsserver可执行文件),路径是相对于你用 Sublime 打开的文件夹(即项目根目录) - 例如项目级安装:填
"./node_modules/.bin/tsserver"(macOS/Linux)或"./node_modules/.bin/tsserver.cmd"(Windows)
语法高亮是最表层的一层,容易以为“装了就完事”,但真正卡住人的,永远是后面那层:tsserver 路径对不对、Node 版本稳不稳、tsconfig.json 在不在项目根目录——这些细节一错,编辑器就退回“高级记事本”状态。











