Function: package--autosuggest-after-change-mode

package--autosuggest-after-change-mode is a byte-compiled function defined in package-activate.el.gz.

Signature

(package--autosuggest-after-change-mode)

Documentation

Display package suggestions for the current buffer.

This function is intended for addition to after-change-major-mode-hook.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/package-activate.el.gz
(defun package--autosuggest-after-change-mode ()
  "Display package suggestions for the current buffer.
This function is intended for addition to `after-change-major-mode-hook'."
  (when-let* ((avail (package--autosuggest-find-candidates)))
    (pcase-exhaustive package-autosuggest-style
      ('mode-line
       (setq mode-name
             (append
              (ensure-list mode-name)
              `((:propertize
                 "[Upgrade?]"
                 face mode-line-emphasis
                 mouse-face mode-line-highlight
                 help-echo "Click to see packages we suggest to improve editing in this buffer."
                 keymap ,(let ((map (make-sparse-keymap)))
                           (define-key map
                                       [mode-line down-mouse-1]
                                       #'package-autosuggest)
                           map)))))
       (force-mode-line-update t))
      ('always
       (package-autosuggest avail))
      ('message
       (message
        (substitute-command-keys
         (format "Found suggested packages: %s.  Install using  \\[package-autosuggest]"
                 (mapconcat #'symbol-name
                            (delete-dups (mapcar #'car avail))
                            ", "))))
       (dolist (rec avail)
         (add-to-list 'package--autosuggest-suggested (car rec)))))))