Re: [O] Export each top level heading to separate file
Try this: (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) :EXPORT_FILE_NAME: title nil nil) It seems to do what you want. John --- John Kitchin Associate Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sat, Jan 4, 2014 at 7:36 PM, Ista Zahn istaz...@gmail.com wrote: On Sat, Jan 4, 2014 at 6:41 PM, Alan L Tyree alanty...@gmail.com wrote: On 05/01/14 09:45, Charles Millar wrote: Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: Thanks, gets me half the way there. Setting properties as you described and exporting each sub-tree works properly. Now how can I do this for all the top-level headings in a file? Best, Ista If I understood your question properly. Cheers, Alan -- Alan L Tyreehttp://www2.austlii.edu.au/~alan Tel: 04 2748 6206 sip:typh...@iptel.org
Re: [O] Export each top level heading to separate file
Alan, On 1/4/2014 6:41 PM, Alan L Tyree wrote: Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: If I understood your question properly. Cheers, Alan Thank you. Using C-c C-e C-s l o now exports to a pdf file no problem. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com
Re: [O] Export each top level heading to separate file
On Sun, Jan 5, 2014 at 8:40 AM, John Kitchin jkitc...@andrew.cmu.edu wrote: Try this: (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) :EXPORT_FILE_NAME: title nil nil) It seems to do what you want. Dear John, Thank you thank you! Using your code as I template I managed to write a function that does what I wanted: (defun my-exp-headings-to-markdown () Export each top-level heading to markdown. (interactive) (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) EXPORT_FILE_NAME title)) (if (= level 1) (org-md-export-to-markdown nil 1 nil nil nil)) Note that I had to remove the : from the second argument to org-entry-put to get it working properly on my system. Not sure if that was a bug in your original example or not. Best, Ista John --- John Kitchin Associate Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sat, Jan 4, 2014 at 7:36 PM, Ista Zahn istaz...@gmail.com wrote: On Sat, Jan 4, 2014 at 6:41 PM, Alan L Tyree alanty...@gmail.com wrote: On 05/01/14 09:45, Charles Millar wrote: Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: Thanks, gets me half the way there. Setting properties as you described and exporting each sub-tree works properly. Now how can I do this for all the top-level headings in a file? Best, Ista If I understood your question properly. Cheers, Alan -- Alan L Tyreehttp://www2.austlii.edu.au/~alan Tel: 04 2748 6206 sip:typh...@iptel.org
Re: [O] Export each top level heading to separate file
hmm.. I don't know if it was a bug, I ran the code on my system before sending it, and it worked for me ;) I am glad you figured it out on your system. you could avoid the double if statements like this: (defun my-exp-headings-to-markdown () Export each top-level heading to markdown. (interactive) (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (when (= level 1) (org-entry-put (point) EXPORT_FILE_NAME title) (org-md-export-to-markdown nil 1 nil) nil nil)) The when macro is like an if macro, with no else body. John --- John Kitchin Associate Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sun, Jan 5, 2014 at 2:49 PM, Ista Zahn istaz...@gmail.com wrote: On Sun, Jan 5, 2014 at 8:40 AM, John Kitchin jkitc...@andrew.cmu.edu wrote: Try this: (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) :EXPORT_FILE_NAME: title nil nil) It seems to do what you want. Dear John, Thank you thank you! Using your code as I template I managed to write a function that does what I wanted: (defun my-exp-headings-to-markdown () Export each top-level heading to markdown. (interactive) (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) EXPORT_FILE_NAME title)) (if (= level 1) (org-md-export-to-markdown nil 1 nil nil nil)) Note that I had to remove the : from the second argument to org-entry-put to get it working properly on my system. Not sure if that was a bug in your original example or not. Best, Ista John --- John Kitchin Associate Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sat, Jan 4, 2014 at 7:36 PM, Ista Zahn istaz...@gmail.com wrote: On Sat, Jan 4, 2014 at 6:41 PM, Alan L Tyree alanty...@gmail.com wrote: On 05/01/14 09:45, Charles Millar wrote: Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: Thanks, gets me half the way there. Setting properties as you described and exporting each sub-tree works properly. Now how can I do this for all the top-level headings in a file? Best, Ista If I understood your question properly. Cheers, Alan -- Alan L Tyreehttp://www2.austlii.edu.au/~alan Tel: 04 2748 6206 sip:typh...@iptel.org
Re: [O] Export each top level heading to separate file
On Sun, Jan 5, 2014 at 4:56 PM, John Kitchin jkitc...@andrew.cmu.edu wrote: hmm.. I don't know if it was a bug, I ran the code on my system before sending it, and it worked for me ;) Your original code ran for me as well, but it inserted '::EXPORT_FILE_NAME::' where it should be just ':EXPORT_FILE_NAME:' I am glad you figured it out on your system. you could avoid the double if statements like this: (defun my-exp-headings-to-markdown () Export each top-level heading to markdown. (interactive) (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (when (= level 1) (org-entry-put (point) EXPORT_FILE_NAME title) (org-md-export-to-markdown nil 1 nil) nil nil)) Great, thanks! Best, Ista The when macro is like an if macro, with no else body. John --- John Kitchin Associate Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sun, Jan 5, 2014 at 2:49 PM, Ista Zahn istaz...@gmail.com wrote: On Sun, Jan 5, 2014 at 8:40 AM, John Kitchin jkitc...@andrew.cmu.edu wrote: Try this: (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) :EXPORT_FILE_NAME: title nil nil) It seems to do what you want. Dear John, Thank you thank you! Using your code as I template I managed to write a function that does what I wanted: (defun my-exp-headings-to-markdown () Export each top-level heading to markdown. (interactive) (org-map-entries (lambda () (let ((level (nth 1 (org-heading-components))) (title (nth 4 (org-heading-components (if (= level 1) (org-entry-put (point) EXPORT_FILE_NAME title)) (if (= level 1) (org-md-export-to-markdown nil 1 nil nil nil)) Note that I had to remove the : from the second argument to org-entry-put to get it working properly on my system. Not sure if that was a bug in your original example or not. Best, Ista John --- John Kitchin Associate Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sat, Jan 4, 2014 at 7:36 PM, Ista Zahn istaz...@gmail.com wrote: On Sat, Jan 4, 2014 at 6:41 PM, Alan L Tyree alanty...@gmail.com wrote: On 05/01/14 09:45, Charles Millar wrote: Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: Thanks, gets me half the way there. Setting properties as you described and exporting each sub-tree works properly. Now how can I do this for all the
Re: [O] Export each top level heading to separate file
This may help, but I can’t take the credit. Someone in this forum wrote this for me several years ago. Cheers, M ;; turn header into file (defun turn-headline-into-org-mode-link () Replace word at point by an Org mode link. (interactive) (when (org-at-heading-p) (let ((hl-text (nth 4 (org-heading-components (unless (or (null hl-text) (org-string-match-p ^[ \t]*:[^:]+:$ hl-text)) (beginning-of-line) (search-forward hl-text (point-at-eol)) (replace-string hl-text (format [[file:%s.org][%s]] (org-link-escape hl-text) (org-link-escape hl-text '((?\] . %5D) (?\[ . %5B nil (- (point) (length hl-text)) (point))
Re: [O] Export each top level heading to separate file
Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com
Re: [O] Export each top level heading to separate file
On Sat, Jan 4, 2014 at 6:41 PM, Alan L Tyree alanty...@gmail.com wrote: On 05/01/14 09:45, Charles Millar wrote: Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: Thanks, gets me half the way there. Setting properties as you described and exporting each sub-tree works properly. Now how can I do this for all the top-level headings in a file? Best, Ista If I understood your question properly. Cheers, Alan -- Alan L Tyreehttp://www2.austlii.edu.au/~alan Tel: 04 2748 6206 sip:typh...@iptel.org
Re: [O] Export each top level heading to separate file
Ista Zahn writes: On Sat, Jan 4, 2014 at 6:41 PM, Alan L Tyree alanty...@gmail.com wrote: On 05/01/14 09:45, Charles Millar wrote: Ista and all, On 1/4/2014 5:29 PM, Ista Zahn wrote: Hi all, I'm looking for a way to export each top-level heading to a separate markdown file. Ideally I would like to have the exported files named according to the heading. For example I would like this org file --- * Section one Section one text * Section two ** Section two a Section two text * Section three Section three text --- To generate three files: --- Section one.md --- Section one text --- --- Section two.md--- ## Section two a Section two text --- --- Section three.md - # Section three Section three text --- I suspect that the publishing framework might support this, but I've thus far avoided it because it looks pretty complicated to set up. Before I dive in I'd like to know if the publishing framework is the correct place to look for this functionality or if there is an easier way to do it. I have a similar question regarding LaTeX export. How to export a heading (any heading, regardless of level) within a file to heading.tex instead of file.tex? So far the only solution I have cobbled together is to C-x C-f 'file.tex and then C-x C-w heading.tex . I then typeset heading.tex using TeXworks. Perhaps I should note that my exported heading is tagged so that the heading is ignored. Charlie Millar --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com Use properties to set the export file name -- example: :PROPERTIES: :EXPORT_TITLE: Internet banking fraud :EXPORT_FILE_NAME: internet-fraud :EXPORT_AUTHOR: Alan L Tyree :Citation: (2011) 22 JBFLP 214 :EXPORT_OPTIONS: num:nil toc:nil :END: Thanks, gets me half the way there. Setting properties as you described and exporting each sub-tree works properly. Now how can I do this for all the top-level headings in a file? Sorry, that's beyond my pay grade :-). I would also be interested in knowing the answer. Cheers, Alan Best, Ista If I understood your question properly. Cheers, Alan -- Alan L Tyreehttp://www2.austlii.edu.au/~alan Tel: 04 2748 6206 sip:typh...@iptel.org -- Alan L Tyree http://www2.austlii.edu.au/~alan Tel: 04 2748 6206 sip:172...@iptel.org