From mboxrd@z Thu Jan 1 00:00:00 1970 From: Diego Zamboni Subject: Re: export and split orgmode headers into separate md files? Date: Sun, 12 Jan 2020 13:19:54 +0100 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000f0b7dc059bf060dd" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:60676) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqcDv-0005zJ-O3 for emacs-orgmode@gnu.org; Sun, 12 Jan 2020 07:20:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqcDu-0002qI-AZ for emacs-orgmode@gnu.org; Sun, 12 Jan 2020 07:20:07 -0500 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:47018) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iqcDt-0002lb-SG for emacs-orgmode@gnu.org; Sun, 12 Jan 2020 07:20:06 -0500 Received: by mail-wr1-x430.google.com with SMTP id z7so5828291wrl.13 for ; Sun, 12 Jan 2020 04:20:05 -0800 (PST) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane-mx.org@gnu.org Sender: "Emacs-orgmode" To: Xebar Saram Cc: org mode --000000000000f0b7dc059bf060dd Content-Type: text/plain; charset="UTF-8" Hi Z, I do something similar in my ox-leanpub-book module [1], which exports each top-level heading to a different file. The general idea is to use =org-map-entries= to loop over the entire buffer [2]. The function you call can then check whether the current entry is a header at the level you want [3] and then export it to the corresponding file. The title can be used to deduct the filename [4]. I found that I had to mark the entire subtree before calling the export function [5], otherwise the headline was not getting included in the export. I based my code originally on this blog post, which might be a simpler starting point: https://medium.com/@lakshminp/publishing-a-book-using-org-mode-9e817a56d144 - this code does not select the entire subtree before exporting, which means only the contents of the section is exported, but not the headline itself. Hope this helps! --Diego [1] https://github.com/zzamboni/ox-leanpub/tree/book-and-markua [2] https://github.com/zzamboni/ox-leanpub/blob/book-and-markua/ox-leanpub-book.el#L185-L186 [3] https://github.com/zzamboni/ox-leanpub/blob/book-and-markua/ox-leanpub-book.el#L125 [4] https://github.com/zzamboni/ox-leanpub/blob/book-and-markua/ox-leanpub-book.el#L131-L135 [5] https://github.com/zzamboni/ox-leanpub/blob/book-and-markua/ox-leanpub-book.el#L170-L174 On Sun, Jan 12, 2020 at 4:54 AM Xebar Saram wrote: > Hi all > > For work specific needs at uni i have a need to take a comprehensive org > file with hundreds of headers and split each header into separate .md files > (with the header name as file name//first header in the md file). > Has anyone done anything remotely similar? Or if not can someone point > me in the right direction on how to even start dealing with this? > > thx a lot in advance any tips would be very much appreciated > > kind regards > > Z > --000000000000f0b7dc059bf060dd Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Z,

I do somethin= g similar in my ox-leanpub-book module [1], which=C2=A0exports each top-lev= el heading to a different file. The general idea is to use =3Dorg-map-entri= es=3D to loop over the entire buffer [2]. The function you call can then ch= eck whether the current entry is a header at the level you want [3] and the= n export it to the corresponding file. The title can be used to deduct the = filename [4].

I found that I had to mark the entir= e subtree before calling the export function [5], otherwise the headline wa= s not getting included in the export.

I based my c= ode originally on this blog post, which might be a simpler starting point:= =C2=A0https://medium.com/@lakshminp/publishing-a-book-using-or= g-mode-9e817a56d144 - this code does not select the entire subtree befo= re exporting, which means only the contents of the section is exported, but= not the headline itself.

Hope this helps!
--Diego



On Sun, Jan 12, 2020 at 4:54 AM = Xebar Saram <zeltakc@gmail.com&= gt; wrote:
Hi all

For work specific needs at uni i have= a need to take a comprehensive org file with hundreds of headers and split= each header into separate .md files (with=C2=A0the header name as file nam= e//first header in the md file).
Has anyone done anything remotel= y=C2=A0similar?=C2=A0Or if not can someone point me=C2=A0in the right direc= tion on how to even start dealing with this?

thx a= =C2=A0lot in advance any tips would=C2=A0be very much appreciated

kind regards

Z
--000000000000f0b7dc059bf060dd--