# CodeForge **Repository Path**: skylonng_admin/CodeForge ## Basic Information - **Project Name**: CodeForge - **Description**: C++编程助手,集多种语言跨平台编译 - **Primary Language**: C++ - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-18 - **Last Updated**: 2026-10-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CodeForge 从 DeepSeek 会话导出中整理、重建并升级的**跨平台 C/C++ 代码编辑器与多语言构建工具**。 - **定位**:Windows / Linux / macOS 三平台的轻量 IDE,支持 C、C++、JavaScript、TypeScript、Python、Lua、Go。 - **状态**:`0.5.3`。核心层 / CLI / 自研 UI 在 Windows + MSVC 2022 构建通过,**59 项自动化测试全绿**;已实现 CMake 与鸿蒙构建、项目内搜索、符号索引/定义/引用/补全/大纲。桌面界面为自研实现(Win32 + Direct2D + DirectWrite),不依赖 Qt 或其他 UI 框架。 - **来源**:`deepseek_data-2026-10-27.zip` 中会话《跨平台代码编辑器与编译器框架》(2026-08-28,23 条消息、229 个代码块)。 > `src/` 是**可构建、可测试**的重写实现。原始会话代码与旧 Qt 外壳已从 master 移除;如需审计,可从历史提交获取:`git show a1dab86:legacy/original_snapshot/...`,评估结论见 [docs/03-代码质量评估.md](docs/03-代码质量评估.md)。 ![CodeForge 自研 UI](docs/assets/ui-outline-0.5.3.png) ## 快速开始 ```bash # 1. 配置 cmake -S . -B build -DCODEFORGE_BUILD_TESTS=ON # 或使用预设:cmake --preset windows-msvc # 2. 构建(核心 + CLI + 自研 UI + 测试) cmake --build build --config Release --parallel # 3. 测试 ctest --test-dir build -C Release --output-on-failure # 4. 工具链自检(真实编译并运行 hello-world) ./build/bin/Release/codeforge doctor --check # 5. 启动编辑器 ./build/bin/Release/codeforge-ui path/to/file.cpp ``` 命令行构建: ```bash ./build/bin/Release/codeforge new demo --lang cpp --dir . ./build/bin/Release/codeforge build demo/demo.cfproj ./build/bin/Release/codeforge run demo/demo.cfproj ``` 界面能力:多标签编辑、行号、当前行高亮、语法着色、选区、撤销/重做、查找栏、 诊断点击跳转、拖放打开、缩放、最近文件、`Ctrl+B` 构建、`F5` 运行、输出面板、状态栏。 ## 目录结构 ``` codeforge/ ├── CMakeLists.txt # 单一构建入口:core / cli / ui / tests ├── CMakePresets.json # debug / release / windows-msvc / ui 预设 ├── include/codeforge/ # 公共 API(零第三方依赖) ├── src/core/ # 进程、工具链、构建、诊断、项目、JSON、鸿蒙 ├── src/cli/main.cpp # codeforge 命令行 ├── src/ui/ # 自研桌面 UI │ ├── canvas.hpp # 绘制抽象(矩形/文本/裁剪/度量) │ ├── win32_window.* # Win32 窗口 + Direct2D/DirectWrite 后端 │ ├── editor.* # 文本缓冲、光标、选区、撤销、语法着色 │ ├── app.* # 标签栏、输出面板、状态栏、构建线程 │ └── text_util.* # UTF-8/UTF-16 与文件读写 ├── tests/ # 59 项单元/集成测试,CTest 驱动 ├── resources/templates/ # 新建项目模板 ├── examples/harmony_app/ # 已验证可构建的最小鸿蒙工程(2in1) ├── examples/cmake_app/ # 多文件 CMake 示例(静态库 + 可执行) ├── docs/ # 资料、架构、评估、问题、路线图、验证 └── .github/workflows/ci.yml # 三平台核心矩阵 ``` ## 能力边界(0.3.0) | 能力 | 状态 | | --- | --- | | 单文件编译运行(C/C++,MSVC/GCC/Clang 自动选择) | ✅ 已实现并测试 | | 诊断解析与结构化输出(`--json`,schema v1) | ✅ 已实现并测试 | | 工具链自检(`doctor --check`:编译并运行) | ✅ 已实现并测试 | | 脚本语言检查/运行(JS/TS/Python/Lua)与 Go 构建 | ✅ 已实现(本机验证 JS/Python) | | 项目脚手架与 `.cfproj` 读写 | ✅ 已实现并测试 | | 多文件 CMake 工程(配置/构建/诊断/运行/presets) | ✅ 已实现并集成测试 | | 项目内搜索 Find in Files(CLI + UI 面板) | ✅ 已实现并测试 | | 语言服务(索引 / 定义 / 引用 / 补全 / 大纲 / F12 / 成员补全 / 继承) | ✅ 已实现并测试 | | 编辑器基础能力(括号匹配 / 自动缩进 / 自绘菜单 / 增量高亮 / 多光标) | ✅ 已实现 | | 插件平台(C ABI / 类型 / 钩子 / UI 面板 / 沙箱 / 签名白名单) | ✅ 已实现并测试 | | 发布打包(Windows 便携 ZIP + 插件白名单) | ✅ 0.9.0 已打包验证 | | 构建加固(无指纹路径 / 版本资源 / 签名入口) | ✅ 0.12.1 | | 自研覆盖率工具(无外部工具依赖) | ✅ 0.13.0,基线 71.6% | | 自研语法检查(check CLI,无 clangd) | ✅ 0.14.0 | | 调试(DAP 客户端 + UI 面板 + 单步/求值 / mock 验证) | ✅ 0.11.0 已实现,真实适配器待接 | | 查找替换(Ctrl+H / Replace All / 大小写) | ✅ 已实现并截图验证 | | 自研桌面 UI(编辑/着色/标签/输出/状态栏) | ✅ Windows 后端已实现并截图验证 | | 鸿蒙目标平台(工程解析 / hvigor 构建 / 本地自签名 / hdc 安装 / aa 启动) | ✅ 构建与签名已真实验证(SDK 6.0 / hvigor 6.26.8);安装与启动待真机 | | 查找栏 / 诊断跳转 / 拖放 / 缩放 / 最近文件 | ✅ 已实现并验证(拖放待交互桌面) | | 构建不阻塞 UI(工作线程 + 消息回传) | ✅ 已实现 | | IME 中文输入 | 🟡 代码已接入,未在真实输入法下验证 | | 混合 DPI(Per-Monitor V2) | ❌ 计划 0.4 | | CMake preset / 多目标矩阵 | ❌ 计划 0.4.1 | | Linux / macOS 的 UI 后端 | ❌ 计划 0.4.x | | 断点调试 / 语言服务 | ❌ 计划 0.5.0 | | 插件系统 | ❌ 计划 0.6.0 | ## 文档 | 文档 | 内容 | | --- | --- | | [docs/01-资料来源与整理方法.md](docs/01-资料来源与整理方法.md) | 数据来源、提取规则、还原度与隐私处理 | | [docs/02-架构说明.md](docs/02-架构说明.md) | 分层、模块、数据流、关键设计决策 | | [docs/03-代码质量评估.md](docs/03-代码质量评估.md) | 量化指标、缺陷举证、开发水平评分 | | [docs/04-问题清单.md](docs/04-问题清单.md) | P0–P3 问题 28 项,含修复建议 | | [docs/05-版本路线图.md](docs/05-版本路线图.md) | 0.2 → 1.0 的功能、验收标准与技术债计划 | | [docs/06-构建与使用.md](docs/06-构建与使用.md) | 环境要求、构建、CLI 参考、故障排查 | | [docs/07-验证记录.md](docs/07-验证记录.md) | 构建、44 项测试、自检与 CLI/UI 端到端记录 | | [docs/08-自研UI方案.md](docs/08-自研UI方案.md) | 参考资料、分层、绘制/输入/DPI、跨平台路线与限制 | | [docs/09-鸿蒙PC支持方案.md](docs/09-鸿蒙PC支持方案.md) | 官方工具链、目标/宿主分层、命令实现、验证与路线 | | [docs/10-鸿蒙环境部署与验证.md](docs/10-鸿蒙环境部署与验证.md) | Command Line Tools / DevEco 安装、环境变量、验证清单与排障 | | [legacy/README.md](legacy/README.md) | 原始快照文件清单与来源消息编号 | ## 许可 当前仓库未声明开源许可证。原始会话代码的版权归属需由资料所有者在发布前确认。