I implement a cursor-like inline diff editor with accept/reject undo/redo https://github.com/Dimitri-WEI-Lingfeng/monaco-inline-diff-editor-with-accept-reject-undo