Extension
本节汇总各编辑器插件的开发与发布流程。目前包含 VSCode / Neovim / Zed。
VSCode
VSCode 插件使用 Node/npm/VSCE 链路。推荐在 pixi 的 node 环境下操作以获得一致的工具链版本。
shell
# 准备环境(先安装 pixi)
pixi shell -e node
# 安装依赖(基于 package-lock)
pixi run install-vscode
# 打包扩展,产物位于 editors/vscode/*.vsix
pixi run build-vscode发布到 VSCode Marketplace(需要 VSCE_PAT 环境变量):
shell
pixi run publish-vscodeIMPORTANT
开发构建与本地打包的扩展不内置 clice 服务端(发布 CI 才会按平台注入),因此必须在 VSCode 设置中填写 clice.executable(或设置 CLICE_EXECUTABLE 环境变量)指向本地构建的二进制,否则扩展会提示找不到服务端。
开发与调试:
pixi shell -e node- 在
editors/vscode下运行npm run watch(增量构建) - VSCode 中使用”Run Extension/Launch Extension”调试配置,或执行
code --extensionDevelopmentPath=$(pwd)/editors/vscode
常用脚本(在 pixi shell -e node 下):
bash
npm run package # 等价于 pixi run build-vscode
npm run publish # 等价于 pixi run publish-vscode如果不使用 pixi,请自行准备 node.js >= 20(自带 npm)。扩展是仓库 npm workspace 的一部分,依赖安装在仓库根目录执行,打包在 editors/vscode 下执行:
bash
npm install # 在仓库根目录
cd editors/vscode
npm run packageNeovim
Neovim 插件位于 editors/nvim,使用 Lua 编写。目前功能仍在演进中。
- 将仓库路径加入
runtimepath,例如:set rtp+=/path/to/clice/editors/nvim - 或在本地创建软链接:
~/.config/nvim/pack/clice/start/clice-><repo>/editors/nvim - 需要
clice可执行文件可在$PATH中被找到
开发提示:代码量较小,可直接在 Neovim 中加载并通过 :messages/LSP 日志观察效果;格式化可使用 stylua(仓库中已提供 stylua.toml)。
Zed
Zed 插件位于 editors/zed,使用 Rust 和 zed_extension_api。
建议的本地验证流程:
bash
cd editors/zed
cargo build --release随后按 Zed 官方指南加载本地扩展(需安装 Zed CLI),在启动前确保 clice 已在 PATH 中。发布时同样遵循 Zed 扩展发布流程。