Currell Berry <[email protected]> writes:
Hello,
First thanks to all who work on Evil. It makes my days working in emacs much better.
One feature I use a lot in vim is, use 'yy' to yank a line, perform some arbitrary editing, possibly including deletions, trusting that vim will hold onto the yanked text in the 0 register until I yank another text, and then, finally, pasting the text back with '"0p'. Evil doesn't implement the same behavior here.
This link describes how it's supposed to work in vim.
http://blog.sanctum.geek.nz/advanced-vim-registers/ """ Numbered registers
The read-only registers 0 through 9 are your "historical record" registers. The register 0 will always contain the most recently yanked text, but never deleted text; this is handy for performing a yank operation, at least one delete operation, and then pasting the text originally yanked with "0p.
The registers 1 through 9 are for deleted text, with "1 referencing the most recently deleted text, "2 the text deleted before that, and so on up to "9. """
Note that register 0 never contains deleted text. In Evil (I have version 1.0-dev) register 0 DOES contain deleted text (try it out), therefore the workflow described above does not work.
I'm not sure if this is done on purpose or you've had this discussion before, but I know I'd love this particular feature to work the same way as vim. Would this be easy to fix?
There's a bug report about this at https://bitbucket.org/lyro/evil/issue/339/zero-register-0-has-odd-behavior I'm not sure if it was done on purpose, but I think it was just an oversight. Perhaps an evil developer will confirm that. I also don't think it would be hard to implement but I don't really know elisp and haven't actually gotten around to trying to do it. -- Kari