emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Ihor Radchenko <yantar92@gmail.com>
To: Phil Hudson <phil.hudson@iname.com>
Cc: emacs orgmode-mailinglist <emacs-orgmode@gnu.org>
Subject: [PATCH] Re: [BUG] org-element-map doco should refer to org-element-parse-buffer [9.5.2 (9.5.2-gfbff08 @ /home/phil/.emacs.d/elpa/org-9.5.2/)]
Date: Tue, 03 May 2022 11:44:25 +0800	[thread overview]
Message-ID: <87ee1bgu06.fsf@localhost> (raw)
In-Reply-To: <CAJ1MqVEZ+AqJRS+s8J=qaiGNStBBGRt-7RTuEWmz2oCkFSWd1g@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 465 bytes --]

Phil Hudson <phil.hudson@iname.com> writes:

> The documentation for function `org-element-parse-buffer' helpfully
> directs the user to that of function `org-element-map', but the
> documentation for the latter makes no mention of
> `org-element-parse-buffer'. It contains lengthy and helpful explanations
> of what to do with its `data' parameter, but no hint as to how to obtain
> that data.

Sounds reasonable.
Will something like the attached do?


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-org-element-map-Refer-to-org-element-parse-buffer-in.patch --]
[-- Type: text/x-patch, Size: 2160 bytes --]

From 6041817f426aa0976f557f4c108203b8eed37ac1 Mon Sep 17 00:00:00 2001
Message-Id: <6041817f426aa0976f557f4c108203b8eed37ac1.1651549348.git.yantar92@gmail.com>
From: Ihor Radchenko <yantar92@gmail.com>
Date: Tue, 3 May 2022 11:40:26 +0800
Subject: [PATCH] org-element-map: Refer to `org-element-parse-buffer' in the

* lisp/org-element.el (org-element-map): Update docstring.  Mention
that parse tree can be obtained using `org-element-parse-buffer'.  Add
an example.
 lisp/org-element.el | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/lisp/org-element.el b/lisp/org-element.el
index 3856079aa..4be345001 100644
--- a/lisp/org-element.el
+++ b/lisp/org-element.el
@@ -4524,12 +4524,12 @@ (defun org-element-map
     (data types fun &optional info first-match no-recursion with-affiliated)
   "Map a function on selected elements or objects.
-DATA is a parse tree, an element, an object, a string, or a list
-of such constructs.  TYPES is a symbol or list of symbols of
-elements or objects types (see `org-element-all-elements' and
-`org-element-all-objects' for a complete list of types).  FUN is
-the function called on the matching element or object.  It has to
-accept one argument: the element or object itself.
+DATA is a parse tree (e.g. returned by `org-element-parse-buffer'), an element,
+an object, a string, or a list of such constructs.  TYPES is a symbol
+or list of symbols of elements or objects types (see `org-element-all-elements'
+and `org-element-all-objects' for a complete list of types).  FUN is the function
+called on the matching element or object.  It has to accept one
+argument: the element or object itself.
 When optional argument INFO is non-nil, it should be a plist
 holding export options.  In that case, parts of the parse tree
@@ -4557,6 +4557,7 @@ (defun org-element-map
 the following example will return a flat list of all `src-block'
 and `example-block' elements in it:
+  (setq tree (org-element-parse-buffer))
   (org-element-map tree \\='(example-block src-block) #\\='identity)
 The following snippet will find the first headline with a level

  reply	other threads:[~2022-05-03  3:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-30  6:12 [BUG] org-element-map doco should refer to org-element-parse-buffer [9.5.2 (9.5.2-gfbff08 @ /home/phil/.emacs.d/elpa/org-9.5.2/)] Phil Hudson
2022-05-03  3:44 ` Ihor Radchenko [this message]
2022-05-03  8:10   ` [PATCH] " Phil Hudson
2022-05-14  5:09     ` Ihor Radchenko
2022-05-14  8:01       ` Phil Hudson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ee1bgu06.fsf@localhost \
    --to=yantar92@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=phil.hudson@iname.com \


* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).