2013-06-20 10 views
8

org-element to nowy moduł dla org-mode, myślę, że to jest dobre dla parsowania pliku org, i nie chcę parsować go starym sposobem z ciągiem znaków. ale po zabawie z nim przez kilka godzin, muszę przyznać, że nie mam wystarczającego doświadczenia z trybem org, więc mistrzowie mogą mi dać wskazówki, dzięki bardzo!W jaki sposób przeanalizować tryb org przez element-organizatora elegancko

Moje żądanie jest proste, chcę uzyskać wszystkie nagłówki i treści.

* headline 

:PROPERTIES 

** subheadline 

content1 

** subheadline 

content2 
+4

Co t w rzeczywistości wymaga? coś (let ((drzewo wyprowadzenia (org-element-parse-bufor 'nagłówek))) (org-element-map drzewo wyprowadzenia' nagłówek (lambda (hl) (org-element nieruchomości: tytuł hl)))) dostaniesz tytuły wszystkich nagłówków. – YoungFrog

+0

dzięki, a następnie, jak uzyskać treść jednego nagłówka? – netawater

+2

Wymóg ten nadal nie jest dla mnie całkowicie jasny. Powiedzmy, że masz bloki kodu w swoim dokumencie, czy to ma być częścią treści? a co z tabelami? Możliwe, że to, czego potrzebujesz, to po prostu eksporter org na tekst. – YoungFrog

Odpowiedz

7

na podstawie użytkownika @ YoungFrog wierszu:

  • uzyskać wszystkie nagłówki:

    (let ((parsetree (org-element-parse-buffer 'headline))) 
        (org-element-map parsetree 'headline 
            (lambda (hl) (org-element-property :title hl)))) 
    
  • uzyskać wszystkie treści:

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