sublime 默认不识别 .kt 文件是因为其未内置 kotlin 词法分析器,需通过 package control 安装 jaredly 维护的 kotlin 插件,并手动绑定文件类型才能实现语法高亮。

为什么 Sublime 默认不识别 .kt 文件?
Sublime Text 本身不内置 Kotlin 支持,.kt 文件会被当成纯文本或 fallback 到其他语言(比如 Java),导致关键字、字符串、注释全无颜色区分。这不是你配置错了,是它压根没装这个“词法分析器”。
- Kotlin 语法高亮依赖第三方 package:Kotlin(由
jaredly 维护)或 Kotlin Language(较老,已基本弃用)
- 官方 Package Control 源里搜到的第一个
Kotlin 就是对的,别选带 “Language” 后缀或标了 “Deprecated” 的
- 安装后需重启 Sublime 或手动触发
View → Syntax → Kotlin 才生效,否则新建 .kt 文件仍显示为 Plain Text
安装 Kotlin 高亮包的实操步骤
别去 GitHub 下 zip 手动解压——容易路径错、缺依赖、更新难。用 Package Control 最稳:
- 确保已装 Package Control(没装就先 Ctrl+Shift+P → 输入
Install Package Control 回车)
- Ctrl+Shift+P 打开命令面板,输入
Package Control: Install Package 回车
- 等几秒加载完列表,输入
Kotlin,选中那个作者是 jaredly 的条目回车
- 安装完成无提示,但状态栏右下角会闪一下 “Kotlin installed”;此时打开任意
.kt 文件,右下角应显示 Kotlin 而非 Plain text
文件关联和自动检测失效怎么办?
即使装了包,双击 MyActivity.kt 还是灰白一片?大概率是文件扩展名没绑定,或 Sublime 记住了错误的 syntax。
- 手动设置一次:打开
.kt 文件 → View → Syntax → Open all with current extension as… → Kotlin
- 或更彻底:菜单
View → Syntax → Kotlin,然后 Preferences → Settings – Syntax Specific,确认右侧 JSON 里有 "syntax": "Packages/Kotlin/Kotlin.sublime-syntax"
- 如果之前用过其他 Kotlin 插件(比如旧版
Kotlin Language),卸载它再重启,否则两个 syntax 规则可能冲突,导致高亮闪烁或部分失效
Android 开发中要注意的兼容细节
Kotlin 高亮包本身不依赖 Android SDK,但它对 DSL(如 Gradle Kotlin Script .kts)支持有限:
-
.kts 文件默认不会被识别为 Kotlin,需单独绑定:同上操作,用 Open all with current extension as… → Kotlin
- Android 特有语法(如
@Composable、by viewModels())属于语义层,高亮包只管词法(关键字/括号/字符串),不会标出这些 annotation 或 delegate 的特殊颜色——这正常,别误以为插件坏了
- 如果发现 lambda 参数(如
{ it.name })里 it 没变色,是当前语法定义未覆盖该上下文,不是 bug,也无需修复;真要深色标注得靠 LSP + kotlin-language-server,那已是另一层了
jaredly 维护)或 Kotlin Language(较老,已基本弃用) Kotlin 就是对的,别选带 “Language” 后缀或标了 “Deprecated” 的 View → Syntax → Kotlin 才生效,否则新建 .kt 文件仍显示为 Plain Text - 确保已装 Package Control(没装就先 Ctrl+Shift+P → 输入
Install Package Control回车) - Ctrl+Shift+P 打开命令面板,输入
Package Control: Install Package回车 - 等几秒加载完列表,输入
Kotlin,选中那个作者是jaredly的条目回车 - 安装完成无提示,但状态栏右下角会闪一下 “Kotlin installed”;此时打开任意
.kt文件,右下角应显示Kotlin而非Plain text
文件关联和自动检测失效怎么办?
即使装了包,双击 MyActivity.kt 还是灰白一片?大概率是文件扩展名没绑定,或 Sublime 记住了错误的 syntax。
- 手动设置一次:打开
.kt 文件 → View → Syntax → Open all with current extension as… → Kotlin
- 或更彻底:菜单
View → Syntax → Kotlin,然后 Preferences → Settings – Syntax Specific,确认右侧 JSON 里有 "syntax": "Packages/Kotlin/Kotlin.sublime-syntax"
- 如果之前用过其他 Kotlin 插件(比如旧版
Kotlin Language),卸载它再重启,否则两个 syntax 规则可能冲突,导致高亮闪烁或部分失效
Android 开发中要注意的兼容细节
Kotlin 高亮包本身不依赖 Android SDK,但它对 DSL(如 Gradle Kotlin Script .kts)支持有限:
-
.kts 文件默认不会被识别为 Kotlin,需单独绑定:同上操作,用 Open all with current extension as… → Kotlin
- Android 特有语法(如
@Composable、by viewModels())属于语义层,高亮包只管词法(关键字/括号/字符串),不会标出这些 annotation 或 delegate 的特殊颜色——这正常,别误以为插件坏了
- 如果发现 lambda 参数(如
{ it.name })里 it 没变色,是当前语法定义未覆盖该上下文,不是 bug,也无需修复;真要深色标注得靠 LSP + kotlin-language-server,那已是另一层了
.kt 文件 → View → Syntax → Open all with current extension as… → Kotlin View → Syntax → Kotlin,然后 Preferences → Settings – Syntax Specific,确认右侧 JSON 里有 "syntax": "Packages/Kotlin/Kotlin.sublime-syntax" Kotlin Language),卸载它再重启,否则两个 syntax 规则可能冲突,导致高亮闪烁或部分失效 .kts)支持有限:
-
.kts文件默认不会被识别为 Kotlin,需单独绑定:同上操作,用Open all with current extension as… → Kotlin - Android 特有语法(如
@Composable、by viewModels())属于语义层,高亮包只管词法(关键字/括号/字符串),不会标出这些 annotation 或 delegate 的特殊颜色——这正常,别误以为插件坏了 - 如果发现 lambda 参数(如
{ it.name })里it没变色,是当前语法定义未覆盖该上下文,不是 bug,也无需修复;真要深色标注得靠 LSP + kotlin-language-server,那已是另一层了
Kotlin 高亮只是起点,真正写 Android 时你会很快遇到没类型提示、跳转不到源码、重构报错这些问题——那些跟 syntax highlight 无关,是 Sublime 缺少语言服务器支持。先把 .kt 看清楚,别的先放一放。










