Hey!
This is a fantastic component I overlooked.
I was working on my own version of a similar theme component, which allows adding custom keyboard shortcuts for custom wraps (either [wrap]-kind or any allowed HTML / markdown / Discourse-specific content).
For example, I can define Ctrl+Shift+K to insert or wrap selection with <kbd> </kbd>, or <hr>, or [wrap=announcement] [/wrap] (either inline or block) or anything we’d like, and also added optional buttons in the gear menu.
It supports new lines with \n in the content we insert.
It’s also compatible with the rich editor. The code for reference: https://github.com/Canapin/discourse-custom-shortcuts, with a warning: it’s Claude-coded and I haven’t reviewed the code yet. Plus, if I were to continue making my own solution instead of using yours, I’d probably change or add features to use some of yours.
Here’s what my component looks like:
So to get back to your component, I like the versatility of it, but it lacks two fundamental things for me:
- Rich editor support
- Easy way to add custom content (custom wraps, tags, or others)
While I can vibe code my own things, I’m not comfortable enough to rely on AI to propose pull requests (for example the rich editor support) for your component, and I’m not a programmer.
Besides the rich editor thing, what’s your opinion about the feasibility of adding new custom content from your component (basically that I described of my own component)? Would it be accepted or is it out of its scope?


