Is it possible (and I just have the wrong syntax) to do the following: (defvar base-dir "~/Documents/org/") (defvar pub-dir "~/Public/notes/") (setq org-publish-project-alist '( ("org" :base-directory base-dir :base-extension "org" :publishing-directory pub-dir :recursive t :publishing-function org-html-publish-to-html :exclude "level-..org" ) ("static" :base-directory base-dir :base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf\\|mp3\\|ogg\\|swf" :publishing-directory pub-dir :recursive t :publishing-function org-publish-attachment ) ("project-root" :components ("org" "static"))) ) When I have the above code and I call (org-publish-project "project-root"), I get the following error. Wrong type argument: stringp, base-dir Thanks. Tom