Scrivere un editor da eseguire all'interno di un browser non è poi così diverso.
Usa Javascript. Usa un <div>
per rendere il tuo buffer; quando si aggiorna il suo contenuto o si modificano gli stili degli elementi al suo interno, il browser lo ridisegna per te. Molto probabilmente, in un editor vi-like orientato alla linea è comodo avere anche ogni riga in un% co_de nidificato separato.
Utilizza div
, onkeydown
e altri gestori di eventi di questo tipo per reagire alle azioni degli utenti.
Il resto dipende da te.