Function: evil-set-register

evil-set-register is a byte-compiled function defined in evil-common.el.

Signature

(evil-set-register REGISTER TEXT)

Documentation

Set the contents of REGISTER to TEXT.

If REGISTER is an upper case character then TEXT is appended to that register instead of replacing its content.

Source Code

;; Defined in ~/.emacs.d/elpa/evil-20251108.138/evil-common.el
(defun evil-set-register (register text)
  "Set the contents of REGISTER to TEXT.
If REGISTER is an upper case character then TEXT is appended to that
register instead of replacing its content."
  (cond
   ((not (characterp register)) (user-error "Invalid register"))
   ;; don't allow modification of read-only registers
   ((member register '(?: ?. ?%))
    (user-error "Can't modify read-only register"))
   ((eq register ?\") (kill-new text))
   ((<= ?1 register ?9)
    (if (null kill-ring)
        (kill-new text)
      (let ((kill-ring-yank-pointer kill-ring-yank-pointer)
            interprogram-paste-function
            interprogram-cut-function)
        (current-kill (- register ?1))
        (setcar kill-ring-yank-pointer text))))
   ((eq register ?*) (evil-set-selection 'PRIMARY text))
   ((eq register ?+) (evil-set-selection 'CLIPBOARD text))
   ((eq register ?-) (setq evil-last-small-deletion text))
   ((eq register ?_) nil) ; the black hole register
   ((and (<= ?A register) (<= register ?Z))
    (evil-append-register (downcase register) text))
   (t (set-register register text))))