Subject: bug#75292: 31.0.50; igc: (file-error "Doing vfork" "Bad address")

From: Ihor Radchenko <[email-masked]>
Date: Thu, 02 Jan 2025 17:54:45 +0000

I am getting the belo error regularly, when Emacs is spawning external
process. Not every time though.

See the full backtrace below.
Please advice what I can do to debug further.

Debugger entered--Lisp error: (file-error "Doing vfork" "Bad address")
  (call-process-shell-command "grep -anE '^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$' '/home/yantar92/Org/rss_archive_2019.org'" nil t)
  (#<subr shell-command> "grep -anE '^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$' '/home/yantar92/Org/rss_archive_2019.org'" t nil)
  (shell-command@shell-command-with-editor-mode #<subr shell-command> "grep -anE '^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$' '/home/yantar92/Org/rss_archive_2019.org'" t nil)
  (apply shell-command@shell-command-with-editor-mode #<subr shell-command> ("grep -anE '^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$' '/home/yantar92/Org/rss_archive_2019.org'" t))
  (shell-command "grep -anE '^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$' '/home/yantar92/Org/rss_archive_2019.org'" t)
  (shell-command-to-string "grep -anE '^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$' '/home/yantar92/Org/rss_archive_2019.org'")
  (let ((ans (shell-command-to-string (format "grep -anE '%s' '%s'" regexp file)))) (if (string-empty-p ans) nil (setq matches (append matches (mapcar #'(lambda (str) (if ... ...)) (string-lines ans))))))
  (progn (let ((ans (shell-command-to-string (format "grep -anE '%s' '%s'" regexp file)))) (if (string-empty-p ans) nil (setq matches (append matches (mapcar #'(lambda ... ...) (string-lines ans)))))))
  (if (file-exists-p file) (progn (let ((ans (shell-command-to-string (format "grep -anE '%s' '%s'" regexp file)))) (if (string-empty-p ans) nil (setq matches (append matches (mapcar #'... (string-lines ans))))))))
  (let ((file (car tail))) (if (file-exists-p file) (progn (let ((ans (shell-command-to-string (format "grep -anE '%s' '%s'" regexp file)))) (if (string-empty-p ans) nil (setq matches (append matches (mapcar ... ...))))))) (setq tail (cdr tail)))
  (while tail (let ((file (car tail))) (if (file-exists-p file) (progn (let ((ans (shell-command-to-string ...))) (if (string-empty-p ans) nil (setq matches (append matches ...)))))) (setq tail (cdr tail))))
  (let ((tail files)) (while tail (let ((file (car tail))) (if (file-exists-p file) (progn (let ((ans ...)) (if (string-empty-p ans) nil (setq matches ...))))) (setq tail (cdr tail)))))
  (let (files matches) (if (eq org-capture-ref--org-agenda-files-cached org-agenda-files) (setq files org-capture-ref--org-agenda-files-and-archives-cached) (setq files (org-agenda-files t t)) (setq org-capture-ref--org-agenda-files-cached org-agenda-files) (setq org-capture-ref--org-agenda-files-and-archives-cached files)) (if (eq (car org-agenda-text-search-extra-files) 'agenda-archives) (progn (car-safe (prog1 org-agenda-text-search-extra-files (setq org-agenda-text-search-extra-files (cdr org-agenda-text-search-extra-files)))))) (setq files (append files org-agenda-text-search-extra-files)) (let ((inhibit-message t)) (org-save-all-org-buffers)) (let ((tail files)) (while tail (let ((file (car tail))) (if (file-exists-p file) (progn (let (...) (if ... nil ...)))) (setq tail (cdr tail))))) (setq matches (remove nil matches)) (if matches (progn (if dont-show-match-p nil (save-excursion (save-restriction (switch-to-buffer (marker-buffer ...)) (goto-char (car matches)) (org-back-to-heading t) (org-show-set-visibility 'lineage) (org-show-entry) (jit-lock-fontify-now (point) (save-excursion ...)) (if (yes-or-no-p "Update the entry according to the new capture? ") (progn ... ... ...))))) (if dont-show-match-p (org-capture-ref-message (string-join (mapcar #'org-capture-ref-get-message-string matches) "\n") 'error) (user-error "")))))
  (org-capture-ref-check-regexp-grep "^:(Sourc.URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$" t)
  (let nil (org-capture-ref-check-regexp-grep (seq-reduce #'(lambda (str repl-pair) (replace-regexp-in-string (car repl-pair) (cdr repl-pair) str)) '(("\\(^\\|[^\\]\\)|" . ".") ("\\\\|" . "|") ("\\\\\\." . "\\\\.") ("'" . ".") ("\\\\(" . "(") ("\\\\)" . ")")) regexp) dont-show-match-p))
  (cond ((eq org-capture-ref-check-regexp-method 'grep) (let nil (org-capture-ref-check-regexp-grep (seq-reduce #'(lambda (str repl-pair) (replace-regexp-in-string ... ... str)) '(("\\(^\\|[^\\]\\)|" . ".") ("\\\\|" . "|") ("\\\\\\." . "\\\\.") ("'" . ".") ("\\\\(" . "(") ("\\\\)" . ")")) regexp) dont-show-match-p))) ((eq org-capture-ref-check-regexp-method 'org-search-view) (let nil (org-capture-ref-check-regexp-search-view regexp dont-show-match-p))) (t (let nil (org-capture-ref-message (format "Invalid value of org-capture-ref-check-regexp-method: %s" org-capture-ref-check-regexp-method) 'error))))
  (org-capture-ref-check-regexp "^:(Source|URL\\+?):[ \11[]+https://curiouscoding\\.nl/posts/static-search-tree/[]]*$" t)
  (progn (org-capture-ref-check-regexp (format (alist-get org-capture-ref-check-regexp-method org-capture-ref-check-link-regexp) (regexp-quote (org-capture-ref-get-capture-info :link))) (org-capture-ref-get-capture-template-info :immediate-finish)))
  (if (org-capture-ref-get-capture-info :link) (progn (org-capture-ref-check-regexp (format (alist-get org-capture-ref-check-regexp-method org-capture-ref-check-link-regexp) (regexp-quote (org-capture-ref-get-capture-info :link))) (org-capture-ref-get-capture-template-info :immediate-finish))))
  (org-capture-ref-check-link)
  (run-hooks org-capture-ref-check-bibtex-functions)
  (catch :finish (run-hooks 'org-capture-ref-check-bibtex-functions))
  (if (org-capture-ref-get-bibtex-field :org-hd-marker) nil (catch :finish (run-hooks 'org-capture-ref-check-bibtex-functions)))
  (org-capture-ref-check-bibtex)
  (if (org-capture-ref-get-capture-info '(:query :force)) nil (org-capture-ref-check-bibtex))
  (progn (org-capture-ref-reset-state) (add-hook 'org-capture-after-finalize-hook #'org-capture-ref-fetch-collection-maybe 100) (if org-capture-ref-quiet-verbosity nil (org-capture-ref-message "Capturing BiBTeX...")) (if (org-capture-ref-get-capture-info '(:query :force)) nil (org-capture-ref-check-bibtex)) (org-capture-ref-get-bibtex) (if (and (org-capture-ref-get-bibtex-field :key) (not (string-match-p "[a-zA-Z]+_[0-9]+" (org-capture-ref-get-bibtex-field :key))) (< 10 (length (org-capture-ref-get-bibtex-field :key)))) nil (org-capture-ref-set-bibtex-field :key nil 'force) (org-capture-ref-set-bibtex-field :key (org-capture-ref-generate-key))) (org-capture-ref-set-bibtex-field :bibtex-string (org-capture-ref-format-bibtex)) (if (or (org-capture-ref-get-capture-info '(:query :org-hd-marker)) (org-capture-ref-get-bibtex-field :org-hd-marker)) (progn (let ((--mepom (or (org-capture-ref-get-capture-info ...) (org-capture-ref-get-bibtex-field :org-hd-marker)))) (save-excursion (cond ((markerp --mepom) (set-buffer ...)) ((numberp --mepom)) (t (if ... ...) (setq --mepom ...))) (save-excursion (save-restriction (widen) (goto-char ...) (org-back-to-heading) (org-capture-ref-get-bibtex-org-heading) (add-hook ... ... 100))))))) (if (org-capture-ref-get-capture-info '(:query :force)) nil (org-capture-ref-check-bibtex)) (if org-capture-ref-quiet-verbosity nil (org-capture-ref-message "Capturing BiBTeX... done")) (org-capture-ref-message (format "Captured: %s" (string-trim-right (org-capture-ref-get-org-entry) "\n[^z-a]*")) 'info))
  (unwind-protect (progn (org-capture-ref-reset-state) (add-hook 'org-capture-after-finalize-hook #'org-capture-ref-fetch-collection-maybe 100) (if org-capture-ref-quiet-verbosity nil (org-capture-ref-message "Capturing BiBTeX...")) (if (org-capture-ref-get-capture-info '(:query :force)) nil (org-capture-ref-check-bibtex)) (org-capture-ref-get-bibtex) (if (and (org-capture-ref-get-bibtex-field :key) (not (string-match-p "[a-zA-Z]+_[0-9]+" (org-capture-ref-get-bibtex-field :key))) (< 10 (length (org-capture-ref-get-bibtex-field :key)))) nil (org-capture-ref-set-bibtex-field :key nil 'force) (org-capture-ref-set-bibtex-field :key (org-capture-ref-generate-key))) (org-capture-ref-set-bibtex-field :bibtex-string (org-capture-ref-format-bibtex)) (if (or (org-capture-ref-get-capture-info '(:query :org-hd-marker)) (org-capture-ref-get-bibtex-field :org-hd-marker)) (progn (let ((--mepom (or ... ...))) (save-excursion (cond (... ...) (...) (t ... ...)) (save-excursion (save-restriction ... ... ... ... ...)))))) (if (org-capture-ref-get-capture-info '(:query :force)) nil (org-capture-ref-check-bibtex)) (if org-capture-ref-quiet-verbosity nil (org-capture-ref-message "Capturing BiBTeX... done")) (org-capture-ref-message (format "Captured: %s" (string-trim-right (org-capture-ref-get-org-entry) "\n[^z-a]*")) 'info)) (if (buffer-live-p org-capture-ref--buffer) (progn (kill-buffer org-capture-ref--buffer))))
  (org-capture-ref-process-capture)
  ((lambda nil (org-capture-ref-process-capture)))
  (doct--replace-template-strings "%{fetch-bibtex}* TODO %?%{space}%{org-entry}")
  (doct--fill-template "%{fetch-bibtex}* TODO %?%{space}%{org-entry}")
  (#<subr F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_16> "%{fetch-bibtex}* TODO %?%{space}%{org-entry}")
  (doct--fill-template)
  (org-capture-get-template)
  (#f(compiled-function (&optional goto keys) "Capture something.\n\\<org-capture-mode-map>\nThis will let you select a template from `org-capture-templates', and\nthen file the newly captured information.  The text is immediately\ninserted at the target location, and an indirect buffer is shown where\nyou can edit it.  Pressing `\\[org-capture-finalize]' brings you back to the previous\nstate of Emacs, so that you can continue your work.\n\nWhen called interactively with a `\\[universal-argument]' prefix argument GOTO, don't\ncapture anything, just go to the file/headline where the selected\ntemplate stores its notes.\n\nWith a `\\[universal-argument] \\[universal-argument]' prefix argument, go to the last note stored.\n\nWhen called with a `C-0' (zero) prefix, insert a template at point.\n\nWhen called with a `C-1' (one) prefix, force prompting for a date when\na datetree entry is made.\n\nELisp programs can set KEYS to a string associated with a template\nin `org-capture-templates'.  In this case, interactive selection\nwill be bypassed.\n\nIf `org-capture-use-agenda-date' is non-nil, capturing from the\nagenda will use the date at point as the default date.  Then, a\n`C-1' prefix will tell the capture process to use the HH:MM time\nof the day at point (if any) or the current HH:MM time." (interactive "P") #<bytecode 0x18ab8d26c4a26010>) nil "B")
  (funcall #f(compiled-function (&optional goto keys) "Capture something.\n\\<org-capture-mode-map>\nThis will let you select a template from `org-capture-templates', and\nthen file the newly captured information.  The text is immediately\ninserted at the target location, and an indirect buffer is shown where\nyou can edit it.  Pressing `\\[org-capture-finalize]' brings you back to the previous\nstate of Emacs, so that you can continue your work.\n\nWhen called interactively with a `\\[universal-argument]' prefix argument GOTO, don't\ncapture anything, just go to the file/headline where the selected\ntemplate stores its notes.\n\nWith a `\\[universal-argument] \\[universal-argument]' prefix argument, go to the last note stored.\n\nWhen called with a `C-0' (zero) prefix, insert a template at point.\n\nWhen called with a `C-1' (one) prefix, force prompting for a date when\na datetree entry is made.\n\nELisp programs can set KEYS to a string associated with a template\nin `org-capture-templates'.  In this case, interactive selection\nwill be bypassed.\n\nIf `org-capture-use-agenda-date' is non-nil, capturing from the\nagenda will use the date at point as the default date.  Then, a\n`C-1' prefix will tell the capture process to use the HH:MM time\nof the day at point (if any) or the current HH:MM time." (interactive "P") #<bytecode 0x18ab8d26c4a26010>) nil "B")
  (if (or (and (boundp 'yant/suppress-pop-frame) yant/suppress-pop-frame) (member :immediate-finish (assoc keys org-capture-templates))) (funcall orig-fun goto keys) (funcall old-fun orig-fun goto keys))
  (ocpf--org-capture@suppress-pop-frame-maybe #f(lambda (orig-fun &optional goto keys) :dynbind "Create a new frame and run org-capture." (interactive nil) (let ((frame-window-system (cond ((eq system-type ...) 'ns) ((eq system-type ...) 'x) ((eq system-type ...) 'w32))) (after-make-frame-functions #'(lambda (frame) (let ... ...)))) (make-frame (cons (cons 'window-system frame-window-system) ocpf-frame-parameters)))) #f(compiled-function (&optional goto keys) "Capture something.\n\\<org-capture-mode-map>\nThis will let you select a template from `org-capture-templates', and\nthen file the newly captured information.  The text is immediately\ninserted at the target location, and an indirect buffer is shown where\nyou can edit it.  Pressing `\\[org-capture-finalize]' brings you back to the previous\nstate of Emacs, so that you can continue your work.\n\nWhen called interactively with a `\\[universal-argument]' prefix argument GOTO, don't\ncapture anything, just go to the file/headline where the selected\ntemplate stores its notes.\n\nWith a `\\[universal-argument] \\[universal-argument]' prefix argument, go to the last note stored.\n\nWhen called with a `C-0' (zero) prefix, insert a template at point.\n\nWhen called with a `C-1' (one) prefix, force prompting for a date when\na datetree entry is made.\n\nELisp programs can set KEYS to a string associated with a template\nin `org-capture-templates'.  In this case, interactive selection\nwill be bypassed.\n\nIf `org-capture-use-agenda-date' is non-nil, capturing from the\nagenda will use the date at point as the default date.  Then, a\n`C-1' prefix will tell the capture process to use the HH:MM time\nof the day at point (if any) or the current HH:MM time." (interactive "P") #<bytecode 0x18ab8d26c4a26010>) nil "B")
  (apply ocpf--org-capture@suppress-pop-frame-maybe #f(lambda (orig-fun &optional goto keys) :dynbind "Create a new frame and run org-capture." (interactive nil) (let ((frame-window-system (cond ((eq system-type ...) 'ns) ((eq system-type ...) 'x) ((eq system-type ...) 'w32))) (after-make-frame-functions #'(lambda (frame) (let ... ...)))) (make-frame (cons (cons 'window-system frame-window-system) ocpf-frame-parameters)))) (#f(compiled-function (&optional goto keys) "Capture something.\n\\<org-capture-mode-map>\nThis will let you select a template from `org-capture-templates', and\nthen file the newly captured information.  The text is immediately\ninserted at the target location, and an indirect buffer is shown where\nyou can edit it.  Pressing `\\[org-capture-finalize]' brings you back to the previous\nstate of Emacs, so that you can continue your work.\n\nWhen called interactively with a `\\[universal-argument]' prefix argument GOTO, don't\ncapture anything, just go to the file/headline where the selected\ntemplate stores its notes.\n\nWith a `\\[universal-argument] \\[universal-argument]' prefix argument, go to the last note stored.\n\nWhen called with a `C-0' (zero) prefix, insert a template at point.\n\nWhen called with a `C-1' (one) prefix, force prompting for a date when\na datetree entry is made.\n\nELisp programs can set KEYS to a string associated with a template\nin `org-capture-templates'.  In this case, interactive selection\nwill be bypassed.\n\nIf `org-capture-use-agenda-date' is non-nil, capturing from the\nagenda will use the date at point as the default date.  Then, a\n`C-1' prefix will tell the capture process to use the HH:MM time\nof the day at point (if any) or the current HH:MM time." (interactive "P") #<bytecode 0x18ab8d26c4a26010>) nil "B"))
  (ocpf--org-capture #f(compiled-function (&optional goto keys) "Capture something.\n\\<org-capture-mode-map>\nThis will let you select a template from `org-capture-templates', and\nthen file the newly captured information.  The text is immediately\ninserted at the target location, and an indirect buffer is shown where\nyou can edit it.  Pressing `\\[org-capture-finalize]' brings you back to the previous\nstate of Emacs, so that you can continue your work.\n\nWhen called interactively with a `\\[universal-argument]' prefix argument GOTO, don't\ncapture anything, just go to the file/headline where the selected\ntemplate stores its notes.\n\nWith a `\\[universal-argument] \\[universal-argument]' prefix argument, go to the last note stored.\n\nWhen called with a `C-0' (zero) prefix, insert a template at point.\n\nWhen called with a `C-1' (one) prefix, force prompting for a date when\na datetree entry is made.\n\nELisp programs can set KEYS to a string associated with a template\nin `org-capture-templates'.  In this case, interactive selection\nwill be bypassed.\n\nIf `org-capture-use-agenda-date' is non-nil, capturing from the\nagenda will use the date at point as the default date.  Then, a\n`C-1' prefix will tell the capture process to use the HH:MM time\nof the day at point (if any) or the current HH:MM time." (interactive "P") #<bytecode 0x18ab8d26c4a26010>) nil "B")
  (apply ocpf--org-capture #f(compiled-function (&optional goto keys) "Capture something.\n\\<org-capture-mode-map>\nThis will let you select a template from `org-capture-templates', and\nthen file the newly captured information.  The text is immediately\ninserted at the target location, and an indirect buffer is shown where\nyou can edit it.  Pressing `\\[org-capture-finalize]' brings you back to the previous\nstate of Emacs, so that you can continue your work.\n\nWhen called interactively with a `\\[universal-argument]' prefix argument GOTO, don't\ncapture anything, just go to the file/headline where the selected\ntemplate stores its notes.\n\nWith a `\\[universal-argument] \\[universal-argument]' prefix argument, go to the last note stored.\n\nWhen called with a `C-0' (zero) prefix, insert a template at point.\n\nWhen called with a `C-1' (one) prefix, force prompting for a date when\na datetree entry is made.\n\nELisp programs can set KEYS to a string associated with a template\nin `org-capture-templates'.  In this case, interactive selection\nwill be bypassed.\n\nIf `org-capture-use-agenda-date' is non-nil, capturing from the\nagenda will use the date at point as the default date.  Then, a\n`C-1' prefix will tell the capture process to use the HH:MM time\nof the day at point (if any) or the current HH:MM time." (interactive "P") #<bytecode 0x18ab8d26c4a26010>) (nil "B"))
  (org-capture nil "B")
  (org-protocol-capture (:template "B" :url "https://curiouscoding.nl/posts/static-search-tree/" :title "Hacker News: Static search trees: faster than binary search" :elfeed-data #s(elfeed-entry :id ("news.ycombinator.com" . "https://curiouscoding.nl/posts/static-search-tree/") :title "Static search trees: faster than binary search" :link "https://curiouscoding.nl/posts/static-search-tree/" :date 1735690083.0 :content #s(elfeed-ref :id "8e2e9d3bf05bcac3908e187a096bb899ea3dfefc") :content-type html :enclosures nil :tags (opened) :feed-id "https://news.ycombinator.com/rss" :meta (:elfeed-score/score 0))))
  (let ((yant/suppress-pop-frame t)) (org-protocol-capture (list :template "B" :url it :title (format "%s: %s" (elfeed-feed-title (elfeed-entry-feed entry)) (elfeed-entry-title entry)) :elfeed-data entry)))
  (progn (fset 'raise-frame vnew) (let ((yant/suppress-pop-frame t)) (org-protocol-capture (list :template "B" :url it :title (format "%s: %s" (elfeed-feed-title (elfeed-entry-feed entry)) (elfeed-entry-title entry)) :elfeed-data entry))))
  (unwind-protect (progn (fset 'raise-frame vnew) (let ((yant/suppress-pop-frame t)) (org-protocol-capture (list :template "B" :url it :title (format "%s: %s" (elfeed-feed-title (elfeed-entry-feed entry)) (elfeed-entry-title entry)) :elfeed-data entry)))) (fset 'raise-frame old))
  (let* ((vnew #'(lambda (&rest _) nil)) (old (symbol-function 'raise-frame))) (unwind-protect (progn (fset 'raise-frame vnew) (let ((yant/suppress-pop-frame t)) (org-protocol-capture (list :template "B" :url it :title (format "%s: %s" (elfeed-feed-title ...) (elfeed-entry-title entry)) :elfeed-data entry)))) (fset 'raise-frame old)))
  (progn (let* ((vnew #'(lambda (&rest _) nil)) (old (symbol-function 'raise-frame))) (unwind-protect (progn (fset 'raise-frame vnew) (let ((yant/suppress-pop-frame t)) (org-protocol-capture (list :template "B" :url it :title (format "%s: %s" ... ...) :elfeed-data entry)))) (fset 'raise-frame old))))
  (if it (progn (let* ((vnew #'(lambda (&rest _) nil)) (old (symbol-function 'raise-frame))) (unwind-protect (progn (fset 'raise-frame vnew) (let ((yant/suppress-pop-frame t)) (org-protocol-capture (list :template "B" :url it :title ... :elfeed-data entry)))) (fset 'raise-frame old)))))
  (let ((it (elfeed-entry-link entry))) (if it (progn (let* ((vnew #'(lambda ... nil)) (old (symbol-function 'raise-frame))) (unwind-protect (progn (fset 'raise-frame vnew) (let (...) (org-protocol-capture ...))) (fset 'raise-frame old))))))
  (while (consp --cl-var--) (setq entry (car --cl-var--)) (elfeed-untag entry 'unread) (let ((it (elfeed-entry-link entry))) (if it (progn (let* ((vnew #'...) (old (symbol-function ...))) (unwind-protect (progn (fset ... vnew) (let ... ...)) (fset 'raise-frame old)))))) (setq --cl-var-- (cdr --cl-var--)))
  (let* ((--cl-var-- entries) (entry nil)) (while (consp --cl-var--) (setq entry (car --cl-var--)) (elfeed-untag entry 'unread) (let ((it (elfeed-entry-link entry))) (if it (progn (let* ((vnew ...) (old ...)) (unwind-protect (progn ... ...) (fset ... old)))))) (setq --cl-var-- (cdr --cl-var--))) nil)
  (let ((entries (elfeed-search-selected))) (let* ((--cl-var-- entries) (entry nil)) (while (consp --cl-var--) (setq entry (car --cl-var--)) (elfeed-untag entry 'unread) (let ((it (elfeed-entry-link entry))) (if it (progn (let* (... ...) (unwind-protect ... ...))))) (setq --cl-var-- (cdr --cl-var--))) nil) (mapc #'elfeed-search-update-entry entries) (if (use-region-p) nil (forward-line)))
  (#f(lambda () :dynbind "Capture selected entries into inbox." (interactive nil) (elfeed-search-tag-all 'opened) (meta-up) (let ((entries (elfeed-search-selected))) (let* ((--cl-var-- entries) (entry nil)) (while (consp --cl-var--) (setq entry (car --cl-var--)) (elfeed-untag entry 'unread) (let ((it ...)) (if it (progn ...))) (setq --cl-var-- (cdr --cl-var--))) nil) (mapc #'elfeed-search-update-entry entries) (if (use-region-p) nil (forward-line)))))
  (apply #f(lambda () :dynbind "Capture selected entries into inbox." (interactive nil) (elfeed-search-tag-all 'opened) (meta-up) (let ((entries (elfeed-search-selected))) (let* ((--cl-var-- entries) (entry nil)) (while (consp --cl-var--) (setq entry (car --cl-var--)) (elfeed-untag entry 'unread) (let ((it ...)) (if it (progn ...))) (setq --cl-var-- (cdr --cl-var--))) nil) (mapc #'elfeed-search-update-entry entries) (if (use-region-p) nil (forward-line)))) nil)
  (yant/elfeed-capture-entry)
  (funcall-interactively yant/elfeed-capture-entry)
  (command-execute yant/elfeed-capture-entry)

In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.42, cairo version 1.18.2) of 2024-12-28 built on localhost
Repository revision: ae6924ac7e76c40bb2c1e99dda60fbad5a971046
Repository branch: scratch/igc
Windowing system distributor 'The X.Org Foundation', version 11.0.12101014
System Description: Gentoo Linux

Configured using:
 'configure --with-mps=yes --with-native-compilation 'CFLAGS=-g3
 -I/opt/mps/include -L/opt/mps/lib'
 JAVAC=/etc/java-config-2/current-system-vm/bin/javac
 PKG_CONFIG_PATH=/usr/share/guile-data/3.0/pkgconfig'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG
LCMS2 LIBXML2 MODULES MPS NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG
SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM
XINPUT2 XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.utf8
  locale-coding-system: utf-8-unix

-- 
Ihor Radchenko // yantar92,
Org mode maintainer,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>