On Thursday, 9 Jan 2020 at 09:20, Sven Bretfeld wrote: > Hi everybody > > Is this possible? > > ** headline <-- not exported > :PROPERTIES: <-- not exported > Some content. <-- exported
yes. I do this all the time to add structure to a document, structure that is not required in the exported version. I have the following code: #+begin_src emacs-lisp (defun esf/remove-lines-with-ignore-heading-tag (backend) (message "Deleting lines with ignore heading tag") (while (search-forward-regexp "^\\*+.*[ \t]+[a-ZA-Z0-9:]*:ignoreheading:[a-ZA-Z0-9:]*$" (point-max) t) (cond ((eq backend 'latex) (replace-match "#+latex: % \\&" )) ((eq backend 'html) (replace-match "#+html: <!-- \\& -->" )) (t (replace-match "")))) (message "... done deleting ignored headings.")) (add-hook 'org-export-before-processing-hook 'esf/remove-lines-with-ignore-heading-tag) #+end_src which then causes any headline with the ignoreheading tag to be removed, leaving the subtree under that headline present. One caveat: the subtree content inherits behaviour from the previous headline. For instance, if the previous headline was one that would not be exported at all, then this subtree will also not be exported. E.g.: #+begin_src org ,* heading 1 Text that will be exported ,* heading 2 :ignoreheading: Text that will also be exported but without the heading ,* heading 3 :noexport: Text that will not be exported. ,* heading 4 :ignoreheading: Text here will also not be exported because it ends up being under "heading 3" which has the :noexport: tag. #+end_src Note that my implementation is old and it could very well be that later versions of org have introduced something to cater for this use case. I have org customizations going back over 10 years... -- Eric S Fraga via Emacs 27.0.50, Org release_9.3-34-g2eee3c