emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Problems with org-publish w/ #+INCLUDE:


From: Nick Dokos
Subject: Re: [O] Problems with org-publish w/ #+INCLUDE:
Date: Sun, 16 Oct 2011 18:20:22 -0400

Carsten Dominik <address@hidden> wrote:

> > I haven't checked yet but it would seem that the following commit
> > introduced the problem:
> 
> This should be fixed now, please verify.
> 

Works fine for me.

Thanks,
Nick

> - Carsten
> 
> >=20
> > --8<---------------cut here---------------start------------->8---
> > commit 920cf53e686daea4f406aa237b48fe2ef4730426
> > Author: Jon Anders Skorpen <address@hidden>
> > Date:   Sat Jul 16 17:22:07 2011 +0000
> >=20
> >    org-publish: Fix regexp for include files
> >=20
> >    * org-publish.el (org-publish-cache-file-needs-publishing): Regexp =
> did
> >      not find includes with double quoted file names.
> >=20
> >    TINYCHANGE
> >=20
> > diff --git a/lisp/org-publish.el b/lisp/org-publish.el
> > index b8e932d..9654a6d 100644
> > --- a/lisp/org-publish.el
> > +++ b/lisp/org-publish.el
> > @@ -1108,7 +1108,7 @@ (defun org-publish-cache-file-needs-publishing =
> (filename &optional pub-dir pub-f
> >       (when (equal (file-name-extension filename) "org")
> >     (find-file (expand-file-name filename))
> >     (goto-char (point-min))
> > -   (while (re-search-forward "^#\\+INCLUDE: \\(.+\\)[ ^\t]*$" nil =
> t)
> > +   (while (re-search-forward "^#\\+INCLUDE:[ \t]+\"?\\([^ =
> \t\"]*\\)\"?[ \t]*.*$" nil t)
> >       (let* ((included-file (expand-file-name (match-string 1))))
> >         (add-to-list 'included-files-ctime
> >                      (org-publish-cache-ctime-of-src included-file) =
> t)))))
> > --8<---------------cut here---------------end--------------->8---
> >=20
> > Nick
> >=20
> >=20
> >> I have a file "index.org":
> >>=20
> >> --8<--
> >> #+TITLE: Foo!
> >> #+AUTHOR:    Daniel
> >> #+EMAIL:     address@hidden
> >> #+DATE:      2011-10-14 Fr
> >> #+INCLUDE: include.org
> >>=20
> >> Export it!
> >> --8<--
> >>=20
> >> Then I have a file "include.org" with all the options etc. (option
> >> template included via C-c C-e t):
> >>=20
> >> --8<--
> >> #+DESCRIPTION:
> >> #+KEYWORDS:
> >> #+LANGUAGE:  en
> >> #+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
> >> #+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil =
> tags:not-in-toc
> >> #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 =
> path:http:/=3D
> >> /orgmode.org/org-info.js
> >> #+EXPORT_SELECT_TAGS: export
> >> #+EXPORT_EXCLUDE_TAGS: noexport
> >> #+LINK_UP:=3D20=3D20=3D20
> >> #+LINK_HOME:=3D20
> >> #+XSLT:
> >>=20
> >> #+BEGIN_HTML
> >>  <h1>Bar</h1>
> >> #+END_HTML
> >> --8<--
> >>=20
> >> Then I set the org-publish-project-alist:
> >>=20
> >> --8<--
> >> (require 'org-publish)
> >> (setq org-publish-project-alist
> >>      (list (list "foo"
> >>              :base-directory "/home/dbr/tmp/omtests"
> >>              :base-extension "org"
> >>              :publishing-directory "/home/dbr/tmp/omtests/pub"
> >>              :publishing-function 'org-publish-org-to-html)))
> >> --8<--
> >>=20
> >> Org-publish is from the 7.7 distribution directory. Then I visit
> >> index.org and do a C-c C-e P and run in the following error:
> >>=20
> >> --8<--
> >> Debugger entered--Lisp error: (wrong-type-argument integerp nil)
> >>  lsh(nil 16)
> >>  =
> org-publish-cache-ctime-of-src("/home/dbr/tmp/omtests/include.org\n\nExpo=3D=
> 
> >> rt")
> >>  =
> org-publish-cache-file-needs-publishing("/home/dbr/tmp/omtests/index.org"=3D=
> 
> >> "/home/dbr/tmp/omtests/pub/" org-publish-org-to-html)
> >>  org-publish-needed-p("/home/dbr/tmp/omtests/index.org" =
> "/home/dbr/tmp/omt=3D
> >> ests/pub/" org-publish-org-to-html "/home/dbr/tmp/omtests/pub/")
> >>  org-publish-file("/home/dbr/tmp/omtests/index.org" ("foo" =
> :base-directory=3D
> >> "/home/dbr/tmp/omtests" :base-extension "org" :publishing-directory =
> "/home=3D
> >> /dbr/tmp/omtests/pub" :publishing-function org-publish-org-to-html) =
> t)
> >>  #[(project) "address@hidden       \"=3DC7 \"=3DC7 \"=3D86=3D00=3D1C       
> >> =
> \"=3D86#=3DCD=3DC7    \"=3D86-=3D0E=3D
> >> =3D1F      \"=3D868=3D0E!\"        \"=3D15 =
> \"=3D1D=08\n\"#=3D1E$=3D15=3D83X=3DD4!=3D88=3D0B=3D83a=3D0D=08\f\"=3D88#=3D=
> 89=3D
> >> address@hidden     \"=3D83=3D92=3DD9       =
> \"!=3D88=3DDB=3DC7    \"\"=08#=3D88=3D1D=3D83=3D9B=3DD4!=3D
> >> =3D88 .=3D0B=3D87" [project project-plist exclude-regexp sitemap-p =
> sitemap-filena=3D
> >> me sitemap-function org-publish-initialize-cache plist-get :exclude =
> :auto-s=3D
> >> itemap :sitemap-filename "sitemap.org" :sitemap-function =
> org-publish-org-si=3D
> >> temap :sitemap-date-format :sitemap-file-entry-format =
> :preparation-function=3D
> >> :completion-function org-publish-get-base-files nil run-hooks =
> preparation-=3D
> >> function org-publish-file t :makeindex =
> org-publish-index-generate-theindex =3D
> >> :base-directory expand-file-name "theindex.org" completion-function =
> org-pub=3D
> >> lish-write-cache-file org-publish-sitemap-date-format =
> org-sitemap-date-form=3D
> >> at org-publish-sitemap-file-entry-format =
> org-sitemap-file-entry-format file=3D
> >> s file] 6](("foo" :base-directory "/home/dbr/tmp/omtests" =
> :base-extension "=3D
> >> org" :publishing-directory "/home/dbr/tmp/omtests/pub" =
> :publishing-function=3D
> >> org-publish-org-to-html))
> >>  mapc(#[(project) "address@hidden  \"=3DC7 \"=3DC7 =
> \"=3D86=3D00=3D1C     \"=3D86#=3DCD=3DC7      \"=3D86-=3D
> >> =3D0E=3D1F         \"=3D868=3D0E!\"        \"=3D15 =
> \"=3D1D=08\n\"#=3D1E$=3D15=3D83X=3DD4!=3D88=3D0B=3D83a=3D0D=08\f\"=3D88#=3D=
> 
> >> address@hidden     \"=3D83=3D92=3DD9       =
> \"!=3D88=3DDB=3DC7    \"\"=08#=3D88=3D1D=3D83=3D9B=3D
> >> =3DD4!=3D88 .=3D0B=3D87" [project project-plist exclude-regexp =
> sitemap-p sitemap-fi=3D
> >> lename sitemap-function org-publish-initialize-cache plist-get =
> :exclude :au=3D
> >> to-sitemap :sitemap-filename "sitemap.org" :sitemap-function =
> org-publish-or=3D
> >> g-sitemap :sitemap-date-format :sitemap-file-entry-format =
> :preparation-func=3D
> >> tion :completion-function org-publish-get-base-files nil run-hooks =
> preparat=3D
> >> ion-function org-publish-file t :makeindex =
> org-publish-index-generate-thein=3D
> >> dex :base-directory expand-file-name "theindex.org" =
> completion-function org=3D
> >> -publish-write-cache-file org-publish-sitemap-date-format =
> org-sitemap-date-=3D
> >> format org-publish-sitemap-file-entry-format =
> org-sitemap-file-entry-format =3D
> >> files file] 6] (("foo" :base-directory "/home/dbr/tmp/omtests" =
> :base-extens=3D
> >> ion "org" :publishing-directory "/home/dbr/tmp/omtests/pub" =
> :publishing-fun=3D
> >> ction org-publish-org-to-html)))
> >>  org-publish-projects((("foo" :base-directory "/home/dbr/tmp/omtests" =
> :bas=3D
> >> e-extension "org" :publishing-directory "/home/dbr/tmp/omtests/pub" =
> :publis=3D
> >> hing-function org-publish-org-to-html)))
> >>  byte-code("=08?=3D85=3D00 =3DC4\n;=3D83=3D00\n=3D0B\"C=3D82=3D00\nC!=
> )=3D87" [force org-publis=3D
> >> h-use-timestamps-flag project org-publish-project-alist =
> org-publish-project=3D
> >> s assoc] 4)
> >>  org-publish(("foo" :base-directory "/home/dbr/tmp/omtests" =
> :base-extensio=3D
> >> n "org" :publishing-directory "/home/dbr/tmp/omtests/pub" =
> :publishing-funct=3D
> >> ion org-publish-org-to-html))
> >>  byte-code("=3DC4 \"=08?=3D85=3D0B =3D89=3D84=3D00=3DC7 =
> \"=3D88\n!*=3D87" [force org-publish-u=3D
> >> se-timestamps-flag project org-publish-get-project-from-filename =
> buffer-fil=3D
> >> e-name up error "File %s is not part of any known project" =
> org-publish] 4)
> >>  org-publish-current-project(nil)
> >>  call-interactively(org-publish-current-project)
> >>  org-export(nil)
> >>  call-interactively(org-export nil nil)
> >> --8<--
> >>=20
> >> It seemed that due to the #+INCLUDE tag the
> >> org-publish-cache-file-need-publishing gets a bit confused with the
> >> filename and tries to call org-publish-cache-ctime-of-src with the =
> file
> >> name plus a string "\n\nExport" which are the next three lines of the
> >> org file index.org.=3D20
> >>=20
> >> Am I doing something wrong?=3D20
> >>=20
> >>=20
> >> Kind regards, Daniel
> >>=20
> >>=20
> >=20
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]