Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions .github/workflows/validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,15 +56,17 @@ jobs:

- name: Check the index contract has not changed
# validate-index.mjs follows the index rules of the Lithe plugin
# contract, published in lithe-plugin-docs. A different schema there
# means the rules changed; see docs/maintainers.md.
# contract (v0), published in the Rust Core repository under
# shared/plugins/contract/v1. A different schema there means the rules
# changed; see docs/maintainers.md.
env:
SCHEMA_URL: https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-docs/main/contract/v1/plugin-index.schema.json
SCHEMA_SHA256: 6771cb0e8c1ba101e6fc90b436de1b74f057ff0d58cc90f92e669edc9a102fc6
SCHEMA_URL: https://raw.githubusercontent.com/Lithe-IDEA/Lithe-core-rust/main/shared/plugins/contract/v1/plugin-index.schema.json
SCHEMA_SHA256: 18451ea7969bbf1c28a7df0554718c62599156e1155519059a6a9d16b9f89bea
run: |
status=$(curl -sS -o "$RUNNER_TEMP/plugin-index.schema.json" -w '%{http_code}' "$SCHEMA_URL")
if [ "$status" = "404" ]; then
echo "::notice::lithe-plugin-docs does not publish plugin-index.schema.json yet; skipping contract check."
echo "::error::Lithe-core-rust no longer publishes shared/plugins/contract/v1/plugin-index.schema.json; find where the contract moved and update SCHEMA_URL; see docs/maintainers.md."
exit 1
elif [ "$status" != "200" ]; then
echo "::warning::Could not fetch the published schema (HTTP $status)."
else
Expand Down
10 changes: 5 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
- 插件图标填在条目的 `icon` 字段,指向插件仓库内固定到提交的 SVG/PNG(`raw.githubusercontent.com/<owner>/<repo>/<commit>/…`);没有填写时 README 使用默认图标。
- 插件的 bug 与功能请求请提到插件自己的仓库,本仓库只处理收录相关事务。

