Estoy trabajando en un plugin de Markdown y tengo problemas para agregar una configuración del sitio que permita desactivar la función. Escribí el plugin siguiendo la estructura de Discourse Footnote, que incluye una configuración para desactivar ese plugin. Instalé el plugin de notas al pie y verifiqué que se puede desactivar desde la interfaz de usuario y que su prueba correspondiente pasa. Sin embargo, desactivar mi plugin desde las configuraciones del sitio no tiene ningún efecto, y la prueba unitaria lo confirma al fallar.
No estoy seguro de qué estoy haciendo de manera diferente en comparación con el plugin de notas al pie. Es posible que mi uso de opts.features sea completamente incorrecto o que esté haciendo suposiciones erróneas, ya que, como en casi todos los demás lugares, simplemente reemplacé “footnotes” por “ruby”. Cualquier ayuda sería apreciada.
El repositorio está aquí: GitHub - seanblue/discourse-ruby: Adds ruby markdown support to Discourse · GitHub
Los aspectos clave relacionados con la configuración del sitio incluyen:
Y esta es la prueba que sigue fallando (aún no está en el repositorio):
it "can be disabled" do
SiteSetting.enable_markdown_ruby = false
markdown = <<~MD
Here is some text: {漢字|かん|じ}.
MD
html = <<~HTML
<p>Here is some text: {漢字|かん|じ}.</p>
HTML
cooked = PrettyText.cook markdown.strip
expect(cooked).to eq(html.strip)
end
No es sorprendente que el error indique que se está obteniendo el texto procesado como si el Markdown aún se aplicara.
expected: "<p>Here is some text: {漢字|かん|じ}.</p>"
got: "<p>Here is some text: <ruby>漢<rt>かん</rt>字<rt>じ</rt></ruby>.</p>"