Kratos Proto Generator
这是一个 VSCode 插件,用于快速生成 Kratos 框架的 proto 文件和配置文件。 
功能
- 生成 Proto 客户端代码
 
- 生成 Service 服务端代码
 
- 生成配置文件
 
- 执行 wire 命令
 
- Go 接口和结构体跳转:智能识别接口与实现的关系,支持双向跳转
 
 
要求
- VSCode 1.80.0 或更高版本
 
- 已安装 Kratos CLI 工具
 
- 已安装 wire 工具
 
 
安装
- 克隆此仓库
 
- 运行 
npm install 安装依赖 
- 按 F5 启动调试模式
 
- 在新打开的 VSCode 窗口中测试插件
 
 
使用方法
生成 Proto 和 Service 代码
- 在 VSCode 中打开包含 proto 文件的项目
 
- 在文件浏览器中找到任意 
.proto 文件(不包括 conf.proto) 
- 右键点击文件,您将看到两个选项:
- "生成 Proto 客户端" - 生成 proto 客户端代码
 
- "生成 Service 服务端" - 生成 service 服务端代码
 
 
 
- 选择需要的选项,等待命令执行完成
 
 
  
生成配置文件
- 在 VSCode 中打开包含 
conf.proto 文件的项目 
- 在文件浏览器中找到 
conf.proto 文件 
- 右键点击文件,选择 "生成配置文件"
 
- 等待 
make config 命令执行完成 
 
  
执行 Wire 命令
- 在 VSCode 中打开项目
 
- 在文件浏览器中找到 
cmd 目录下的任意子目录 
- 右键点击目录,选择 "执行 wire"
 
- 等待 wire 命令执行完成
 
 
  
Go 接口和结构体跳转
这个功能可以帮助您在 Go 代码中快速在接口和实现之间跳转,提高开发效率。 
功能特点
- 智能识别:自动识别接口与结构体的实现关系
 
- 双向跳转:支持从接口跳转到实现,从实现跳转到接口
 
- 方法级跳转:精确到具体方法的跳转
 
- 多实现支持:一个接口多个实现时显示选择列表
 
- 实时更新:监听文件变化,自动更新跳转关系
 
 
使用方法
在接口方法上: 
- 代码上方会显示 
$(arrow-right) 跳转到实现 或 $(arrow-right) N 个实现 
- 点击即可跳转到对应的结构体方法实现
 
- 多个实现时会显示选择列表
 
 
 
在结构体方法上: 
- 代码上方会显示 
$(arrow-left) 跳转到接口 或 $(arrow-left) N 个接口 
- 点击即可跳转到对应的接口方法定义
 
 
 
右键菜单: 
 
 
配置选项
在 VS Code 设置中可以配置以下选项: 
kratosProtoGenerator.enableGoJump:启用/禁用 Go 跳转功能(默认:true) 
kratosProtoGenerator.goJumpCacheSize:缓存大小限制(默认:1000) 
 
示例
参考 samples/go_jump_sample.go 文件查看完整的使用示例。 
注意事项
- 确保已正确安装 Kratos CLI 工具
 
- 生成 Proto 和 Service 代码时,确保 proto 文件不是 
conf.proto 
- 生成配置文件时,确保项目根目录下有 
Makefile 且包含 config 目标 
- 执行 wire 命令时,确保已安装 wire 工具
 
- 确保有足够的权限执行命令
 
 
命令说明
生成 Proto 客户端: 在 proto 文件所在目录执行 kratos proto client 命令 
生成 Service 服务端: 在项目根目录执行 kratos proto server 命令,生成的文件保存在 internal/service 目录 
生成配置文件: 在项目根目录执行 make config 命令生成配置文件 
执行 wire: 在选中的 cmd 子目录下执行 wire 命令 
 
 |  |