复制帖子组件

||||
-|-|
:discourse2: | 摘要 | 复制帖子 在每篇帖子的帖子控制中显示一个按钮,该按钮将帖子的全部内容复制到用户的剪贴板。
| :eyeglasses: | 预览 | 在 Discourse 主题创建器上预览
:hammer_and_wrench: | 仓库链接 | https://github.com/discourse/discourse-copy-post
:open_book:|初次使用 Discourse 主题?| 使用 Discourse 主题的初学者指南

安装此主题组件

设置

名称 描述
copy_type 选择要保存到剪贴板的复制文本类型(Markdown 或 HTML)。
copy_button_allowed_groups 选择允许使用复制按钮的组。默认情况下,信任等级 1 组中的所有用户都将看到它。
翻译 默认值
title 复制此帖子的内容

截图

图片显示了一个论坛上的讨论线程,其中各种回复讨论了有史以来最具启发性的电影,包括对树木和阿尔巴尼亚的评论。(由 AI 标注)


:discourse2: 由我们托管? 主题组件在我们的标准、商业和企业计划中均可使用。

26 个赞

格式和媒体会怎样?

2 个赞

@Zup

可能需要在此领域进行一些改进,但目前:

  • 媒体未复制
  • 格式将丢失(即仅纯文本),但是,\u003cp\u003e 标签中的换行符将保留。
3 个赞

希望在粘贴到 Discourse 时可以更新为包含媒体和格式。

2 个赞

@Zup

是的,这绝对是我将来会努力改进的地方。

不过,在此期间,我添加了一个复制原始 HTML 内容的设置。如果将其设置为 true,复制按钮将复制帖子的原始 HTML 而不是纯文本。这样您应该就能获得格式和媒体。

4 个赞

太棒了!:clap:

也许可以添加第二个按钮,“复制”(在版主齿轮图标区域?),将帖子的全部内容自动复制到一个新主题中,并在标题开头添加“DUPLICATE: ”?

总之,目前已经非常方便了,谢谢!

4 个赞

也许可以让按钮向 /raw/topic_id/post_number 发送请求,这样你就可以复制真实的帖子内容了?这样它就能像非常有用的 Reddit Enhancement Suite “Source” 按钮一样工作了。

7 个赞

相似的组件已存在:https://meta.discourse.org/t/raw-post-button/152542/1。

在该组件的模态框中添加一个复制按钮可以将两种方法结合起来,您怎么看 @keegan @Johani

4 个赞

@md-misko 是的,我认为这是一个很棒的主意。由于我创建了一个复制按钮的小部件,我相信它可以非常简单地复制过来,用于模态框。

4 个赞

是否有仅向登录用户显示按钮的技巧?

1 个赞

@Jagster

现在有了!:smiley: 我添加了一个设置,用于应用显示小部件的最低信任级别。将其配置为0将使用户只有登录后才能看到按钮。

3 个赞

为什么我们不能在获得认可时竖起两个大拇指 :wink:

2 个赞

:+1: :+1:

现在@keegan也有了。 :smiley:

1 个赞

新安装时此功能无法正常工作。
管理员中的 min_trust_level 无法选择。
编辑:组件在管理员中运行但显示不正确

我 fork 了该仓库并使其正常工作,但我将 min_trust_level 设置为整数。
所以 (5) = ‘disabled’ (0-4) 如预期。因此进行了一些小的重写。

我还没有提交 PR…因为它是一个简化…也许其他人可以确认该组件是否无法正常工作?

2 个赞

@geoff777 我在新安装上测试了此功能,对我来说似乎运行正常。
另外,如果我应用这些更改,在 settings.yml 文件中使用整数设置 min_trust_level 的问题是,下拉列表中没有显示 0 值。

2 个赞

所选的除禁用外的任何值都不会显示在框中。据我所知,任何值都未使用。

4 个赞

啊抱歉,我的错,我以为你的意思是你在枚举中将字符串改成了整数,但你的意思是使用了整数类型。是的,这似乎是个更好的方法。我已经更新了主题组件来支持这一点。希望这能解决所有问题。

3 个赞

这是一个很棒的TC!在我们的用例中,我们希望作者将完整的帖子复制并粘贴到课程网站的外部编辑器中。如果能够以HTML或富文本格式复制包含媒体的整个帖子,那就太好了。

1 个赞

给之前使用过此功能的用户提个醒。我现在已经将这个项目从个人项目转变为官方的 Customization > Theme component :tada:。为此,我对组件进行了一些修改,以使其在最新版本的 Discourse 上正常工作。

我还更新了设置。现在不再仅限于信任等级设置,你可以选择 任何 允许使用复制按钮的组。此外,我还增加了一个 copy_type 设置,让你可以选择复制的文本是帖子的 HTML 标记还是原始 Markdown。

6 个赞

我认为在下拉菜单中选择“所有人”时不起作用。至少在我选择另一个用户组之前,我找不到该按钮。(我知道这个问题也影响其他插件和组件)

4 个赞