必须手动绑定后缀:点击右下角Plain Text→Open all with current extension as…→Nim,否则即使装对插件仍显示Plain Text;同时需确认Packages/Nim/Syntaxes/Nim.tmLanguage存在,且勿误装NimLSP。
装完插件后打开 .nim 文件,右下角仍显示 Plain Text —— 这不是插件没装好,而是 Sublime 默认不绑定后缀。它不会自动把 .nim 和 Nim 语法关联起来。
Plain Text → Open all with current extension as… → 选 Nim
Packages/User/ 下生成隐式规则,后续所有 .nim 文件都会自动高亮Packages/Nim/Syntaxes/Nim.tmLanguage 是否存在(可通过 Preferences → Browse Packages… 进入)NimLime 或 Nim Language Support 任选其一即可,NimLSP 是服务端组件,装了也没高亮效果终端能跑 nim --version,但 Sublime 按 Ctrl+B 就报找不到命令 —— 这是 macOS/Linux GUI 应用不继承 shell 的 PATH 导致的,和插件无关。
PATH,直接在构建系统里写死路径:菜单 → Tools → Build System → New Build System…
"cmd" 中的路径):{ "cmd": ["/Users/yourname/.nimble/bin/nim", "c", "-r", "$file"], "selector": "source.nim", "working_dir": "$file_path" }
Nim.sublime-build,文件名必须带 .sublime-build 后缀,且必须存到 Packages/User/ 目录下Ctrl+B 前,确认右下角 Build System 已手动选中刚建的 Nim
点击函数名没反应,或跳进 std/seqs.nim 而不是你自己的模块 —— 这是 nimsuggest 服务没启用或版本不匹配。
nimsuggest 在 Nim 1.6+ 已内置,旧版需单独编译:nim c -d:release $NIM_PATH/tools/nimsuggest
nimsuggest 可执行文件在 PATH 中,或在 LSP 插件配置里显式指定路径command not found: nimsuggest,不是插件问题,是环境变量没透给 Sublimenim.cfg 或 project.nim.cfg,否则 nimsuggest 不知道该索引哪些路径装了 LSP 插件但补全延迟明显,甚至光标卡住 —— nimsuggest 对项目结构敏感,尤其在含大量 import 或跨模块依赖时。
.nim 文件;始终用 File → Open Folder 加载整个项目import,特别是 std 外的第三方包,nimsuggest 会尝试索引所有依赖源码static 或 compileTime 计算,nimsuggest 可能卡在宏展开阶段,暂时注释掉再试semanticTokens,对 Nim 效果有限还拖慢响应,可在 LSP 设置里关掉PATH 隔离,几乎每次重装 nim 或 choosenim 后都要重新校准构建系统路径。