Mi extensión de markdown funciona en la vista previa pero no en el contenido procesado

I have followed these instructions to create a Block BBCode markdown extension for Discourse.

The plugin works when previewing and editing a topic. However, when I actually post the Topic, the raw BBCode mark up appears in the post completely unprocessed.

Is there something I need to do to make sure the plugin operates on posted topics?

I’ve had this happen due to importing modules using Javascript import statement, and the differences in paths between the browser and the mini_racer.

Can you share your plugin code so we can help you to debug?

Thank you for the reply Rafael.

The plugin’s code is here:

As you can see it is very simple. I am using ES Module imports, but only for adding a button to the editing bar. The Markdown extension (https://gitlab.com/textblaze/discourse-snippets/blob/master/assets/javascripts/lib/markdown-it/snippets.js.es6) doesn’t import anything.

I think this is simple naming issue due to:

Move it from markdown-it to the discourse-markdown directory.

That fixed it. Thank you Sam.

Tengo el mismo problema al intentar sobrescribir el renderizador de fence (md.renderer.rules.fence): funciona en la ventana de vista previa, pero después de enviar se muestra el renderizado predeterminado de Discourse.

Aquí está el código:

export function setup(helper) {
  if (!helper.markdownIt) return;

  helper.allowList(['div.embedded_workflow', 'div.embedded_tip']);

  helper.registerPlugin((md) => {
    md.renderer.rules.fence = function (tokens, idx, options, env, slf) {
      let content = tokens[idx].content;
      return '<div class="embedded_workflow">' +
               '<div class="embedded_tip">Copia y pega este código en n8n para probar el flujo de trabajo</div>' +
               tokens[idx].content +
             '</div>'
    };
  });

}

También puedes ver la estructura completa del plugin aquí. ¡Agradecería mucho cualquier ayuda!

¿Alguna vez te funcionó?

En mi caso, lo tengo en la carpeta correcta /assets/javascripts/discourse-markdown y todavía solo aparece en la vista previa.

Para otras personas, funcionó después de un tiempo, lo que me hace pensar que reiniciaron el servidor. Yo también lo hice y no tuve suerte.