
嘉立创EDA代码编辑器
嘉立创EDA代码编辑器
OSHWHub87Ace Code Editor for EDA 编辑进化
一个轻量级、可嵌入的 JavaScript 代码编辑器,基于 Ace Editor 构建,专为 嘉立创EDA(Embedded Development Assistant) 环境设计。支持语法高亮、智能补全、自定义词库和一键运行代码。
中文联想支持

AI智能注释

AI智能报错分析

两套主题流畅切换

通过npm run dev 构建全新的提示词工程
特性
- Monokai 主题:护眼暗色风格,与开发者习惯一致
- JavaScript 语法高亮 & 智能补全
- 左侧可滚动功能侧边栏(预留扩展位)
- “运行”按钮:直接
eval()执行编辑器中的代码 - 自定义词库支持:可注入内部 API 实现智能提示
- 零依赖动态加载:所有资源静态引用,无需网络请求
- 响应式布局:适配 iframe 嵌入场景
目录结构
/iframe/
└── script/
└── Ace_Editor/ # Ace 核心资源(必须部署到此路径)
├── ace.js
├── ext-language_tools.js
├── mode-javascript.js
├── theme-monokai.js
└── worker-javascript.js (可选)
└── main/
└── index.html # 本编辑器主页面
确保 Ace_Editor/ 文件夹已完整上传至 EDA 服务器的 /iframe/script/ 目录。
自定义词库(API 智能提示)
在 index.html 的初始化脚本中添加自定义补全规则:
// 示例:添加词库
editor.completers.push({
getCompletions: function (editor, session, pos, prefix, callback) {
var completions = [
{ name: 'myFunction', value: 'myFunction', score: 1000, meta: 'custom' },
// ... 其他补全项
];
callback(null, completions);
},
});
支持动态更新词库,适用于内部 SDK 或平台 API。
AI 后端支持配置教程
要启用 AI 智能补全、注释生成及错误分析等高级功能,您需要配置本地 AI 后端服务:
-
下载 ECT(EDA Code Tool)拓展包
访问 GitHub Release 页面,下载最新
.exe文件(Windows)或对应平台的可执行文件。 -
运行 ECT 工具
双击运行下载的
.exe文件,将自动启动本地 AI 代理服务(默认监听http://127.0.0.1:5000)。 -
配置 OneAPI 令牌与模型
首次运行时,工具会提示您在命令行中输入以下信息:
- OneAPI 地址(例如:
http://localhost:5000/v1) - 访问令牌(API Key)
- 默认模型名称(如
gpt-4o,claude-3-5-sonnet,qwen-max等)
提示:ECT 支持统一管理多个模型,只需配置一次 OneAPI 接口即可切换使用不同模型。
- OneAPI 地址(例如:
-
在 EDA 编辑器中启用 AI 功能
确保 EDA 内嵌的 Ace 编辑器能访问
http://127.0.0.1:5000,并在初始化时启用 AI 补全模块(通常通过cc模式调用)。
注意:AI 功能依赖本地运行的 ECT 服务,请勿关闭命令行窗口。如需后台运行,可将其注册为系统服务或使用 nohup(Linux/macOS)。
开发与扩展
添加新功能按钮
在左侧侧边栏动态插入按钮(可在编辑器中运行以下代码测试):
const li = document.createElement('li');
const btn = Object.assign(document.createElement('button'), {
textContent: '保存',
style: 'width:80px;height:36px;background:#272822;color:white;border:1px solid #666;border-radius:4px;font-size:14px;cursor:pointer;',
});
btn.onclick = () => eda.sys_Message.showToastMessage('假装保存了代码', 'info', 1);
document.querySelector('#sidebar ul').appendChild(li).appendChild(btn);
扩展建议
- 添加 清空、格式化、导出 按钮
- 集成
localStorage实现代码自动保存 - 替换
eval()为沙箱执行环境(如Function构造器)
注意事项
eval()安全风险:仅限可信环境使用(如内部 EDA 工具)- Worker 已禁用:避免 EDA iframe 中的 CSP 限制问题
- 路径敏感:资源路径必须为
/iframe/script/Ace_Editor/xxx.js(区分大小写)
许可证
本项目基于 Ace Editor 构建,遵循其开源协议(BSD License)。
UI 和集成代码可自由用于内部开发。
Made with ❤️ for EDA developers
Happy Coding!
2.2.1
优化
- 删除了编辑器的滚动条
- 修复了引入资源路径错误导致的报错
2.1.4
优化
- 优化补全自动注释
- 优化补全自动空格
- 更全的工作区支持
- 修改部分亮色背景适配EDA风格
新增
- 增加代码格式化
2.1.3
新增
- 现在支持直接在编辑器中调用异步函数而不需要定义async或链式调用了
2.1.2
新增
- 新增主窗口支持最大化和最小化
- 新增Ctrl+S触发保存
- 新增更友好的AI辅助提示
- 新增支持自动缓存上次内容(某次忘记保存导致半小时白干才想起来需要这个)
- 新增支持导出当前代码为JS
2.1.1
新增
- 支持Ctrl+H进行替换和Ctrl+F进行搜索
修改
- 修改增加到列表的触发方式改为直接触发
1.12.5
新增
- 新增支持快捷导入JS文件格式
- 新增插件仓库,支持将代码保存为插件,加载时自动启动
- 新增右键菜单,对于已经注册的代码,支持右键跳转到嘉立创EDA文档地址
修改
- 修改部分提示为中文
- 修改构建脚本,构建的代码补全库新增"return"字段
- 修改补全文档解释,增加返回值提示,增加无参数提示
1.12.4
新增
- 新增补全项中带参数注释
- 优化npm run dev 中构建的文件带参数注释
1.12.3
修改
- 变更扩展名称、扩展描述、扩展信息等内容
1.12.2
新增
- 新增支持保存代码为左侧快捷按钮
修改
- 修改了按钮布局
- 修复了indexDB冲突导致的一些BUG
1.12.1
新增
- 新增支持代码的增删改查操作
- 新增两种主题风格的切换
- 新增了一个AI后端集成拓展包
- 新增快捷跳转嘉立创EDA扩展广场
1.0.0
初始版本

类型
关键词
扩展信息
| 版本 | v2.2.1 |
| 发布者 | 嘉立创EDA |
| 发布时间 | 2026-02-02 10:36:05 |
| 名称 | eext-api-debug-tool |
| UUID | 7ca98ae04b7142599ab107e34acc8e5e |
| 适用EDA版本 | ^2.2.0 |
| 报告 | 报告滥用 |
评论