Hi there, I would like to work on a patch to add support for ]p and [p to evil. I have some working code (see below) to adjust the indent after a call to evil-paste-after / evil-paste-before, but I would appreciate tips on how to integrate this with existing evil code (especially so that ]p will be a single undo step, that evil-paste-pop still works, …). All the best, Johann (defun get-common-indent-in-region (start end) (setq end (copy-marker end)) (unwind-protect (let (indentation) (save-excursion (goto-char start) (or (bolp) (forward-line 1)) (while (< (point) end) (skip-chars-forward " \t") (setq indentation (cons (current-column) indentation)) (forward-line 1))) (apply #'min indentation)) (move-marker end nil))) (defun my-evil-adjust-indent-afer-paste () (interactive) (unless (memq last-command '(evil-paste-after evil-paste-before)) (error "Previous command was not a line-wise evil-paste: %s" last-command)) (let* ((start (evil-get-marker ?\[)) (end (evil-get-marker ?\])) (common (get-common-indent-in-region start end)) (this (save-excursion (cond ((eq last-command 'evil-paste-before) (goto-char end) (forward-line 1)) (t (goto-char start) (forward-line -1))) (skip-chars-forward " \t") (current-column)))) (indent-rigidly start end (- this common))))