Function: git-rebase-set-noncommit-action

git-rebase-set-noncommit-action is a byte-compiled function defined in git-rebase.el.

Signature

(git-rebase-set-noncommit-action ACTION VALUE-FN ARG)

Source Code

;; Defined in ~/.emacs.d/elpa/magit-20260411.1452/git-rebase.el
(defun git-rebase-set-noncommit-action (action value-fn arg)
  (goto-char (line-beginning-position))
  (pcase-let* ((inhibit-read-only t)
               (`(,initial ,trailer ,comment-p)
                (and (not arg)
                     (with-slots ((ln-action action)
                                  target trailer comment-p)
                         (git-rebase-current-line)
                       (and (equal ln-action action)
                            (list target trailer comment-p)))))
               (value (funcall value-fn initial)))
    (pcase (list value initial comment-p)
      (`("" nil ,_)
       (ding))
      (`(""  ,_ ,_)
       (magit-delete-line))
      (_
       (if initial
           (magit-delete-line)
         (forward-line))
       (insert (concat action " " value
                       (and (equal value initial)
                            trailer
                            (concat " " trailer))
                       "\n"))
       (unless git-rebase-auto-advance
         (forward-line -1))))))