Actually fix #499.

This time around I don't break movement or Vim searches. I also
replicate emacs behaviour for pressing return.