more like emacs style actaully