Function: Buffer-menu--unmark

Buffer-menu--unmark is a byte-compiled function defined in buff-menu.el.gz.

Signature

(Buffer-menu--unmark MARK)

Documentation

Remove MARK in current entry.

If MARK is \RET remove all marks.

Source Code

;; Defined in /usr/src/emacs/lisp/buff-menu.el.gz
(defun Buffer-menu--unmark (mark)
  "Remove MARK in current entry.
If MARK is \\`RET' remove all marks."
  (when-let* ((entry (tabulated-list-get-entry)))
    ;; A mark could appear in column 0 or 2.
    (dolist (col '(0 2))
      (when (or (char-equal mark ?\r)
                (char-equal mark (string-to-char (aref entry col))))
        (tabulated-list-set-col col " " t)))
    ;; Reset modified mark in column 2.
    (let ((buf (Buffer-menu-buffer)))
      (when (and buf (buffer-modified-p buf)
                 (string-equal (aref entry 2) " "))
        (tabulated-list-set-col 2 "*" t)))))