本页面提供设置 Tabby 开发环境的说明,以便您能为此项目做出贡献。它涵盖了先决条件、安装步骤、项目构建和开发版本运行。有关插件开发的信息,请参阅插件开发。
Tabby 使用以下技术构建
应用程序被结构化为一组模块,这些模块在构建时组合在一起。插件架构允许在不修改核心代码库的情况下扩展功能。
在设置开发环境之前,请确保已安装以下软件
| 平台 | 其他要求 |
|---|---|
| Windows | 带 C++ 支持的 Visual Studio Build Tools |
| macOS | Xcode Command Line Tools |
| Linux | build-essential, python3, gcc |
从 GitHub 克隆 Tabby 仓库
Tabby 的代码库由几个关键组件组成
来源:README.md32-48 package.json1-121
使用 yarn(推荐)或 npm 安装项目依赖项
或
这将:
注意:由于依赖项数量和原生模块编译,安装过程可能需要几分钟。
来源:package.json111 app/package.json12-16
安装依赖项后,构建项目
或
此命令运行两个步骤
build:typings:生成 TypeScript 定义文件node scripts/build-modules.mjs:使用 Webpack 构建所有模块要在开发模式下运行 Tabby,您需要
启动 Webpack 观察器以实时编译更改
或
在另一个终端中,启动 Electron 应用程序
或
这将以开发配置启动 Tabby,启用热重载和调试。
标准开发工作流程包括
Tabby 支持多种调试方法
当使用 yarn start 或 npm run start 运行时,Electron 主进程将带 --inspect 标志运行,允许您将调试器连接到端口 9229。
您可以通过在 Chrome 浏览器中打开 chrome://inspect 并选择 Tabby 进程来使用 Chrome DevTools 进行调试。
要调试渲染器进程(UI)
有关 Tabby 插件开发的信息,请参阅插件开发页面。
要构建 Tabby 的生产版本
运行生产构建
使用 Electron Builder 打包应用程序以进行分发
electron-builder
此过程会在 dist 目录中创建特定于平台的包。
理解 Tabby 的架构有助于开发。以下是组件如何交互的简化视图
| 问题 | 解决方案 |
|---|---|
| 原生模块构建失败 | 确保您已为您的平台安装了适当的构建工具 |
| TypeScript 错误 | 检查与项目 TypeScript 版本的兼容性(4.9.x) |
| Angular 依赖问题 | 确保您使用的是正确版本的 Angular 组件(约 15.2.x) |
| 缺少依赖项 | 运行 yarn 或 npm install 更新依赖项 |
来源:package.json3-93 app/package.json18-65
在提交贡献之前,请确保
有关更详细的贡献信息,请参阅贡献指南页面。