Thomas S. Dye <t...@tsdye.com> wrote: > On May 26, 2010, at 11:37 AM, Nick Dokos wrote: > ... > perhaps? But I'm shooting from the hip here, so take it with the > appropriate > grain of salt. > > > Hi Nick, > > The documentation for org-publish-projects-alist suggests that :include wants > a list: > > The :include property may be used to include extra files. Its > value may be a list of filenames to include. The filenames are > considered relative to the base directory. > > When I tried :include "index.org" I got this: > > Debugger entered--Lisp error: (wrong-type-argument sequencep 105) > concat("~/org/temp/" 105) > (expand-file-name (concat base-dir f)) > ... >
Yep, shot from the hip and hit my foot. You are right. > I'm not going to pretend I know what I'm talking about here, but AFAICT the > variable i in the following code needs some attention before it goes to > string-match. According to the documentation, plist-get just returns the > value assigned to a property (or nil) without doing anything to it, so i > should be a list when it is passed to string-match. string-match wants > REGEXP here, apparently not as a list. I couldn't persuade emacs to cough up > the definition of REGEXP, but my brief forays into the emacs and org-mode > source code lead me to believe it is probably a string. > > (defun org-publish-get-project-from-filename (filename &optional up) > "Return the project FILENAME belongs." > (let* ((filename (expand-file-name filename)) > project-name) > > (catch 'p-found > (dolist (prj org-publish-project-alist) > (unless (plist-get (cdr prj) :components) > ;; [[info:org:Selecting%20files]] shows how this is supposed to work: > (let* ((r (plist-get (cdr prj) :recursive)) > (b (expand-file-name (plist-get (cdr prj) :base-directory))) > (x (plist-get (cdr prj) :base-extension)) > (e (plist-get (cdr prj) :exclude)) > (i (plist-get (cdr prj) :include)) > (xm (concat "^" b (if r ".+" "[^/]+") "\\.\\(" x "\\)$"))) > (when (or > (and i (string-match i filename)) > I think you are right that there is a problem here. Here is an excerpt from the relevant commit: ,---- | commit 339d6fe4bbf7b9858c6323d01f32d0c73a4cd3a8 | Author: Sebastian Rose <sebastian_r...@gmx.de> | Date: Thu May 13 13:43:53 2010 +0200 | | Publishing, cashing and timestamps | | Carsten Dominik <carsten.domi...@gmail.com> writes: | > Hi Sebastian, | > | > sorry for being slow. Could you do me a favor and send me the cache patch one | > more time - if possible updated to the current master. | > | > I am just not sure I have the right patch in my hands. | | Hi Carsten, | | no problem. The patch is attached. | | Here is a list of my ChangeLog entries, redated to today: | | 2010-05-13 Sebastian Rose <sebastian_r...@gmx.de> | | ... | | * org-publish.el (org-publish-get-project-from-filename) does | not depend on a list of files anymore. Instead of laoding all | files of all, we walk `org-publish-project-alist' until we | find a project, where the properties :base-directory, :recursive, | :base-extension, :include and :exclude match. | | ... `---- Maybe Sebastian (I added him to the CC:) can take a look? Thanks, Nick _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode