I have trouble making paredit work together with evil. I can either turn of evil-paredit and then don't have paredit work correctly as commands like x and dd will mess up the matching parenthesis. If I enable evil-paredit then certain commands like visual-selection + deletion won't work correctly.

Let me illustrate the issue with an exmaple. Consider the following code example:

(let ((x 1)                                                                     
      (y 2))                                                                    
  (+ x y))

If I visual-line select line 2 and 3 and enter x (deletion of the last two lines), I either get no change at all, as evil-paredit is blocking that modification or with no evil-paredit enabled I end up with unmatched parenthesis. I would like to end up with something like:

(let ((x 1)

This deletes all the matching parenthesis, but keeps the unmatched ones in the selection intact.

The four plugins I am using and that I think are relevant for this questions are evil, evil-paredit, paredit and evil-surround.


I ended up using evil-cleverparens which solved the issue to my liking.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.