Tipos de Token Personalizados de Markdown-it causan errores en RTE

Prioridad/Severidad: ¿Baja?

Plataforma: Dispositivos que usan el nuevo RTE.

Descripción: La creación de tipos de tokens personalizados, que anteriormente funcionaban bien solo con el motor markdown-it, causa errores con ProseMirror. Como sin un esquema de ProseMirror para manejar el parseo a DOM, cualquier tipo de token personalizado crea un error. De manera similar, hay problemas de comportamiento al alternar entre RTE y Markdown con BBCode.

Pasos para reproducir:

Primero RTE:

  1. Abrir Editor
  2. Establecer modo a RTE
  3. Insertar BBCode personalizado.
    a. Por ejemplo con Discourse Meta: [wrap=test2 user-id=1]Contenido[/wrap]
  4. Descartar error y alternar entre modo RTE y md.
    a. BBCode se escapa

Primero Markdown:

  1. Abrir Editor
  2. Establecer modo a Markdown
  3. Insertar BBCode personalizado.
  4. Alternar entre modo md y RTE.
    a. BBCode no es visible
  5. Volver a alternar para ver el código fuente.

Solución alternativa actual:
Usar solo el modo Markdown.


Obtener el error en sí no es un gran problema, el problema mayor es el comportamiento extraño al alternar o al insertar el código.

La solución ideal sería que cada plugin de markdown creara un asistente/esquema de ProseMirror adecuado para manejarlo.

Con respecto al BBCode genérico [wrap], quizás lo mejor sea dejarlo en texto plano, ya que varios componentes podrían estar usando el BBCode genérico en la misma instancia de Discourse. La solución ideal probablemente sea permitir a los desarrolladores crear un asistente personalizado y que la salida coincida con sus propias implementaciones, y que recurra a texto plano si no se encuentran coincidencias.

De manera más general, con cualquier plugin existente que no se haya actualizado para usar ProseMirror, permitir que recurra a texto plano (que no se escape/oculte) sería una buena solución provisional.

2 Me gusta

Gracias por informar, @renato está atento a casos extremos como este, wrap ha sido nuestra solución para ciertos componentes de temas, lo haremos funcionar.

2 Me gusta

Recibo un mensaje de error similar si agrego la etiqueta de Galería [grid] en Markdown y luego vuelvo a editar mi publicación en modo WYSIWYG.

Entiendo que el problema es conocido y se está trabajando en él, solo añado el mensaje de error real:

No parser processed bbcode_open token for tag: div, attrs: [["class","d-image-grid"]]

Para aquellos que busquen esta cadena en meta después de experimentar este problema (como acabo de hacer). :slight_smile:

1 me gusta

Somos conscientes, el problema está siendo trabajado, deberíamos tenerlo resuelto en unas pocas semanas.

3 Me gusta

Me encontré con esto. Me alegra que se esté trabajando en ello.

La cuadrícula hace que las publicaciones se vean hermosas en lugar de un horrible desorden cuando los usuarios suben varias imágenes en la publicación.