如何优雅地解析org-element的org-mode

时间:2013-06-20 08:31:23

标签: parsing emacs org-mode

org-elementorg-mode的新模块,我认为这对于解析org文件很有用,并且不希望用旧方法用match-string解析它。但玩了几个小时之后,我不得不承认我没有足够的org-mode经验,所以主人能给我一些线索,非常感谢!

我的要求很简单,我希望得到所有标题和内容。

* headline

:PROPERTIES

** subheadline

content1

** subheadline

content2

1 个答案:

答案 0 :(得分:9)

基于@ YoungFrog的提示:

  • 获取所有头条新闻:

    (let ((parsetree (org-element-parse-buffer 'headline))) 
      (org-element-map parsetree 'headline 
                       (lambda (hl) (org-element-property :title hl)))) 
    
  • 获取所有内容:

    (let ((parsetree (org-element-parse-buffer 'paragraph)))
      (org-element-map parsetree 'paragraph 
                       (lambda (hl) (org-element-interpret-data hl))))