Solo per espandere, innanzitutto questo è qualcosa che voglio davvero che il core supporti, ma vale anche la pena espandere sulla complessità.
Il core di Discourse utilizza molte API direttamente contro TEXTAREA, @menzioni, inserimenti della barra degli strumenti in TEXTAREA, caricamenti, copia e incolla di immagini e altro ancora.
Tutto ciò non è astratto e presuppone che stia parlando con un TEXTAREA. Aggiungere un contenteditable lì direttamente significherebbe che dovrebbe anche simulare correttamente e molto accuratamente un TEXTAREA, qualcosa che probabilmente fallirà. Abbiamo bisogno di un bel po’ di lavoro per creare una sorta di framework di provider in modo da poter sostituire le cose.
Vedi anche:
Highlighter è certamente un ottimo primo passo in questa direzione perché non devi preoccuparti del mapping bidirezionale da markdown a testo.
Potrebbe esserci qualche hack ninja in cui puoi nascondere il TEXTAREA e quindi renderizzare un contenteditable sopra di esso, trasferendo gli eventi all’originale, ma anche questo richiederebbe una reimplementazione del posizionamento di @menzione.