怎么写插件(开发指南、LSP 与构建工具教程、插件契约和 SDK)见
[lithe-plugin-docs](https://github.com/Lithe-IDEA/lithe-plugin-docs);写好以后按[发布文档](docs/publishing.md)提交收录。
怎么写插件(开发指南、LSP 与构建工具教程、插件契约和 SDK)见 Rust Core 仓库的
[`shared/plugins/`](https://github.com/Lithe-IDEA/Lithe-core-rust/tree/main/shared/plugins);写好以后按[发布文档](docs/publishing.md)提交收录。

审查标准见 [docs/maintainers.md](docs/maintainers.md#审查清单)。

Expand All @@ -45,7 +45,7 @@ Lithe 不再区分官方插件和普通插件:本仓库收录的每个插件

| | Lithe-IDEA 组织插件 | 组织外插件 |
| --- | --- | --- |
| 范围 | Lithe-IDEA 组织下的公开 `lithe-plugin-*` 仓库(`lithe-plugin-docs` 除外) | 其他公开 GitHub 仓库 |
| 范围 | Lithe-IDEA 组织下的公开 `lithe-plugin-*` 仓库(已退役的文档仓库 `lithe-plugin-docs` 除外) | 其他公开 GitHub 仓库 |
| 首次收录 | bot 发现带插件包的正式 Release 后自动收录,不需要提交 PR | 提 PR 或开“插件收录申请” issue,维护者按[审查清单](docs/maintainers.md#审查清单)审核后合并 |
| 新版本 | bot 开 PR,校验通过后自动合入 | bot 开 PR,维护者审核后合并 |

Expand All @@ -58,7 +58,7 @@ Lithe 主仓库仍内置少量迁移前的 `dev.lithe.*` 插件,它们正在

| 文档 | 内容 |
| --- | --- |
| [lithe-plugin-docs](https://github.com/Lithe-IDEA/lithe-plugin-docs) | 插件开发:开发指南、LSP 与构建工具教程、插件契约与 JSON Schema、SDK 下载 |
| [Lithe-core-rust `shared/plugins/`](https://github.com/Lithe-IDEA/Lithe-core-rust/tree/main/shared/plugins) | 插件开发:开发指南、LSP 与构建工具教程、插件契约与 JSON Schema、SDK |
| [docs/publishing.md](docs/publishing.md) | 插件作者:如何打包、发布 Release、提交收录和发布新版本 |
| [docs/versioning-and-updates.md](docs/versioning-and-updates.md) | 版本号如何追踪、Lithe 如何选择可安装版本、用户如何更新/回退 |
| [docs/maintainers.md](docs/maintainers.md) | 维护者:审查清单、下架与撤回、跟进插件契约变化 |
Expand All @@ -70,7 +70,7 @@ lithe-plugin-index.json # 唯一的数据文件,Lithe 客户端读取
scripts/validate-index.mjs # 与 Lithe Rust Core 同规则的校验 + 下载包校验
scripts/track-releases.mjs # 追踪已收录插件和 Lithe-IDEA 组织 lithe-plugin-* 仓库的新 Release,生成索引条目;--scope 区分组织插件与组织外插件
scripts/render-readme.mjs # 根据索引生成 README 的插件总览
scripts/store.test.mjs # 校验脚本的测试(fixtures 复制自插件契约)
scripts/store.test.mjs # 校验脚本的测试(fixtures 复制自 Core 的插件契约)
assets/ # README 用到的图片(无图标插件的默认图标)
.github/workflows/ # validate(PR/推送/每周)、track-releases(每 6 小时,组织插件自动合入、组织外插件开 PR 审查)、sync-readme(main 更新后开 PR 同步 README)
```
Expand Down
110 changes: 7 additions & 103 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<p>
<a href="#-插件总览"><b>🧩 浏览插件</b></a> ·
<a href="#️-在-lithe-中安装"><b>⬇️ 安装方式</b></a> ·
<a href="https://github.com/Lithe-IDEA/lithe-plugin-docs"><b>📚 开发插件</b></a> ·
<a href="https://github.com/Lithe-IDEA/Lithe-core-rust/tree/main/shared/plugins"><b>📚 开发插件</b></a> ·
<a href="docs/publishing.md"><b>📤 发布插件</b></a> ·
<a href="CONTRIBUTING.md"><b>🤝 参与贡献</b></a>
</p>
Expand All @@ -27,120 +27,24 @@

<!-- plugins:start (generated by scripts/render-readme.mjs, do not edit) -->

**全部 · 12** | 构建工具 · 3 | 工具 · 5 | 语言支持 · 3 | 版本控制 · 1
**全部 · 0**

<table>
<tr>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-cargo/8fea6ad38995ce31d657da371420df6b8e8c0e7d/io.github.lithe-idea.cargo-build/icons/cargo.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-cargo">Cargo</a></h3>
<p><sub>Lithe Community · v0.1.1 · API 3(需 buildProviders、buildSystems、serverProcess、settings)</sub></p>
<p>Cargo 构建预发布插件:原生 workspace/包编译、检查、测试、清理及 binary/example 运行,支持 Release、Features 和 Offline。0.1.1 新增 Cargo 可执行文件路…</p>
<p>🏷️ 构建工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-cargo?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>build</code> <code>cargo</code> <code>rust</code> <code>testing</code></p>
</td>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-database/bf531b5a40495c404d857aab5fd6a55d3a116921/assets/database.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-database">Database</a></h3>
<p><sub>Lithe Community · v0.1.1 · API 3(需 backend、serverProcess、ui)</sub></p>
<p>数据库工具窗口:连接 MySQL、MariaDB、PostgreSQL、SQLite、SQL Server、MongoDB、Redis 和 Nacos,提供 SQL 控制台、表数据与结构编辑、CSV/JSON/SQL 导…</p>
<p>🏷️ 工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-database?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>tool</code> <code>database</code> <code>sql</code> <code>mysql</code> <code>postgresql</code> <code>redis</code></p>
</td>
</tr>
<tr>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-docker/fb0e6eed5be851e282eb4d38236554f615deab92/icons/docker.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-docker">Docker</a></h3>
<p><sub>Lithe Community · v0.1.1 · API 3(需 backend、serverProcess、ui)</sub></p>
<p>在工具窗口中管理本机 Docker 容器、镜像、卷和网络,支持容器原生终端、Compose 分组及配置路径、日志搜索与 JSON 高亮、可调采样间隔的 CPU/内存/网络/磁盘实时图,以及普通文件上传下载。需要支持 ba…</p>
<p>🏷️ 工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-docker?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>tool</code> <code>docker</code> <code>containers</code> <code>compose</code> <code>logs</code> <code>monitoring</code></p>
</td>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-go/14321930779d1b441e1b7d13d2a4a741ef8f305c/io.github.lithe-idea.go-support/icons/go.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-go">Go Support</a></h3>
<p><sub>Lithe Community · v0.1.0 · API 1</sub></p>
<p>使用你自己安装的 gopls 提供 Go 补全、跳转定义和错误提示,并支持运行 main 包和 go test(整个模块、单个文件所在的包或单个测试函数)。需要先安装 Go 和 gopls(go install gola…</p>
<p>🏷️ 语言支持 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-go?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>language</code> <code>go</code></p>
</td>
</tr>
<tr>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-gradle/88a86cae73403d715d1385e447d8e4a9273e8f2f/io.github.lithe-idea.gradle-build/icons/gradle.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-gradle">Gradle</a></h3>
<p><sub>Lithe Community · v0.1.1 · API 3(需 buildSystems)</sub></p>
<p>预发布 Gradle 集成:项目与任务树、JavaExec 运行入口、筛选测试、编译诊断及依赖树。需要支持 API 3 buildSystems 和原生构建窗口的 Lithe preview 开发版、Gradle 7.6…</p>
<p>🏷️ 构建工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-gradle?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>build</code> <code>gradle</code> <code>java</code> <code>testing</code></p>
</td>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-http-client/e3cead6da09ecd07fa6964e66ca903219b374634/assets/http.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-http-client">HTTP Client</a></h3>
<p><sub>Lithe Community · v0.1.2 · API 3(需 backend、serverProcess、ui)</sub></p>
<p>HTTP 请求工具预览版:支持打开请求文件、语法高亮、会话历史、可调整分栏、响应头阅读、原始响应保存和编辑区 HTML 预览。正文预览默认 128 KiB,可按 1 KiB 调整。仅支持 macOS;原生文件对话框和编辑…</p>
<p>🏷️ 工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-http-client?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>http</code> <code>rest</code> <code>tool</code></p>
</td>
</tr>
<tr>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-lldb/24ac947b5db12dc49414c1933a7af6057d4b1051/assets/lldb.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-lldb">LLDB Debugger</a></h3>
<p><sub>Lithe Community · v0.1.0 · API 4(需 debugAdapters、languages、serverProcess、settings)</sub></p>
<p>预发布 LLDB 调试器:通过你电脑上的 lldb-dap 调试 C、C++、Objective-C、Swift 和 Rust,支持断点、单步、变量,以及带补全的 lldb 控制台。需要支持插件 API 4 的 Lith…</p>
<p>🏷️ 工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-lldb?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>tool</code> <code>debug</code> <code>lldb</code> <code>cpp</code> <code>rust</code> <code>swift</code></p>
</td>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-lua/c5f88bf94e9d5616c7770e58febc53a0d520dd50/io.github.lithe-idea.lua-support/icons/lua.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-lua">Lua Support</a></h3>
<p><sub>Lithe Community · v0.3.1 · API 2</sub></p>
<p>内置 lua-language-server(LuaLS)提供 Lua 补全、跳转定义和错误提示,无需另外安装;“运行当前文件”使用你自己的 lua(brew install lua)。</p>
<p>🏷️ 语言支持 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-lua?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>language</code> <code>lua</code></p>
</td>
</tr>
<tr>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-maven/177ee4e9b12b9fe06a07498eb316539f7472d5d8/io.github.lithe-idea.maven-build/icons/maven.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-maven">Maven</a></h3>
<p><sub>Lithe Community · v0.1.1 · API 3(需 buildProviders、buildSystems、serverProcess)</sub></p>
<p>预发布 Maven 集成:反应堆与目标树、Profiles、带 JUnit 报告的筛选测试、编译诊断及依赖树。附带只读 Maven 核心扩展;需要支持 API 3 buildSystems 和原生构建窗口的 Lithe…</p>
<p>🏷️ 构建工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-maven?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>build</code> <code>maven</code> <code>java</code> <code>testing</code></p>
</td>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/FxRayHughes/lithe-plugin-mise/ced89b3dd0a5fe11f9d5e6da73dfaa3e65a350e9/io.github.fxrayhughes.mise/icons/mise.svg" width="28" height="28" alt=""> <a href="https://github.com/FxRayHughes/lithe-plugin-mise">mise</a></h3>
<p><sub>FxRayHughes · v0.2.1 · API 3(需 backend、serverProcess、settings、toolchainProviders)</sub></p>
<p>预发布工具链提供方:告诉 Lithe mise 装了哪些 JDK、Node.js、Maven、Gradle、Go、Python 和 pnpm,以及项目的 mise.toml / .tool-versions 和全局 mi…</p>
<p>🏷️ 工具 · 💻 macOS · <img src="https://img.shields.io/github/stars/FxRayHughes/lithe-plugin-mise?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>tool</code> <code>toolchain</code> <code>mise</code> <code>java</code> <code>node</code></p>
</td>
</tr>
<tr>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-php/a0b5600d2629e7acc72dda5871dbe403ce1922a9/io.github.lithe-idea.php-support/icons/php.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-php">PHP Support</a></h3>
<p><sub>Lithe Community · v0.1.0 · API 1</sub></p>
<p>使用你自己安装的 Intelephense 提供 PHP 补全、跳转定义和错误提示,并支持运行 PHP 文件和 PHPUnit 测试。插件不内置 Intelephense(其许可证不允许再分发),请用 npm insta…</p>
<p>🏷️ 语言支持 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-php?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>language</code> <code>php</code></p>
</td>
<td width="50%" valign="top">
<h3><img src="https://raw.githubusercontent.com/Lithe-IDEA/lithe-plugin-svn/717d23cd417f796d8487b3b7cbc8150a8356b512/assets/subversion.svg" width="28" height="28" alt=""> <a href="https://github.com/Lithe-IDEA/lithe-plugin-svn">Subversion</a></h3>
<p><sub>Lithe Community · v0.1.0 · API 3(需 serverProcess、vcsProviders)</sub></p>
<p>Subversion 预发布插件:在版本控制工具窗口查看 SVN 工作副本的变更,支持提交、更新、回滚、解决冲突、清理、历史、Annotate 和与基线比较;项目树移动通过 svn move 记录。需要支持 API 3…</p>
<p>🏷️ 版本控制 · 💻 macOS · <img src="https://img.shields.io/github/stars/Lithe-IDEA/lithe-plugin-svn?style=flat&label=stars&logo=github" alt="GitHub stars"></p>
<p><code>vcs</code> <code>svn</code> <code>subversion</code></p>
</td>
</tr>
</table>

<!-- plugins:end -->

## ⬇️ 在 Lithe 中安装

需要 Lithe 0.6.1 或更新版本(目前插件市场只在 macOS 提供)。Lithe 已预置本仓库作为插件源,
打开 **设置 → 插件 → 插件市场** 即可浏览和安装;安装前会弹窗列出插件权限、要运行的程序和来源仓库。
本仓库收录的插件按插件契约 v0 编写,需要新版 Lithe 桌面端(`desktop-v*` 预发布版本)。
旧版 macOS Lithe(0.x)读不了这份索引,插件市场会显示无法读取 Lithe Store。

如果之前移除了 Lithe Store,在 **设置 → 插件 → ⚙ → 管理插件仓库…** 中重新添加
`https://github.com/Lithe-IDEA/Lithe-store` 即可。
桌面端已预置本仓库作为插件源:打开 **设置 → 插件 → 插件市场**,在“来源”中选择 Lithe Store
即可浏览和安装;安装前会弹窗列出插件权限、要运行的程序和来源仓库。

## 🤝 参与贡献

想写插件,先看 [lithe-plugin-docs](https://github.com/Lithe-IDEA/lithe-plugin-docs)。想收录自己的插件、发布新版本或报告有问题的插件,请看 [CONTRIBUTING.md](CONTRIBUTING.md)。
想写插件,先看 Rust Core 仓库的 [`shared/plugins/`](https://github.com/Lithe-IDEA/Lithe-core-rust/tree/main/shared/plugins)。想收录自己的插件、发布新版本或报告有问题的插件,请看 [CONTRIBUTING.md](CONTRIBUTING.md)。
上方的插件总览由 `scripts/render-readme.mjs` 根据 [`lithe-plugin-index.json`](lithe-plugin-index.json) 生成,索引合并到 main 后由 CI 自动同步。

## 📄 许可
Expand Down
Loading
Loading