On 2016-01-21T20:31:05-0500, Kjell Wooding wrote: > Oh goodness. My recollection is that 1 byte per character is assumed all > over the place. This is going to take a *while* to test properly. > > Maybe this is a good time for me to start looking at mg again...
Some things that were were challenging, or that were significantly edge-case-y: o extended lines with wide characters (For example, open http://sprunge.us/dRdU on a 80x24 terminal emulator, then press C-e a couple times, or just hold down M-f. Current mg has some problems doing this.) o making sure the dot lines up with the actual insert position in cases involving tabs, non-ASCII, wide non-ASCII, non-printable non-ASCII, extended lines, and mixtures of all of the above o potential for buffer overflow whenever ncol was used to mean `maximum number of bytes we'll ever need' o sanely placing the `$' to denote extended lines, depending on what type of character is the character that goes beyond ncol If there's something that seems suspiciously absent from that list, perhaps it's something I've overlooked and haven't tested myself. Hopefully that helps somewhat. -- S. Gilles