# excel-process **Repository Path**: yangxuan_321/excel-process ## Basic Information - **Project Name**: excel-process - **Description**: 一个浏览器插件,可以使用SQL处理excel的神器 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-06-15 - **Last Updated**: 2025-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Excel Process Extension 一个支持 Excel/CSV 文件解析、SQL 高亮和多文件导入的 Chrome 扩展。 ## 主要特性 - 全屏 SQL 编辑器,支持 SQL 语法高亮和自定义关键字(如 load、skip、as 等) - 支持 `load file.` 语法自动弹出文件选择,支持 `skip N` 跳过 N 行 - 解析 Excel/CSV 文件并以表格形式美观展示 - 编辑器与数据操作彻底解耦,便于后续切换 Ace/Monaco 等编辑器 - 现代美观的 UI,弹窗为功能介绍页,点击三角形按钮进入全屏编辑 ## 目录结构 ``` ├── dist/ # 打包输出目录 ├── public/ # 静态页面(fullscreen.html, popup.html) ├── src/ # 核心源码 │ ├── editor.ts # 编辑器适配层(当前为Monaco,后续可切换Ace等) │ ├── data.ts # 数据解析与表格渲染 │ ├── fullscreen.ts # 主入口,桥接编辑器与数据操作 │ └── global.d.ts # 类型声明 ├── package.json # 依赖与脚本 ├── webpack.config.js # 构建配置 ├── .gitignore # Git忽略文件 └── README.md # 项目说明 ``` ## 依赖 - monaco-editor(可切换为 Ace Editor) - xlsx - encoding-japanese - 其他见 package.json ## 开发与构建 1. 安装依赖: ```bash npm install ``` 2. 开发调试: - 修改 `src/` 下源码,`public/` 下页面 3. 构建打包: ```bash npm run build ``` - 产物输出到 `dist/` 目录 4. 在 Chrome 扩展开发者模式下加载 `dist/` 目录 ## 编辑器与数据操作解耦说明 - 编辑器相关逻辑全部在 `src/editor.ts`,只负责文本输入/高亮/光标控制 - 数据解析、表格渲染全部在 `src/data.ts`,与编辑器无关 - 主入口 `src/fullscreen.ts` 只负责桥接两者 - **后续如需切换 Ace Editor,只需重写 `editor.ts`,无需改动数据解析和表格渲染逻辑** ## 如何切换 Ace Editor 1. 替换 `src/editor.ts` 为 Ace Editor 实现,暴露同样的接口(initEditor、getValue、setValue、setCursorTo、getLineCount、getLineLength) 2. 其它代码无需变动 ## 贡献与反馈 如有建议、Bug 或需求,欢迎提 Issue 或 PR!