Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
Already on GitHub? Sign in to your account
After 0 kbd iterations: Buffer is read-only: #<buffer ...> #788
Comments
|
Thanks, I can reproduce this behavior and will try investigating later. For the record, you can reproduce this in an easier way by running edit: Fun, turns out "I" is bound to |
|
I've figured out two things meanwhile, but no complete solution:
I suspect that due to this error, Evil fails changing the state properly, but debugging this is a bit hard because of the heavy macro use in |
Alexander-Shukaev
commented
Mar 8, 2017
|
Some good analysis out there! If you have spare time, would you mind to share how you debugged this? I mean, I've spent like a couple of hours and still could not catch the proper place. I tried |
|
For the first one, I grepped the Emacs sources. For the second, I copied definitions from https://lists.gnu.org/archive/html/emacs-devel/2010-07/msg01410.html describes a better approach that might work for you. |
Alexander-Shukaev commentedMar 7, 2017
•
edited
Run:
then
where
<read-only-file>is e.g./etc/fstab, thenC-vto go to the block-visual state, then select multiple lines (at least two), thenito perform multi-line insertion, then type something. Notice theerrors as you type. That's fine, but now press
ESCand you will getIf you now inspect the contents of the
evil-statevariable, it will benil. Evil is now in the broken state. Of course pressingESCone more time will get you to the normal state and everything should be fine. Nevertheless, why this error withAfter 0 kbd iterationsis happening exactly in case of multi-lineC-v? That is if you now try other variants (v,V, single-lineC-v) and the same scenario, you will see thatAfter 0 kbd iterationsnever occurs, the very firstESCwill already bring you to the normal state, and Evil is never in the broken state. Something fundamental is wrong here.