Function: emacs-news--buttonize

emacs-news--buttonize is a byte-compiled function defined in emacs-news-mode.el.gz.

Signature

(emacs-news--buttonize)

Documentation

Make manual and symbol references into buttons.

Source Code

;; Defined in /usr/src/emacs/lisp/textmodes/emacs-news-mode.el.gz
(defun emacs-news--buttonize ()
  "Make manual and symbol references into buttons."
  (save-excursion
    (with-silent-modifications
      (let ((inhibit-read-only t))
        ;; Do functions and variables.
        (goto-char (point-min))
        (search-forward "\f" nil t)
        (while (re-search-forward "'\\([^-][^ \t\n]+\\)'" nil t)
          ;; Filter out references to key sequences.
          (let ((string (match-string 1)))
            (when-let* ((symbol (intern-soft string)))
              (when (or (boundp symbol)
                        (fboundp symbol))
                (buttonize-region (match-beginning 1) (match-end 1)
                                  (lambda (symbol)
                                    (describe-symbol symbol))
                                  symbol)))))
        ;; Do manual references.
        (goto-char (point-min))
        (search-forward "\f" nil t)
        (while (re-search-forward "\"\\(([a-z0-9-]+)[ \n][^\"]\\{1,80\\}\\)\""
                                  nil t)
          (buttonize-region (match-beginning 1) (match-end 1)
                            #'info
                            (match-string 1)))))))