The echo function doesn't sanitize its input, so if you preview a replace and there are double quotes in the diff, it breaks...
I fixed it by replacing vim.command('echo... with print(message) but there is probably a reason you want to use vim echo, but quotes should be escaped instead of eval'ing arbitrary parts of the file.
https://github.com/python-rope/ropevim/blob/master/ropevim.py#L394
The echo function doesn't sanitize its input, so if you preview a replace and there are double quotes in the diff, it breaks...
I fixed it by replacing
vim.command('echo...
with print(message) but there is probably a reason you want to use vim echo, but quotes should be escaped instead of eval'ing arbitrary parts of the file.