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

[RFC] 更换评论框架为 giscus #4169

Closed
Enter-tainer opened this issue Aug 2, 2022 · 18 comments · Fixed by #4497
Closed

[RFC] 更换评论框架为 giscus #4169

Enter-tainer opened this issue Aug 2, 2022 · 18 comments · Fixed by #4497

Comments

@Enter-tainer
Copy link
Member

目前,我们使用的评论框架是 gitment。该框架目前已经停止维护,且存在各种问题。例如权限要求不合理,不支持数学公式等等。

因此考虑将框架切换为目前流行的 giscus。唯一可能需要注意的地方是,切换为giscus后将无法继续使用基于issue的评论系统。

群内聊天记录如下:

mgt:
giscus接入主站好搞吗🤔

要不换换

ouuan:
好搞啊

就是会 break 几分钟

要 convert to discussions

而且没法换回来

虽然看起来只有好处,但考虑到没法换回来,可以再征求一下大家同意(

@ouuan
Copy link
Member

ouuan commented Aug 2, 2022

(开 issue 没 mgt 快)

Gitalk 索取了过多的权限(每个评论者的所有 public repo 的读写权限),且必须由管理员手动给新页面开评论区。

Giscus 基于 GitHub Discussions,有包括但不限于下列优点:

  1. 需要用户授权少
  2. 每个用户都可以开新评论区
  3. 可以给页面点 reactions,也可以给评论点 reactions
  4. 可以有楼中楼
  5. 可以折叠评论
  6. 用户可以设定正序/倒序显示
  7. 支持暗色模式
  8. 支持 LaTeX 显示
  9. 授权是统一的,用户只需在某个使用 Giscus 的站点授权一次,而 Gitalk 是每个站点有自己的 OAuth App

@ouuan
Copy link
Member

ouuan commented Aug 2, 2022

好像有一个问题,不知道怎么显示“我们鼓励在讨论区讨论有意义的内容及关于文章的勘误,无意义的讨论将会被管理员删除”

@ouuan
Copy link
Member

ouuan commented Aug 2, 2022

还 fork 吗(真的要这句话吗,一定要显示在 placeholder 吗(

@Enter-tainer
Copy link
Member Author

感觉不显示也行()

@littlefrogfromthenorth
Copy link
Contributor

littlefrogfromthenorth commented Aug 2, 2022

可以参考下:
https://blog.csdn.net/duninet/article/details/125280107

在GitHub Discussions(讨论区)的帮助下,你可以把你的博客的评论提升到一个新的水平。在这篇文章中,我将解释如何将GitHub讨论整合到你的博客中并充分利用它。

@littlefrogfromthenorth
Copy link
Contributor

关于部署gisgus

@kLiHz
Copy link
Contributor

kLiHz commented Aug 2, 2022

看起来不错, looks good to me 😆

@NachtgeistW
Copy link
Contributor

NachtgeistW commented Aug 2, 2022

Gitalk 索取了过多的权限(每个评论者的所有 public repo 的读写权限),且必须由管理员手动给新页面开评论区。

Giscus 基于 GitHub Discussions,有包括但不限于下列优点:

  1. 需要用户授权少
  2. 每个用户都可以开新评论区
  3. 可以给页面点 reactions,也可以给评论点 reactions
  4. 可以有楼中楼
  5. 可以折叠评论
  6. 用户可以设定正序/倒序显示
  7. 支持暗色模式
  8. 支持 LaTeX 显示
  9. 授权是统一的,用户只需在某个使用 Giscus 的站点授权一次,而 Gitalk 是每个站点有自己的 OAuth App

这么看的话切过去只有好处没有坏处。
主站 Break 几分钟不是什么问题,在 OI Wiki 首页挂一个“维护公告”说明一下“我们要迁移评论系统,在什么什么时间内主站无法访问”就可以了。
我只有一个问题:以前的评论要如何迁移。

@littlefrogfromthenorth
Copy link
Contributor

littlefrogfromthenorth commented Aug 2, 2022

Gitalk 索取了过多的权限(每个评论者的所有 public repo 的读写权限),且必须由管理员手动给新页面开评论区。
Giscus 基于 GitHub Discussions,有包括但不限于下列优点:

  1. 需要用户授权少
  2. 每个用户都可以开新评论区
  3. 可以给页面点 reactions,也可以给评论点 reactions
  4. 可以有楼中楼
  5. 可以折叠评论
  6. 用户可以设定正序/倒序显示
  7. 支持暗色模式
  8. 支持 LaTeX 显示
  9. 授权是统一的,用户只需在某个使用 Giscus 的站点授权一次,而 Gitalk 是每个站点有自己的 OAuth App

这么看的话切过去只有好处没有坏处。 主站 Break 几分钟不是什么问题,在 OI Wiki 首页挂一个“维护公告”说明一下“我们要迁移评论系统,在什么什么时间内主站无法访问”就可以了。 我只有一个问题:以前的评论要如何迁移。

请参考:https://docs.github.com/en/discussions/managing-discussions-for-your-community/moderating-discussions#converting-an-issue-to-a-discussion

GitHub Docs
You can promote healthy collaboration by marking comments as answers, locking or unlocking discussions, converting issues to discussions, and editing or deleting comments, discussions, and categories that don't align with your community's code of conduct.

@NachtgeistW
Copy link
Contributor

NachtgeistW commented Aug 2, 2022

Gitalk 索取了过多的权限(每个评论者的所有 public repo 的读写权限),且必须由管理员手动给新页面开评论区。
Giscus 基于 GitHub Discussions,有包括但不限于下列优点:

  1. 需要用户授权少
  2. 每个用户都可以开新评论区
  3. 可以给页面点 reactions,也可以给评论点 reactions
  4. 可以有楼中楼
  5. 可以折叠评论
  6. 用户可以设定正序/倒序显示
  7. 支持暗色模式
  8. 支持 LaTeX 显示
  9. 授权是统一的,用户只需在某个使用 Giscus 的站点授权一次,而 Gitalk 是每个站点有自己的 OAuth App

这么看的话切过去只有好处没有坏处。 主站 Break 几分钟不是什么问题,在 OI Wiki 首页挂一个“维护公告”说明一下“我们要迁移评论系统,在什么什么时间内主站无法访问”就可以了。 我只有一个问题:以前的评论要如何迁移。

请参考:https://docs.github.com/en/discussions/managing-discussions-for-your-community/moderating-discussions#converting-an-issue-to-a-discussion

GitHub Docs**Moderating discussions - GitHub Docs**You can promote healthy collaboration by marking comments as answers, locking or unlocking discussions, converting issues to discussions, and editing or deleting comments, discussions, and categories that don't align with your community's code of conduct.

阅读完毕,比我想得还容易。
那我没有任何意见了,LGTM。

GitHub Docs
You can promote healthy collaboration by marking comments as answers, locking or unlocking discussions, converting issues to discussions, and editing or deleting comments, discussions, and categories that don't align with your community's code of conduct.

@littlefrogfromthenorth
Copy link
Contributor

littlefrogfromthenorth commented Aug 2, 2022

现在改完的版本在这里:https://github.com/littlefrogfromthenorth/mkdocs-material

GitHub
A Material Design theme for MkDocs. Contribute to littlefrogfromthenorth/mkdocs-material development by creating an account on GitHub.

@ouuan
Copy link
Member

ouuan commented Aug 3, 2022

convert 可以在 https://github.com/OI-wiki/gitment/labels 对 gitalk 标签选择 “Convert issues” 来批量完成。

有一个问题是,现在使用的是页面标题而没有目录结构,就会有 基本概念 这种不知道是啥、很可能重复的页面标题,可以保持现状假装没有问题,也可以考虑写脚本自动把标题改了,或者是单独把这种有歧义的标题手动换掉。

GitHub
Contribute to OI-wiki/gitment development by creating an account on GitHub.

@ouuan
Copy link
Member

ouuan commented Aug 3, 2022

另外就是,gitment 这个 repo 名要不还是改了,改成 comments 之类的 🌚

目前,我们使用的评论框架是 gitment

@kLiHz
Copy link
Contributor

kLiHz commented Aug 5, 2022

有一个问题是,现在使用的是页面标题而没有目录结构 ...

@ouuan 我记得 giscus 好像有几种不同的配置方式? 应该选择一个合适的就可以解决了 (比如有一种好像就是用目录结构作为 GitHub Discussion 的标题的).

@ouuan
Copy link
Member

ouuan commented Aug 5, 2022

我记得 giscus 好像有几种不同的配置方式? 应该选择一个合适的就可以解决了 (比如有一种好像就是用目录结构作为 GitHub Discussion 的标题的).

问题在于现在的标题,而不是新的标题。如果要修就要批量修改现在的标题。

可以保持现状假装没有问题,也可以考虑写脚本自动把标题改了,或者是单独把这种有歧义的标题手动换掉。

我这段说的就是怎么处理旧标题。

@kLiHz
Copy link
Contributor

kLiHz commented Aug 5, 2022

明白,可能因为上一个评论主语不明显,所以本人没看出来,抱歉打扰了 😥

@Ir1d
Copy link
Member

Ir1d commented Aug 27, 2022

看了下似乎迁移难度不大,and 目前 gitment 好像又出问题了(原因不明) #4252

@littlefrogfromthenorth
Copy link
Contributor

littlefrogfromthenorth commented Sep 1, 2022 via email

This was referenced Dec 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants