Function: hui-menu-sort-buffers

hui-menu-sort-buffers is a byte-compiled function defined in hui-jmenu.el.

Signature

(hui-menu-sort-buffers BUFFER-AND-MODE-NAME-LIST)

Documentation

Return reverse sort of BUFFER-AND-MODE-NAME-LIST, (buffer-name . mode-name).

Reverse sort elements by mode-name and then by buffer-name.

Source Code

;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hui-jmenu.el
(defun hui-menu-sort-buffers (buffer-and-mode-name-list)
  "Return reverse sort of BUFFER-AND-MODE-NAME-LIST, (`buffer-name' . `mode-name').
Reverse sort elements by `mode-name' and then by `buffer-name'."
  (with-temp-buffer
    (setq buffer-read-only nil)
    (erase-buffer)
    (let ((standard-output (current-buffer)))
      (mapc #'print buffer-and-mode-name-list))
    (while (search-forward "\n\n" nil t)
      (replace-match "\n"))
    (if (hui-menu-program-path "sort")
	(call-process-region (point-min) (point-max)
			     "sort" t t nil "-r" "-k3,3" "-k1,1")
      ;; This fallback of sort-fields can only sort on one field, so
      ;; sort by major-mode and leave buffers within each mode
      ;; unsorted when no UNIX sort program is available.
      (sort-fields 3 (point-min) (point-max))
      (reverse-region (point-min) (point-max)))
    (insert "\)\n")
    (goto-char (point-min))
    (insert "\(")
    (goto-char (point-min))
    (read (current-buffer))))