Basis for multi-mode editor