Function: ibtypes::mail-address

ibtypes::mail-address is a byte-compiled function defined in hibtypes.el.

Signature

(ibtypes::mail-address)

Documentation

If on an e-mail address, compose mail to that address in another window.

To compose email in your default web browser:
  (setq mail-user-agent 'browse-url)
  (put mail-user-agent 'composefunc #'www-url-compose-mail)

To restore to using Emacs to compose mail:
  (setq mail-user-agent 'message-user-agent)

This implicit button type applies in any major mode listed in hypb:mail-address-mode-list, the HyRolo match buffer, any buffer attached to a file in hyrolo-file-list, or any buffer with "mail" or
"rolo" (case-insensitive) within its name.

If hypb:mail-address-mode-list is set to nil, this button type is active in all buffers.

Source Code

;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hibtypes.el
(defib mail-address ()
  "If on an e-mail address, compose mail to that address in another window.
To compose email in your default web browser:
  (setq mail-user-agent \\='browse-url)
  (put mail-user-agent \\='composefunc #\\='www-url-compose-mail)

To restore to using Emacs to compose mail:
  (setq mail-user-agent \\='message-user-agent)

This implicit button type applies in any major mode listed in
`hypb:mail-address-mode-list', the HyRolo match buffer, any buffer
attached to a file in `hyrolo-file-list', or any buffer with \"mail\" or
\"rolo\" (case-insensitive) within its name.

If `hypb:mail-address-mode-list' is set to nil, this button type is active
in all buffers."
  (when (let ((case-fold-search t))
          (or
           (and (or (null hypb:mail-address-mode-list)
		    (apply #'derived-mode-p hypb:mail-address-mode-list))
                (not (string-match "-Elements\\'" (buffer-name)))
                ;; Don't want this to trigger within an OOBR-FTR buffer.
                (not (string-match "\\`\\(OOBR.*-FTR\\|oobr.*-ftr\\)"
                                   (buffer-name)))
                (not (string-equal "*Implementors*" (buffer-name))))
           (and
            (string-match "mail\\|rolo" (buffer-name))
            ;; Don't want this to trigger in a mail/news summary buffer.
            (not (or (hmail:lister-p) (hnews:lister-p))))
           (when (boundp 'hyrolo-display-buffer)
             (equal (buffer-name) hyrolo-display-buffer))
           (and (hypb:buffer-file-name)
                (boundp 'hyrolo-file-list)
                (set:member (current-buffer)
                            (mapcar #'get-file-buffer (hyrolo-get-file-list))))))
    (let ((address (mail-address-at-p)))
      (when address
        (ibut:label-set address (match-beginning 1) (match-end 1))
        (hact 'link-to-compose-mail address)))))