I'm working on a blog published via org-publish but one things got me stumped:
accessing user defined keywords while publishing to HTML:

Each post is in an orgmode file, and has a simple structure. E.g. one post 
starts with:

    #+title: Fix for Sparkfun Arduino Pro Micro
    #+date: <2009-03-05 13:55>
    #+filetags: Arduino
    #+category: electronics
    #+draft: true

I want to access the last two keywords values when publishing but despite lots 
of
searching, can't find out how:

Part of my publish-project-alist:

    (setq org-publish-project-alist
          `(
             ("blog-posts"
             :base-directory   "~/projects/3-blog/"
             :base-extension   "org"
             :recursive        t
               --- lots omitted
             :html-preamble  *my-blog-page-preamble*
             )

and /my-blog-page-preamble/ function is:

    (defun *my-blog-page-preamble* (arg)
      (with-temp-buffer
        (insert-file-contents my-blog-page-preamble-file)   ; Insert preamble 
from file
        (concat (buffer-string)
           (format "<br>Tags: %s"      (car (plist-get arg :filetags)))  *;* 
*<< WORKS*
           (format "<br>Category: %s " (car (plist-get arg :category))) *;<< 
returns nil*
           (format "<br>Draft: %s"     (car (plist-get arg :draft))))))*;<< 
returns nil*

I can access/the values of :title/ or /:filetags/ and other predefined keywords 
but
not ones I define myself.

My keywords are being passed to the preamble-function as displaying 'arg' shows:

    --LOTS OMITTED--#2 (keyword (:key DATE :value <2009-03-05 13:55> :begin 81 
:end
    108 :post-blank 0 :post-affiliated 81 :parent #4)) (keyword (:key CATEGORY 
:value
    electronics :begin 108 :end 132 :post-blank 0 :post-affiliated 108 :parent 
#4))
    (keyword (:key FILETAGS :value Arduino :begin 132 :end 152 :post-blank 0
    :post-affiliated 132 :parent #4)) (keyword (:key DRAFT :value true :begin 
152
    :end 166 :post-blank 0 :post-affiliated 152 :parent #4)) -- LOTS MORE

I tried capitalizing -- (plist-get arg :CATEGORY) -- but that returns /nil/ too.

Given that /(plist-get arg :category)/ and /(plist-get arg :draft)/ don't 
return the
expected values, what's the correct way to access the values of /#+category:/ 
and
user-defined keywords such as /#+draft:/ keywords?

Many thanks
Giovanni*
*


Reply via email to