[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Orgmode] How to use variable in org publish function
From: |
Nick Dokos |
Subject: |
Re: [Orgmode] How to use variable in org publish function |
Date: |
Thu, 18 Nov 2010 09:50:48 -0500 |
Chao LU <address@hidden> wrote:
> Dear all,
>
> I'm trying to define a variable, to let org-mode know different path to use
> when I'm under different system (Windows or Mac), but got trouble to get it
> work. Here is the Code:
>
> ----
> (defconst lch-win32-p (eq system-type 'windows-nt) "Are we on Windows?")
> (defconst lch-mac-p (eq system-type 'darwin) "Are we on Mac")
> (if lch-mac-p (defvar org-source-dir "~/Dropbox/org/org" "org source dir"))
> ;For under windows, it should be My Dropbox...
> (setq org-publish-project-alist
> '(
> ("org-notes"
> :base-directory org-source-dir)))
> ----
>
> Apparently, this doesn't work, since the variable org-source-dir will not be
> evaluated inside the quote, but I really didn't find out how to make it
> evaled... Does anyone has any hints?
>
You need backquote (similar to quote, but allows selective evaluation
of internal structure) and the , (selective evaluation) mechanism:
(setq org-publish-project-alist
`(("org-notes"
:base-directory ,org-source-dir)
))
See section 13.5 of the Emacs Lisp Reference manual for more details.
HTH,
Nick