作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从 mutt 切换到 gnus,希望从电子邮件中提取 url,并能够启动一个包含给定电子邮件中所有 url 的新缓冲区。 Urlview 为 mutt 执行此操作,作为我正在寻找的内容的引用框架。
最佳答案
我编写了以下内容并测试了它是否适用于几篇文章。也许这对您来说是一个很好的起点。
(defun gnus-article-extract-url-into-buffer ()
(interactive)
(let ((simple-url-regexp "https?://")
urls)
(save-excursion
;; collect text URLs
(while (search-forward-regexp simple-url-regexp nil t)
(when-let (url (thing-at-point 'url))
(setq urls (cons url urls))))
(beginning-of-buffer)
;; collect widget URLs
(while (not (eobp))
(goto-char (next-overlay-change (point)))
(when-let (link (get-text-property (point) 'gnus-string))
(and (string-match simple-url-regexp link)
(setq urls (cons link urls))))
(goto-char (next-overlay-change (point)))))
(when urls
(switch-to-buffer-other-window "*gnus-article-urls*")
(dolist (url urls)
(insert url))
(beginning-of-buffer))))
我应该澄清,这是为了从文章缓冲区内运行。另外,我可能错过了重点,因为按照字面意思理解了您所说的启动包含网址的新缓冲区,在这种情况下,您可以将最后一个表单更改为:
(when urls
(dolist (url urls)
(browse-url url)))
或者,如果您不需要解析小部件 URL,Tyler 的方法会更简单。
关于emacs - gnus 有 urlview (a la mutt) 吗?或者只是用 elisp 来提取 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4982387/
我从 mutt 切换到 gnus,希望从电子邮件中提取 url,并能够启动一个包含给定电子邮件中所有 url 的新缓冲区。 Urlview 为 mutt 执行此操作,作为我正在寻找的内容的引用框架。
我是一名优秀的程序员,十分优秀!