Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: #1009 resolve compatibility issues with Docker #1098

Merged
merged 7 commits into from Mar 11, 2024
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.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
257 changes: 148 additions & 109 deletions README.md

Large diffs are not rendered by default.

187 changes: 99 additions & 88 deletions README_zh_CN.md
Expand Up @@ -6,31 +6,33 @@

将思源笔记的文章发布到语雀等平台,`开源`、`免费` 。

如果您对 [增值功能](https://github.com/terwer/siyuan-plugin-publisher/issues/846) 感兴趣,请移步 ➡️ 收费的 [发布工具专业版](https://github.com/terwer/siyuan-plugin-publisher-pro)
如果您对 [增值功能](https://github.com/terwer/siyuan-plugin-publisher/issues/846) 感兴趣,请移步 ➡️
收费的 [发布工具专业版](https://github.com/terwer/siyuan-plugin-publisher-pro)

> 最近的新版本:🎉 发布工具新版本 `1.20.0` 发布,可能是插件发布以来,革命性变更最大的版本之一👀

- `1.20.0` 新增部分发布平台,初步支持 docker 版本,同时对用户的使用体验进行了优化。
- `1.20.0` 主要新增以下特性:
- #958 #1009 支持 docker 版本的思源笔记<sup>实验性</sup>
- 此版本初步支持了 docker 版本的思源笔记,如果某些情况下发布异常,欢迎GitHub 新增 issue 反馈。
- **注意:如果未配置 CORS 代理,功能将不可用!!!**
- docker 版本适配进度
- [X] telegra.ph
- #1053 新增发布平台 telegra.ph
- **注意:如果未配置 CORS 代理,功能将不可用!!!,而且文章预览需要科学上网,请自行解决科学上网的问题。**
- CORS 代理问题可加群讨论或者私聊作者 youweics@163.com
- #1054 新增文章管理功能<sup>new</sup>
- 文章管理重命名为仪表盘。关于名称,可在 issue 讨论,作者会根据反馈进行调整。
- 支持显示所有平台发布图标
- 支持显示发布平台数量
- 支持筛选已发布文章
- #958 #1009 支持 docker 版本的思源笔记<sup>实验性</sup>
- 此版本初步支持了 docker 版本的思源笔记,如果某些情况下发布异常,欢迎GitHub 新增 issue 反馈。
- **注意:如果未配置 CORS 代理,功能将不可用!!!**
- Picgo 插件的图片功能目前在 docker 版本不可用,1.20.1 会支持
- #1053 新增发布平台 telegra.ph
- **注意:如果未配置 CORS 代理,功能将不可用!!!,而且文章预览需要科学上网,请自行解决科学上网的问题。**
- CORS 代理问题可加群讨论或者私聊作者 youweics@163.com
- 目前仅支持匿名发布和更新,登录将在 1.20.1 实现
- #1054 新增文章管理功能<sup>new</sup>
- 文章管理重命名为仪表盘。关于名称,可在 issue 讨论,作者会根据反馈进行调整。
- 支持显示所有平台发布图标
- 支持显示发布平台数量
- 支持筛选已发布文章
- `1.20.0` 主要优化以下方面:
- 新增开发文档,新增下版本开发计划预告
- 优化插件商店体验<sup>new</sup>
- 优化导入体验,现在支持自定义导入了<sup>实验性</sup>
- 深度优化挂件版本
- 咳咳,另外,在 `1.14.0` 版本之后,作者还悄悄开发了导入功能。您可以使用 `设置` -> `发布设置` -> `导入预定义平台` 功能快速导入内置平台 😄
- 新增开发文档,新增下版本开发计划预告
- 优化插件商店体验<sup>new</sup>
- 优化导入体验,现在支持自定义导入了<sup>实验性</sup>
- 深度优化挂件版本
- 咳咳,另外,在 `1.14.0` 版本之后,作者还悄悄开发了导入功能。您可以使用 `设置` -> `发布设置` -> `平台导入` 功能快速导入内置平台
😄

> [猛击这里](https://blog.terwer.space/s/20230810132040-nn4q7vs),查看最新帮助文档。

Expand All @@ -40,8 +42,10 @@

### 1.20.1-preview - 截止到 2024 年 Q1

- docker 版本支持 Picgo 插件上传图片
- telegra.ph 支持上传图片
- 参考 https://www.npmjs.com/package/telegraph-uploader
- 参考 https://www.npmjs.com/package/telegraph-uploader
- 支持 telegra.ph 登录
- 解决部分平台在某些场景下重复上传图片的问题
- 修复微信公众号排版问题
- #990 修复发布到简书时部分格式显示不正常的问题
Expand All @@ -52,27 +56,27 @@

### 1.21.0-preview - 截止到 2024 年 Q1

- 支持 B 站、小红书
- 支持 B 站、小红书

### 1.22.0-preview - 截止到 2024 年 Q2

- 支持 Evernote、Antora(包括 GitHub 和 gitlab)
- 支持 Evernote、Antora(包括 GitHub 和 gitlab)

### 1.23.0-preview - 截止到 2024 年 Q2

- 支持 Docsify(包括 GitHub 和 gitlab)、Douban
- 支持 Docsify(包括 GitHub 和 gitlab)、Douban

### 1.24.0-preview - 截止到 2024 年 Q2

- 支持 flowus
- 支持 flowus

### 1.25.0-preview - 截止到 2024 年 Q2

- 支持 Xlog、mdnice、zola
- 支持 Xlog、mdnice、zola

### 1.26.0-preview - 截止到 2024 年 Q3

- #956 和 OceanPress 联动
- #956 和 OceanPress 联动

## 更新历史

Expand All @@ -86,52 +90,56 @@

排名不分先后

- [x] 语雀
- [x] Notion
- [x] Halo
- [ ] 印象笔记 - TODO
- [x] Github
- [x] Hexo
- [x] Hugo
- [x] Jekyll
- [x] Vuepress
- [x] Vuepress2
- [x] Vitepress
- [ ] Antora - TODO
- [ ] Docsify - TODO
- [x] Gitlab
- [x] Gitlabhexo
- [x] Gitlabhugo
- [x] Gitlabjekyll
- [x] Gitlabvuepress
- [x] Gitlabvuepress2
- [x] Gitlabvitepress
- [ ] Gitlabantora - TODO
- [ ] Gitlabdocsify - TODO
- [x] Metaweblog
- [x] 博客园
- [x] Typecho
- [x] Jvue
- [x] WordPress
- [x] 知乎
- [x] CSDN
- [x] 微信公众号
- [x] 简书
- [x] 掘金
- [ ] 吾爱破解 - TODO
- [ ] 哔哩哔哩专栏 - TODO
- [ ] 小红书 - TODO
- [ ] 豆瓣 - TODO
- [ ] Xlog - TODO
- [ ] 墨滴 - TODO
- [ ] Flowus 息流 - TODO
- [X] telegra.ph
| 类型 | 平台 | 状态 | PC 客户端 | PC 图片上传 | Docker | Docker 图片上传 | 备注 |
|:-------:|:---------------:|:----:|:------:|:-------:|:---------------:|:-----------:|:--------------------------------------------:|
| 通用 | 语雀 | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://yuque.com) |
| 通用 | Notion | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://www.notion.so) |
| 通用 | Halo | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://halo.run) |
| 通用 | 印象笔记 | TODO | TODO | TODO | TODO | TODO | [官网](https://www.yinxiang.com) |
| 通用 | Github | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://github.com) |
| 静态网站生成器 | Hexo | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://hexo.io/zh-cn/) |
| 静态网站生成器 | Hugo | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gohugo.io/) |
| 静态网站生成器 | Jekyll | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://jekyllrb.com/) |
| 静态网站生成器 | Vuepress | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://vuepress.vuejs.org/) |
| 静态网站生成器 | Vuepress2 | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://v2.vuepress.vuejs.org/) |
| 静态网站生成器 | Vitepress | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://vitepress.vuejs.org/) |
| 静态网站生成器 | Antora | TODO | TODO | TODO | TODO | TODO | [官网](https://antora.org/) |
| 静态网站生成器 | Docsify | TODO | TODO | TODO | TODO | TODO | [官网](https://docsify.js.org/) |
| Git 托管 | Gitlab | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabhexo | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabhugo | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabjekyll | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabvuepress | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabvuepress2 | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabvitepress | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabantora | TODO | TODO | TODO | TODO | TODO | [官网](https://gitlab.com/) |
| Git 托管 | Gitlabdocsify | TODO | TODO | TODO | TODO | TODO | [官网](https://gitlab.com/) |
| 博客 | Metaweblog | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](http://xmlrpc.scripting.com/metaWeblog) |
| 博客 | CnBlogs | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://cnblogs.com) |
| 博客 | Typecho | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://typecho.org/) |
| 博客 | Jvue | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://github.com/terwer/jvue) |
| 博客 | WordPress | ✔ | 完全兼容 | ✔ | 部分兼容 | ✖ | [官网](https://wordpress.org/) |
| 社交媒体 | 知乎 | ✔ | 完全兼容 | ✔ | 部分兼容,需 PC 端账号验证 | ✖ | [官网](https://www.zhihu.com/) |
| 社交媒体 | CSDN | ✔ | 完全兼容 | ✔ | 部分兼容,需 PC 端账号验证 | ✖ | [官网](https://www.csdn.net/) |
| 社交媒体 | 微信公众号 | ✔ | 完全兼容 | ✔ | 部分兼容,需 PC 端账号验证 | ✖ | [官网](https://mp.weixin.qq.com/) |
| 社交媒体 | 简书 | ✔ | 完全兼容 | ✔ | 部分兼容,需 PC 端账号验证 | ✖ | [官网](https://www.jianshu.com/) |
| 社交媒体 | 掘金 | ✔ | 完全兼容 | ✔ | 部分兼容,需 PC 端账号验证 | ✖ | [官网](https://juejin.cn/) |
| 社区 | 52破解 | TODO | TODO | TODO | TODO | TODO | [官网](https://www.52pojie.cn/) |
| 社区 | Bilibili | TODO | TODO | TODO | TODO | TODO | [官网](https://www.bilibili.com/) |
| 社区 | 小红书 | TODO | TODO | TODO | TODO | TODO | [官网](https://www.xiaohongshu.com/) |
| 社区 | 豆瓣 | TODO | TODO | TODO | TODO | TODO | [官网](https://www.douban.com/) |
| 其他 | Xlog | TODO | TODO | TODO | TODO | TODO | [官网](https://xlog.cn/) |
| 其他 | Mdnice | TODO | TODO | TODO | TODO | TODO | [官网](https://mdnice.com/) |
| 其他 | Flowus | TODO | TODO | TODO | TODO | TODO | [官网](https://www.flowus.com/) |
| 其他 | telegra.ph | ✔ | 部分兼容 | ✖ | 部分兼容 | ✖ | [官网](https://telegra.ph) |

## 核心特色

- [x] **极速发布**:一次配置,一键发布
- [x] **图床管理**:集成 PicGO 图床,支持 s3、minio、水印插件,需要在集市安装 [Picgo 插件](https://github.com/terwer/siyuan-plugin-picgo) ,**目前仅支持 PC 客户端**
- [x] **支持扩展**:基于统一的博客 API 规范,内置 metaweblogAPI 、 WordPress 、Wechatsync 和 Github 支持,并提供了统一的适配器,理论上可支持扩展到任何平台
- [x] **图床管理**:集成 PicGO 图床,支持
s3、minio、水印插件,需要在集市安装 [Picgo 插件](https://github.com/terwer/siyuan-plugin-picgo) ,**目前仅支持 PC 客户端**
- [x] **支持扩展**:基于统一的博客 API 规范,内置 metaweblogAPI 、 WordPress 、Wechatsync 和 Github
支持,并提供了统一的适配器,理论上可支持扩展到任何平台
- [x] **平台开关**:所有平台均支持启用禁用
- [x] **动态新增**:支持自定义添加平台
- [x] **AI 集成**:集成自由聊天和基于当前文档上下文的聊天
Expand All @@ -142,7 +150,8 @@
- [x] **发布视图**:支持多种发布视图,简单模式、详细模式和源码模式
- [x] **多种部署**:支持思源笔记插件<sup>强烈推荐</sup>、Chrome 浏览器扩展、自部署

本插件承诺,**插件本身的基础功能永久免费** ,第三方平台提供的相关服务的可能需要自己注册账号或者购买服务。如果您想支持开发者,请在这里 [随意打赏](https://github.com/terwer/siyuan-plugin-publisher/blob/main/README_zh_CN.md#捐赠)。
本插件承诺,**插件本身的基础功能永久免费**
,第三方平台提供的相关服务的可能需要自己注册账号或者购买服务。如果您想支持开发者,请在这里 [随意打赏](https://github.com/terwer/siyuan-plugin-publisher/blob/main/README_zh_CN.md#捐赠)。

> 🌹 温馨提示:这个插件是原 `思源笔记发布工具` 挂件的插件升级版,功能包含原有挂件提供的所有功能,同时提供了方便的菜单操作入口,并进行了一系列问题修复和体验优化。
>
Expand All @@ -156,19 +165,19 @@

- [x] 分类

- [x] 多选分类
- [x] 多选分类

- [x] 知识空间

- [x] 单选知识空间
- [x] 树形单选知识空间
- [x] 单选知识空间
- [x] 树形单选知识空间

- [x] 标签

- [x] 多选标签
- [x] 多选标签

- [x] 标签别名
- [x] 单选标签别名
- [x] 单选标签别名

## 平台适配计划

Expand Down Expand Up @@ -215,7 +224,9 @@
注意:挂件版配置数据导入仅支持 `sy-p-cfg-v0.8.1.json` 。

- Q6:我需要发布的平台,发布工具没有提供怎么办?
- A6:参考:[平台适配计划](https://github.com/terwer/siyuan-plugin-publisher/blob/main/README_zh_CN.md#平台适配计划 "平台适配计划")
-

A6:参考:[平台适配计划](https://github.com/terwer/siyuan-plugin-publisher/blob/main/README_zh_CN.md#平台适配计划 "平台适配计划")

## 捐赠

Expand Down Expand Up @@ -244,7 +255,7 @@ https://afdian.net/a/terwer
排名不分先后

| Name | version | vendor |
| :---------: | :-----: | :-------: |
|:-----------:|:-------:|:---------:|
| turbo | 1.9+ | Vercel |
| Vue | 3.3.4+ | Evan You |
| Vite | 4.2+ | Evan You |
Expand All @@ -255,15 +266,15 @@ https://afdian.net/a/terwer

- 感谢以下热心用户的支持,我会坚持一直持续更新维护下去!

- 2023-09-04 \*霞 捐赠到 [发布工具]
- 2023-08-31 \*成 捐赠到 [发布工具] 感谢提供笔记发布工具,催更
- 2023-08-31 \*? 捐赠到 [发布工具] 感谢提供思源笔记发布工具
- 2023-08-14 \*? 捐赠到 [发布工具]
- 2023-08-10 \*f 捐赠到 [发布工具] 为发布插件点赞
- 2023-08-10 \*2 捐赠到 [发布工具] 支持开发思源发布插件
- 2023-07-13 \*亮 捐赠到 [文档别名] 有没有可能把功能扩展到 H1?
- 2023-07-09 \*z 捐赠到 [在线分享] 在线分享插件好用,感谢
- 2023-06-14 \*俊 捐赠到 [文档漫游] 感谢文档漫游这个功能
- 2023-01-16 \*站 捐赠到 [导入工具] 终于可以导入 epub 了

如果您不想展示捐赠信息,可直接发邮件到 youweics@163.com 。
- 2023-09-04 \*霞 捐赠到 [发布工具]
- 2023-08-31 \*成 捐赠到 [发布工具] 感谢提供笔记发布工具,催更
- 2023-08-31 \*? 捐赠到 [发布工具] 感谢提供思源笔记发布工具
- 2023-08-14 \*? 捐赠到 [发布工具]
- 2023-08-10 \*f 捐赠到 [发布工具] 为发布插件点赞
- 2023-08-10 \*2 捐赠到 [发布工具] 支持开发思源发布插件
- 2023-07-13 \*亮 捐赠到 [文档别名] 有没有可能把功能扩展到 H1?
- 2023-07-09 \*z 捐赠到 [在线分享] 在线分享插件好用,感谢
- 2023-06-14 \*俊 捐赠到 [文档漫游] 感谢文档漫游这个功能
- 2023-01-16 \*站 捐赠到 [导入工具] 终于可以导入 epub 了

如果您不想展示捐赠信息,可直接发邮件到 youweics@163.com 。
5 changes: 5 additions & 0 deletions src/adaptors/api/telegraph/telegraphApiAdaptor.ts
Expand Up @@ -132,6 +132,11 @@ class TelegraphApiAdaptor extends BaseBlogApi {
const postMeta = JsonUtil.safeParse<any>(postid, {})
const purl = this.cfg.previewUrl ?? ""
const postUrl = purl.replace("[postid]", postMeta?.path ?? "")
const useProxyPreview = true
if (useProxyPreview && !StrUtil.isEmptyString(this.cfg.corsAnywhereUrl)) {
const proxyHome = StrUtil.pathJoin(this.cfg.corsAnywhereUrl, this.cfg.home ?? "")
return StrUtil.pathJoin(`${proxyHome}`, postUrl)
}
return postUrl
}

Expand Down
16 changes: 10 additions & 6 deletions src/components/set/preference/PostBind.vue
Expand Up @@ -24,7 +24,7 @@
-->

<script setup lang="ts">
import {onMounted, reactive, ref, toRaw, watch} from "vue"
import { onMounted, reactive, ref, toRaw, watch } from "vue"
import { ElMessage, FormRules } from "element-plus"
import { usePublishConfig } from "~/src/composables/usePublishConfig.ts"
import { DynamicConfig } from "~/src/platforms/dynamicConfig.ts"
Expand Down Expand Up @@ -60,10 +60,10 @@ const formData = reactive({
const alertTitle = ref(`将对文档「${formData.pageId}」进行修复`)

watch(
() => formData.pageId,
(newValue) => {
alertTitle.value = `将对文档「${newValue}」进行修复`
}
() => formData.pageId,
(newValue) => {
alertTitle.value = `将对文档「${newValue}」进行修复`
}
)

// methods
Expand Down Expand Up @@ -97,6 +97,10 @@ const submitForm = async (formEl: any) => {
}
}

const handleV081 = () => {
ElMessage.warning(t("import.v081.warn"))
}

// lifecycles
onMounted(async () => {
const id = Utils.emptyOrDefault(query.id as string, getWidgetId())
Expand Down Expand Up @@ -163,7 +167,7 @@ onMounted(async () => {

<el-form-item>
<el-button type="primary" @click="submitForm(ruleFormRef)">{{ t("post.bind.conf.save") }}</el-button>
<el-button type="warning">{{ t("post.bind.conf.v081") }}</el-button>
<el-button type="warning" @click="handleV081">{{ t("post.bind.conf.v081") }}</el-button>
</el-form-item>
</el-form>
</div>
Expand Down