Richiesta di funzionalità: supporto per \nicefrac in Discourse Math (\KaTeX/\MathJax)

:puzzle_piece: Richiesta di Funzionalità: Aggiungere il supporto per \\nicefrac nel rendering della matematica di Discourse

Riepilogo

Si prega di aggiungere il supporto per il comando \\nicefrac{a}{b} nel rendering della matematica di Discourse. Questa frazione in stile diagonale è compatta e ideale per le espressioni inline, migliorando la leggibilità senza interrompere l’interlinea.


:test_tube: Perché \\nicefrac?

  • Produce frazioni diagonali (con barra) pulite come $ \\nicefrac{1}{2} $
  • Più elegante di 1/2 e meno ingombrante di \\dfrac{1}{2}
  • Comune nella fisica, nella statistica e nella scrittura matematica

:package: Note sull’Implementazione

Discourse potrebbe supportare la matematica tramite KaTeX o MathJax, a seconda del plugin installato. Questa richiesta di funzionalità delinea l’implementazione per entrambi:

:white_check_mark: MathJax

MathJax potrebbe supportare \\nicefrac se viene caricata un’estensione:

MathJax.Hub.Config({
  TeX: {
    extensions: ["AMSmath.js", "nicefrac.js"]
  }
});

Ciò potrebbe significare che non sono necessarie modifiche al core: potresti semplicemente aggiornare la configurazione del plugin per abilitare l’estensione.

:wrench: KaTeX

KaTeX non supporta \\nicefrac nativamente. Potrebbe essere possibile aggiungere la seguente macro di workaround:

macros: {
  "\\\\nicefrac": "\\\\raisebox{.5ex}{\\\\footnotesize #1}/\\\\raisebox{-.25ex}{\\\\footnotesize #2}"
}

In alternativa, potrebbe valere la pena indagare sul supporto tramite estensioni KaTeX di terze parti come katex-extension.


:magnifying_glass_tilted_left: Riproduzione

Prova a renderizzare quanto segue:

$\\nicefrac{3}{4}$

Risultato in KaTeX:

`KaTeX parse error: Undefined control sequence: \\nicefrac

Risultato in MathJax (se l’estensione non è caricata):

LaTeX Error: Command \\nicefrac undefined `MathJax parse error: Undefined control sequence: \\nicefrac


:white_check_mark: Comportamento Atteso

  • $ \\nicefrac{3}{4} $ renderizza una frazione diagonale corretta
  • Potrebbe funzionare in modo coerente sia con le installazioni KaTeX che MathJax, sia con i provider
  • Sperabilmente, nessun errore di parsing o confusione per l’utente

:speech_balloon: Motivazione

  • \\nicefrac è ampiamente utilizzato nei documenti LaTeX e nei materiali didattici
  • Le frazioni inline appaiono più naturali nel testo
  • Migliora la formattazione matematica nelle comunità Discourse incentrate sulle STEM

:link: Riferimenti

Grazie per aver considerato questo piccolo ma prezioso miglioramento al rendering della matematica in Discourse!