此组件仅适用于 Markdown 编辑器。与富文本编辑器不兼容。
安装 Composer Button Bonanza
“您能负担得起的 Composer 辅助功能!”
Composer Button Bonanza 是一个主题组件,它为 Composer 提供了更多的标记按钮。
开箱即用,它提供了一系列新按钮、一堆按钮、一个按钮的盛宴。默认配置向工具栏添加了三个新按钮(您能找到它们吗?
),并将其余的按钮隐藏在
弹出菜单中的一个切换按钮后面:
点击切换按钮后,其余按钮将可见:
通过主题组件的配置设置,您可以:
- 添加新的按钮定义(和/或删除提供的定义);
- 选择显示哪些按钮以及何时显示它们;
- 更改按钮的顺序,并将按钮放置在工具栏或工具栏的
弹出菜单中;
- 为按钮提供翻译/本地化。
此组件不定义任何标记或样式——它只是添加了方便的按钮(辅助功能!)来输入将调用现有样式的现有标记。其主要目的是帮助用户发现和使用 Composer 功能。例如,经常使用脚注的用户可能会直接在键盘上敲击 ^[ 和 ];但我们其他人会很高兴有一个
按钮来提醒我们该怎么做。
这种方法的一个好处是,如果您决定删除此主题组件,您不会干扰任何现有帖子的样式。此组件不负责任何样式设置;它只提供对 Composer 中已存在的功能,和/或由其他插件或主题组件提供的功能的快捷方式。
默认配置
默认配置提供了大多数(所有?)在默认 Discourse 安装中(启用了所有内置插件,未安装任何额外插件)可用的额外标记的定义:
- 文本样式:
- 下划线,
删除线
- 上标 和 下标
- 大号文本,小号文本
- 键盘样式
- 格式化
- 一级标题,二级标题,三级标题
- 脚注
- Ruby text
- 通过外部 URL 的图像(
<img>)
- 检查列表
- 高亮,插入的,
删除的 文本
- 符号
- 版权 ©,注册 ®,商标 ™
- 欧元 €,日元 ¥
- “耸肩”颜文字(因为,为什么不呢?¯\_(ツ)_/¯)
- 以及一个用于显示/隐藏上述大部分按钮的切换按钮
如上所述,这些只是默认设置。所有这些按钮都可以重新排列或删除,也可以添加新按钮。
19 个赞
Shauny
(Shaun Robinson)
2
太棒了,谢谢!
有没有办法直接在顶部工具栏中添加“spoiler”标签?我们经常使用它。
编辑:我已经解决了 
3 个赞
Shauny
(Shaun Robinson)
3
快捷方式如何工作?
我想为我的“隐藏内容”按钮创建一个键盘快捷方式,但大多数快捷方式不都是已经被其他功能占用了吗?
示例中说shift-4,但对我来说那是 $ 符号……
2 个赞
Heliosurge
(Dan DeMontmorency)
5
是的,非常好的组件。我在找那个在编辑器工具栏显示额外按钮的按钮。
我认为一个很酷的功能是添加一个按钮到编辑器工具栏。也许可以有两个选项:显示/隐藏和/或编辑器菜单。这样你就可以将功能分组到一个可选择的栏中。
比如说:
- 样式栏:可以有加粗、斜体、删除线等功能。
- 排版栏:表格、右对齐、居中等。
- 并且可以选择自定义主栏,添加常用功能。
(请记住,此组件仅公开 Discourse JS 代码中已有的参数/选项……)
对于快捷键,您需要指定快捷键以及任何修饰键……然后 Discourse 始终会加上 ctrl+(或 Apple 硬件上的 cmd+?)。例如,字符串“shift+4”(作为按钮参数)会转换为 ctrl+shift+4(作为快捷键)。
我还没有尝试找出一种方法来_移除_快捷键——同样,此组件是在 Composer 中已有的按钮基础上添加的。(我_希望_我能让 ctrl+e 不成为预格式化文本的快捷键,而是“跳转到行尾”!)
2 个赞
Shauny
(Shaun Robinson)
14
我在这里遇到了一个问题,我正在使用它并且很喜欢它,但我添加了一个“spoiler”按钮,它使用 DIV 而不是 SPAN 来创建 spoiler 标签,因此在使用所见即所得编辑器时,它们总是会另起一行。
有什么方法可以更改此设置吗?
Shauny
(Shaun Robinson)
15
这还支持吗?
仍然遇到问题,剧透在 DIV 中而不是 SPAN 中。
Shauny
(Shaun Robinson)
16
我猜这不再受支持了?
有人能建议我如何修复这个问题吗,“剧透”按钮无法正常工作(请看我之前的帖子)
我将对此进行调查,但我需要您具体说明是如何添加这个“剧透”按钮的。
Shauny
(Shaun Robinson)
18
谢谢!
这是我的设置:

下面还有更多。但通过以下方式添加了折叠内容:
spoiler,shift+x
在 Markdown 模式下,它工作得非常完美。
在所见即所得(WYSIWYG)模式下,当你选中一些内容并点击折叠按钮时,它不会被包裹在 SPAN 标签中,而是被包裹在 DIV 中,使其成为一个独立的块级元素。
谢谢!
就在一个小时前,我才意识到 ComposerButtonBonanza (CBB) 在所见即所得编辑器 (WYSIWYG-Composer) 中坏了。(或者,也许是反过来。) 我维护的网站不使用所见即所得编辑器,所以我从来没有注意到! 所以…… 唉。
(我不喜欢所见即所得编辑器。MediaWiki(例如维基百科)十几年前在所见即所得编辑器上投入了大量精力,认为这会鼓励更多人成为编辑者。结果却没有任何改变,而且他们也无法摆脱原始编辑器,因为所见即所得版本有很多事情实际上无法完成,而且与原始的维基代码+预览编辑器相比,它最终只是有点笨拙。)
嗯……与 CBB 无关……如果我在所见即所得编辑器中插入一个“剧透”(spoiler),然后点击剧透框外部编辑其他内容,它会永久模糊,而且我似乎无法再次编辑剧透文本……除非我切换到 Markdown 模式。是我遗漏了什么,还是这只是所见即所得模式中的一个错误?
……哦,算了! 如果我三击(出于沮丧和/或无聊),我就可以再次编辑剧透文本了!(我不喜欢所见即所得模式;我之前提过吗?)
1 个赞
Shauny
(Shaun Robinson)
20
如果您能修复剧透,使其不成为块级元素,我将非常感激 
我在第一个帖子中添加了一个警告,说明它与富文本编辑器不兼容。
我没有测试过,但听起来这与这个特定的组件无关。我建议你提交一个新的支持错误报告,并提供重现步骤。
renato
(Renato Atilio)
22
我无法重现,您使用的是什么浏览器?
此问题特定于该组件,核心的原始“模糊剧透”(Blur spoiler)操作使用的是不同的实现,而不仅仅是添加 [spoiler] bbcode。
2 个赞
我使用的是 Firefox 140.5.0esr。
1 个赞
renato
(Renato Atilio)
25
感谢您的报告,问题应该已经修复了。 (并为离题表示歉意)