本项目全部用ai实现,不知道是不是有bug,本人小白,不会编程,写这个插件是为了实现打破某插件的付费机制,亲测应该是可以实现基本功能,还快!
面向中文开发者的智能输入法切换扩展,专注「写代码时少打断」。
English README: README.en.md
SmartIME 会根据你正在编辑的位置自动决定中英文输入态:
...。从 VSIX 安装...。smartime-*.vsix。
npm install。npm run compile。F5 启动 Extension Development Host。smartime-*.zip。Settings/Preferences -> Plugins。Install Plugin from Disk...。smartime-*.zip 并确认安装。说明:
dist/*.zip。显示 SmartIME 菜单。SmartIME 中/英 切换。smartInput.ime.getStateCommandsmartInput.ime.switchToChineseCommandsmartInput.ime.switchToEnglishCommandsmartInput.evaluateDebounceMs:自动切换判定防抖。smartInput.ime.pollingIntervalMs:系统输入态轮询间隔。smartInput.ime.liveSyncOnActivity:光标活动时快速同步系统输入态。smartInput.ime.liveSyncMinIntervalMs:活动同步最小间隔。smartInput.ime.liveSyncDebounceMs:活动同步防抖。src/extension.ts:VS Code 事件编排与场景切换入口。src/contextDetector.ts:编辑区上下文识别。src/imeController.ts:输入法状态查询与切换封装。tools/ime-worker/main.go:Windows 下 Go worker。jetbrains-adapter/:JetBrains 适配子工程。package.json。npm run compile。F5 在扩展调试窗口验证。npm run build:ime-workertools/ime-worker.exenpm run build:jetbrains:local仓库当前通过 CNB 远端构建并发布两个安装包:
dist/*.vsixdist/*.zip发布流水线定义在 .cnb.yml,tag 发布时会自动构建并上传这两类附件。
默认优先 Go worker,脚本命令用于回退(get / zh / en):
getStateCommand: powershell -NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File <扩展目录>/tools/ime-mode.ps1 getswitchToChineseCommand: powershell -NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File <扩展目录>/tools/ime-mode.ps1 zhswitchToEnglishCommand: powershell -NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File <扩展目录>/tools/ime-mode.ps1 en如果你在使用中遇到误切换、延迟或场景识别问题,欢迎带上复现步骤和文件类型反馈。