# Предложение по улучшению для Rich Text Editor: команда \`/\` (как в Notion)

**URL:** https://meta.discourse.org/t/feature-suggestion-for-rich-text-editor-slash-command-a-la-notion/387188
**Category:** Feature
**Tags:** composer
**Created:** [30.Октябрь.2025 14:56:57 UTC](https://meta.discourse.org/t/feature-suggestion-for-rich-text-editor-slash-command-a-la-notion/387188 "2025-10-30T14:56:57Z")
**Posts on this page:** 1
**Showing post:** 5

<div class="post-metadata">

### Author: ![renato](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/renato/32/383632_2.png) [@renato](https://meta.discourse.org/u/renato)
#### Post date: [09.Ноябрь.2025 13:07:17 UTC](https://meta.discourse.org/t/feature-suggestion-for-rich-text-editor-slash-command-a-la-notion/387188/5 "2025-11-09T13:07:17Z")

</div>

Компонент визуального редактора полностью настраиваем с помощью зарегистрированных расширений, которые соответствуют типу [`RichEditorExtension`](https://github.com/discourse/discourse/blob/54723610355e58514646d6162e8a2511b160738b/frontend/discourse/app/lib/composer/rich-editor-extensions.js#L74-L99). Каждое пользовательское расширение ProseMirror (узел, маркер, плагин и т. д.), которое сейчас используется в ядре, регистрируется через вызов `registerRichEditorExtension`.

Если бы нужно было реализовать функцию слэш-команд **только** для визуального редактора, то это был бы правильный путь. Однако, на мой взгляд, у нас уже есть реализация автодополнения, которая очень похожа на то, что мы хотим получить от слэш-команд, и тот факт, что при этом легко можно поддерживать режим Markdown, представляет большой интерес.

Автодополнение, будучи функцией, предназначенной для работы в **обоих** редакторах, а не только в визуальном, находится **выше** специфичных для визуального редактора настроек. Автодополнение для эмодзи, упоминаний и хэштегов работает одинаково в обоих режимах редактора.

Они применяются в `setupEditor` и уничтожаются вместе с экземпляром редактора (например, при переключении между режимами):

> <https://github.com/discourse/discourse/blob/5ae2289db54df4fa2381857679796cb58d1ce7ec/frontend/discourse/app/components/d-editor.gjs#L615-L617>

> <https://github.com/discourse/discourse/blob/5ae2289db54df4fa2381857679796cb58d1ce7ec/frontend/discourse/app/components/d-editor.gjs#L472-L480>

> [@NateDhaliwal](#):
>
> Возможно ли реализовать это через TC/плагин или через прямой PR/изменения в коде?

Да, это можно реализовать через компонент темы или плагин (хотя работа через `setupEditor`/деструктор в данный момент может быть неуклюжей), но это область, где в идеале мы хотели бы предоставить возможности для дальнейшей кастомизации — новые компоненты тем или плагины должны иметь возможность добавлять дополнительные опции к слэш-командам со своими собственными правилами фильтрации. Поэтому идеальный вариант — это API для плагинов, предоставляемое ядром.

---

_[View the full topic](https://meta.discourse.org/t/feature-suggestion-for-rich-text-editor-slash-command-a-la-notion/387188)._
