editor modes mostly implemented