# Snow-IntelliJ **Repository Path**: jcnc-org/snow-intelli-j ## Basic Information - **Project Name**: Snow-IntelliJ - **Description**: Snow 编程语言 IDEA 插件。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: https://snow-lang.com/ - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 2 - **Created**: 2025-10-09 - **Last Updated**: 2025-11-11 ## Categories & Tags **Categories**: idea-plugins **Tags**: None ## README # Snow IntelliJ IDEA 插件 一个为 IntelliJ IDEA 平台开发的 Snow 语言支持插件,为现代 AI 时代的编程语言提供完整的 IDE 功能集成。 ## 项目简介 Snow 是一门为 LLM(大语言模型)时代设计的现代编程语言,旨在让 AI 更容易理解和生成代码,提高人机协同编程的效率和一致性。 本插件由 Snow 官方团队开发,为 IntelliJ 平台提供全面的语言支持。 Snow 编程语言仓库: [https://gitee.com/jcnc-org/snow](https://gitee.com/jcnc-org/snow) ## 核心功能 ### 语法高亮 - 支持 Snow 语言的语法高亮 - 可自定义颜色配置 - 实时同步更新 ### 代码编辑 - 智能代码补全:基于上下文的关键字和标识符建议 - 语法和语义诊断:实时错误检测和提示 - 代码格式化:内置格式化器保持代码风格一致 ### 导航和重构 - **Go to Definition(跳转到定义)**:快速导航到符号定义 - **Find Usages(查找引用)**:查找标识符的所有使用位置 - **Go to Symbol(按名称导航)**:快速定位函数、模块、结构体等 - **Rename(重命名)**:支持安全的符号重命名 ### 项目管理 - 自动识别 Snow 项目结构 - 解析源文件和模块依赖 - 新项目向导,快速创建 Snow 项目 - SDK 配置支持 ### 代码执行 - 运行配置:支持 Snow 程序的执行 - 编译模式切换 - 编译缓存优化 ### 文档支持 - 内置类型文档 - 快速文档查看 - Snow 语言文档注释支持 ### LLM 协同优化 - 代码结构和语义标签设计便于 AI 理解和生成 - 完整的符号系统(函数、模块、结构体、变量等) ## 系统要求 - **IntelliJ IDEA 版本**:2025.1.4.1 或更新 - **Java 版本**:JVM 21+ - **Kotlin 版本**:2.1.0+ ## 项目架构 ### 核心模块 ``` src/main/kotlin/org/jcnc/snowintellij/ ├── actions/ # 用户操作入口(创建文件、切换编译模式等) ├── compiler/ # 编译器相关逻辑 │ ├── adapter/ # Lexer/Parser 适配器 │ ├── builder/ # 描述符构建器 │ ├── error/ # 错误处理 │ └── model/ # 数据模型 ├── documentation/ # 文档提供者 ├── findusages/ # 查找使用位置功能 ├── highlight/ # 语法高亮 ├── lexer/ # 词法分析 ├── navigation/ # 导航处理器 ├── parser/ # 语法分析 ├── psi/ # 程序结构接口 (PSI) │ └── impl/ # PSI 实现类 ├── references/ # 符号引用解析 ├── run/ # 运行配置 ├── sdk/ # SDK 类型与工具 ├── symbols/ # 符号系统 ├── templates/ # 文件模板 └── util/ # 工具类 ``` ## 开发指南 ### 环境准备 1. **安装 IntelliJ IDEA**(推荐 2025.1.4.1 或更新版本) 2. **配置 JDK 21** 3. **克隆项目** ```bash git clone https://gitee.com/jcnc-org/snow-intelli-j cd snow-intellij ``` ### 构建项目 使用 Gradle 构建插件: ```bash # Windows ./gradlew.bat build # Linux/macOS ./gradlew build ``` ### 运行和调试 使用 IntelliJ IDEA 自带的 Gradle 任务: 1. 在 IDE 中打开项目 2. 运行 Gradle 任务:`runIde` 启动开发 IDE 3. 或使用 `runIdeForUiTests` 进行 UI 测试 ### 技术栈 - **编程语言**:Kotlin - **构建工具**:Gradle(Gradle Kotlin DSL) - **依赖库**: - `org.jcnc.snow:snow-frontend-lexer` (0.11.0) - `org.jcnc.snow:snow-frontend-parser` (0.11.0) - **IDE 平台**:IntelliJ Platform SDK (2025.1.4.1) ## 文件说明 | 文件/目录 | 说明 | |-----------------------|---------------------| | `src/main/kotlin/` | 主源代码目录 | | `src/main/resources/` | 资源文件(插件配置、国际化信息等) | | `build.gradle.kts` | Gradle 构建配置 | | `gradle.properties` | Gradle 属性配置 | | `gradlew.bat` | Windows Gradle 包装脚本 | ## 扩展点注册 插件在 `META-INF/plugin.xml` 中注册了以下扩展点: - **文件类型**:Snow 文件类型注册 - **语法高亮**:`SnowSyntaxHighlighterFactory` - **颜色设置**:`SnowColorSettingsPage` - **文件模板**:`SnowFileTemplateProvider` - **SDK 类型**:`SnowSdkType` - **运行配置**:`SnowRunConfigurationType` - **项目向导**:`SnowNewProjectWizard` - **导航**:`SnowGotoDeclarationHandler`、`SnowChooseByNameContributor` - **查找使用**:`SnowFindUsagesProvider` - **文档**:`SnowDocumentationProvider` - **引用解析**:`SnowReferenceContributor` ## 插件操作 ### 工具栏操作 - **编译模式切换**:在主工具栏右侧快速切换编译模式 - **创建 Snow 文件**:在新建文件菜单中快速创建 Snow 源文件 ## 贡献指南 欢迎提交 Issue 和 Pull Request! ### 步骤 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feat/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feat/AmazingFeature`) 5. 开启 Pull Request ## 许可证 本项目采用 [Apache-2.0](LICENSE) 许可证。 ## 联系方式 - **Snow 官方网站**:[https://snow-lang.com](https://snow-lang.com) - **JetBrains Marketplace**:[https://plugins.jetbrains.com/plugin/28718-snow](https://plugins.jetbrains.com/plugin/28718-snow) - **问题反馈**:[Gitee Issues](https://gitee.com/jcnc-org/snow-intelli-j/issues) --- **Snow Team** © 2025 | Designed for the AI Era