You may use something similar to org-quick-peek--get-entry-text from org-quick-peek package (https://github.com/alphapapa/org-quick-peek):
(cl-defun org-quick-peek--get-entry-text (marker &key keep-drawers keep-planning) "Return Org entry text from node at MARKER. If KEEP-DRAWERS is non-nil, drawers will be kept, otherwise removed." ;; Modeled after `org-agenda-get-some-entry-text' (let (text) (with-current-buffer (marker-buffer marker) ;; Get raw entry text (org-with-wide-buffer (goto-char marker) ;; Skip heading (end-of-line 1) ;; Get entry text (setq text (buffer-substring (point) (or (save-excursion (outline-next-heading) (point)) (point-max)))))) (with-temp-buffer (org-mode) (insert text) (unless keep-drawers (goto-char (point-min)) (while (re-search-forward org-drawer-regexp nil t) ;; Remove drawers (delete-region (match-beginning 0) (progn (re-search-forward "^[ \t]*:END:.*\n?" nil 'move) (point))))) (unless keep-planning (goto-char (point-min)) (while (re-search-forward org-planning-line-re nil t) ;; Remove planning line (kill-whole-line))) (setq text (buffer-substring (point-min) (point-max)))) (-reduce-r #'funcall (reverse (cons text (cons #'identity org-quick-peek-filter-functions)))))) Best, Ihor John Kitchin <jkitc...@andrew.cmu.edu> writes: > Hi everyone, > > I am trying to get the body of a heading up to the next subheading. For > example with this org file, > > * quiz one > > This is the description. > Use emacs for this. > > ** question 1 > what is 40 + 2 > > If the point is in the first heading, I want to run a function that would > return the string "This is the description.\nUse emacs for this." > > I thought there was a simple way to do that, but so far it has eluded my > google fu. Any hints? > > John > > ----------------------------------- > Professor John Kitchin > Doherty Hall A207F > Department of Chemical Engineering > Carnegie Mellon University > Pittsburgh, PA 15213 > 412-268-7803 > @johnkitchin > http://kitchingroup.cheme.cmu.edu -- Ihor Radchenko, PhD, Center for Advancing Materials Performance from the Nanoscale (CAMP-nano) State Key Laboratory for Mechanical Behavior of Materials, Xi'an Jiaotong University, Xi'an, China Email: yanta...@gmail.com, ihor_radche...@alumni.sutd.edu.sg