emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/autocrypt cf63019b3f 89/94: Add a 'get-part' implementa


From: ELPA Syncer
Subject: [elpa] externals/autocrypt cf63019b3f 89/94: Add a 'get-part' implementation for Gnus
Date: Sun, 26 Mar 2023 07:58:03 -0400 (EDT)

branch: externals/autocrypt
commit cf63019b3f58c8696b7251cde4087127557283a3
Author: Philip Kaludercic <philipk@posteo.net>
Commit: Philip Kaludercic <philipk@posteo.net>

    Add a 'get-part' implementation for Gnus
---
 autocrypt-gnus.el | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/autocrypt-gnus.el b/autocrypt-gnus.el
index ffce813e62..bcb0df5ba0 100644
--- a/autocrypt-gnus.el
+++ b/autocrypt-gnus.el
@@ -19,6 +19,8 @@
 ;;; Code:
 
 (require 'gnus)
+(require 'gnus-art)
+(require 'mm-decode)
 (require 'autocrypt)
 
 ;;;###autoload
@@ -34,6 +36,23 @@
   "Return value for HEADER from current message."
   (gnus-fetch-original-field header))
 
+(defun autocrypt-gnus--get-part (index)
+  "Return the INDEX'th part of the message as a string."
+  (save-window-excursion
+    (let ((content nil))
+      (condition-case nil
+          (gnus-article-part-wrapper
+           (1+ index)
+           (lambda (&optional handle _arg _event)
+             (unless handle
+               (gnus-article-jump-to-part (1+ index))
+               (setq handle (get-text-property (point) 'gnus-data)))
+             (with-temp-buffer
+               (mm-insert-part handle)
+               (setq content (buffer-string)))))
+        (error))
+      content)))
+
 (provide 'autocrypt-gnus)
 
 ;;; autocrypt-gnus.el ends here



reply via email to

[Prev in Thread] Current Thread [Next in Thread]