Function: list-dynamic-libraries--refresh

list-dynamic-libraries--refresh is a byte-compiled function defined in misc.el.gz.

Signature

(list-dynamic-libraries--refresh)

Documentation

Recompute the list of dynamic libraries.

Internal use only.

Source Code

;; Defined in /usr/src/emacs/lisp/misc.el.gz
(defun list-dynamic-libraries--refresh ()
  "Recompute the list of dynamic libraries.
Internal use only."
  (setq tabulated-list-format  ; recomputed because column widths can change
        (let ((max-id-len 7) (max-name-len 11))
          (dolist (lib dynamic-library-alist)
            (let ((id-len (length (symbol-name (car lib))))
                  (name-len (apply 'max (mapcar 'length (cdr lib)))))
              (when (> id-len max-id-len) (setq max-id-len id-len))
              (when (> name-len max-name-len) (setq max-name-len name-len))))
          (vector (list "Library" (1+ max-id-len) t)
                  (list "Loaded from" (1+ max-name-len) t)
                  (list "Candidate names" 0 t))))
  (tabulated-list-init-header)
  (setq tabulated-list-entries nil)
  (dolist (lib dynamic-library-alist)
    (let* ((id (car lib))
           (from (get id :loaded-from)))
      (when (or from
                (not list-dynamic-libraries--loaded-only-p))
        (push (list id (vector (symbol-name id)
                               (list-dynamic-libraries--loaded from)
                               (mapconcat 'identity (cdr lib) ", ")))
              tabulated-list-entries))))
  (when (not dynamic-library-alist)
    (message "No dynamic libraries found")))