emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Sebastian Rose <sebastian_rose@gmx.de>
To: Aidan Gauland <aidalgol@no8wireless.co.nz>
Cc: emacs-orgmode@gnu.org
Subject: Re: Re: How can I get document metadata?
Date: Mon, 20 Sep 2010 00:34:22 +0200	[thread overview]
Message-ID: <87mxrduzv5.fsf@gmx.de> (raw)
In-Reply-To: <loom.20100919T220035-130@post.gmane.org> (Aidan Gauland's message of "Sun, 19 Sep 2010 20:04:46 +0000 (UTC)")

Aidan Gauland <aidalgol@no8wireless.co.nz> writes:
> Sebastian Rose <sebastian_rose <at> gmx.de> writes:
>> This is awkward to use:
>>
>> (org-parse-local-options
>>   (org-get-local-options)
>>   'org-export-headline-levels)
>>
>> Is that function still in use?
>>
>> `grep -Fr org-parse-local-options'  reveals nothing.
>
> Not only is it awkward, it (org-get-local-options) doesn't seem to get
> me everything.  For example, the title isn't in the list returned by
> org-get-local-options.



(org-get-current-options) finds most export related options, the names
of which can be found in org-exp.el.


I'm not an expert in this area.  But here is what I found so far.
You could take a look at certain files and funcitons in org-mode/lisp/:

1.)  `org-publish-file' in org-publish.el
     Here the call to
     (org-publish-get-project-from-filename filename)
     is of interest, as this returns all options set for the project the
     file belongs to eventually.

2.)  `org-export-as-html' in org-html.el
     Here I find the call to
     (org-infile-export-plist)
     Which returns the in-file plist of options.



This should do for a start:


(let ((opt-plist
       (org-export-process-option-filters
        (org-combine-plists (org-default-export-plist)
         (org-publish-get-project-from-filename buffer-file-name)
         (org-infile-export-plist)))))

  ;; the calculated style:
  (message "%s" (plist-get opt-plist :style))

  ;; or show the entire content of the property list:
  (message "%S" opt-plist))



Note, that e.g. the :title might be empty in this plist, because unset.
In that case, Org uses the filename as title.



HTH

  Sebastian

 

  reply	other threads:[~2010-09-19 22:34 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-19  2:51 How can I get document metadata? Aidan Gauland
2010-09-19 14:25 ` Sebastian Rose
2010-09-19 14:42   ` Sebastian Rose
2010-09-19 20:04     ` Aidan Gauland
2010-09-19 22:34       ` Sebastian Rose [this message]
2010-09-20  4:11         ` Aidan Gauland
2010-09-19 21:35     ` Bastien

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87mxrduzv5.fsf@gmx.de \
    --to=sebastian_rose@gmx.de \
    --cc=aidalgol@no8wireless.co.nz \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).