Closed cute-jumper closed 8 years ago
I have the same problem, it was probably introduced in https://github.com/benma/visual-regexp.el/commit/80668e93223ad54d0c4c8facc1bac1cdf2155f4c
Ok, the format of this variable changed in emacs25 and the new code assumes only emacs 25.
@benma: given you are the most familiar with the change, you probably know better where to add the right if
checking for version < 25 :)
I'm seeing this error too. Where would a change need to be made to submit a patch?
Probably around https://github.com/benma/visual-regexp.el/blob/master/visual-regexp.el#L689 https://github.com/benma/visual-regexp.el/blob/master/visual-regexp.el#L701 and https://github.com/benma/visual-regexp.el/blob/master/visual-regexp.el#L718
Some wrapping with (if (version< emacs-version "25") foo bar)
or similar
Fixed in https://github.com/benma/visual-regexp.el/commit/2cf4dc5a2dff0736eb2e2da95997d7274bbb5766. Please let me know if that helps.
For Emacs 24, the defaults of visual regexp and the builtin replace are not now independent (and interoperable), but at least using vr does not break the builtin functions anymore. In Emacs 25, the defaults variable is shared between vr and the builtin replace and fully compatible.
Nice :+1: I confirm the problem is gone on my end.
Looks like it's time for me to upgrade to Emacs 25 :)
Looks like it's time for me to upgrade to Emacs 25 :)
I for one did not have any issues with upgrading, so give it a try :page_facing_up:
@cute-jumper can you confirm this problem is solved for you as well?
Ah yes, I tried using the master branch instead of the exact commit you linked. Fixed for me in Emacs 24. Thank you!
What do you mean? The commit I linked is master.
@benma Perfect. Thank you.
vr/query-replace-defaults-variable
's default value isquery-replace-defaults
, which will be set to a list of cons pairs after performing some replacements, for example,(("A" . "b") ("B" . "b"))
. However,query-replace
only store a cons pair inquery-replace-defaults
, i.e.,("A" . "b")
. This inconsistency makes it impossible to use them together. After using one of them, we can't use another one.