Aloha all,
First, many thanks to Carsten, Bernt, Nick and Mark for help with my
recent publishing woes. After much semi-informed tinkering, I think
I've isolated one problem. As background, this problem cropped up for
me when I incorporated Karl Martino's setup for exporting parts of an
org file to different targets.
With the following minimal .emacs, org-publish-get-project-from-
filename reports (wrong-type-argument stringp ("index.org")). This
function is called when I select [P] publish current project from *Org
Export/Publishing Help*. I've included a backtrace below.
I discovered this behavior after I incorporated Karl's publication
project into my lengthy org-publish-projects-alist. Then, I was
unable to publish any of my projects using [P] publish current
project. They all returned the same error-- (wrong-type-argument
stringp ("index.org")).
Hopefully, here follow the pertinent details:
Org-mode version 6.36trans (release_6.36.96.g5b68)
dk$ /Applications/emacs.app/Contents/MacOS/Emacs -Q -l
~/.minimal.emacs &
---- .minimal.emacs -----
(add-to-list 'load-path (expand-file-name "~/.emacs.d/src/org/lisp"))
(add-to-list 'auto-mode-alist '("\\.\\(org\\|org_archive\\|txt\\)$" .
org-mode))
(setq org-agenda-files '("/tmp/test.org"))
(require 'org-install)
(require 'org-habit)
(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cb" 'org-iswitchb)
; going non-minimal here on
(require 'org-publish)
(setq org-publish-project-alist
'(
; Karl Martino's setup
modified for my paths
("work"
:base-directory "~/org/temp/"
:base-extension "org"
:publishing-directory "~/org/temp/publish-work/"
:publishing-function org-publish-org-to-latex
:select-tags ("@WORK")
:title "Work Notes"
:include ("index.org")
:exclude "\\.org$"
)
))
---- .minimal.emacs -----
Debugger entered--Lisp error: (wrong-type-argument stringp
("index.org"))
string-match(("index.org") "/Users/dk/org/temp/index.org")
(and i (string-match i filename))
(or (and i (string-match i filename)) (and (not ...) (string-match
xm filename)))
(if (or (and i ...) (and ... ...)) (progn (setq project-name ...)
(throw ... project-name)))
(when (or (and i ...) (and ... ...)) (setq project-name (car prj))
(throw (quote p-found) project-name))
(let* ((r ...) (b ...) (x ...) (e ...) (i ...) (xm ...)) (when
(or ... ...) (setq project-name ...) (throw ... project-name)))
(if (plist-get (cdr prj) :components) nil (let*
(... ... ... ... ... ...) (when ... ... ...)))
(unless (plist-get (cdr prj) :components) (let*
(... ... ... ... ... ...) (when ... ... ...)))
(while --cl-dolist-temp-- (setq prj (car --cl-dolist-temp--))
(unless (plist-get ... :components) (let* ... ...)) (setq --cl-dolist-
temp-- (cdr --cl-dolist-temp--)))
(let ((--cl-dolist-temp-- org-publish-project-alist) prj) (while --
cl-dolist-temp-- (setq prj ...) (unless ... ...) (setq --cl-dolist-
temp-- ...)) nil)
(catch (quote --cl-block-nil--) (let (... prj) (while --cl-dolist-
temp-- ... ... ...) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ... ... nil)))
(block nil (let (... prj) (while --cl-dolist-temp-- ... ... ...)
nil))
(dolist (prj org-publish-project-alist) (unless (plist-
get ... :components) (let* ... ...)))
(catch (quote p-found) (dolist (prj org-publish-project-alist)
(unless ... ...)))
(let* ((filename ...) project-name) (catch (quote p-found)
(dolist ... ...)) (when up (dolist ... ...)) (assoc project-name org-
publish-project-alist))
org-publish-get-project-from-filename("/Users/dk/org/temp/
index.org" up)
(let ((project ...) (org-publish-use-timestamps-flag ...)) (if (not
project) (error "File %s is not part of any known project" ...)) (org-
publish project))
(save-window-excursion (let (... ...) (if ... ...) (org-publish
project)))
org-publish-current-project(nil)
call-interactively(org-publish-current-project)
(if (and bg (nth 2 ass) (not ...) (not ...)) (let (...) (set-
process-sentinel p ...) (message "Background process \"%s\": started"
p)) (if subtree-p (progn ... ...)) (call-interactively (nth 1 ass))
(when (and bpos ...) (let ... ... ... ... ...)))
(let* ((bg ...) subtree-p (help "[t] insert the export option
template\n[v] limit export to visible part of outline tree\n[1]
only export the current subtree\n[SPC] publish enclosing subtree (with
LaTeX_CLASS or EXPORT_FILE_NAME prop)\n\n[a/n/u] export as ASCII/
Latin-1/UTF-8 [A/N/U] to temporary buffer\n\n[h] export as
HTML [H] to temporary buffer [R] export region\n[b] export as
HTML and open in browser\n\n[l] export as LaTeX [L] to temporary
buffer\n[p] export as LaTeX and process to PDF [d] ... and
open PDF file\n\n[D] export as DocBook [V] export as DocBook,
process to PDF, and open\n\n[m] export as Freemind mind map\n[x]
export as XOXO\n[g] export using Wes Hardaker's generic exporter\n
\n[i] export current file as iCalendar file\n[I] export all agenda
files as iCalendar files [c] ...as one combined file\n\n[F] publish
current file [P] publish current project\n[X] publish a
project... [E] publish every projects") (cmds ...) r1 r2 ass
(cpos ...) (cbuf ...) bpos) (save-excursion (save-window-
excursion ... ... ... ... ... ... ...)) (and bpos (goto-char bpos))
(setq r2 (if ... ... r1)) (unless (setq ass ...) (error "No command
associated with key %c" r1)) (if (and bg ... ... ...)
(let ... ... ...) (if subtree-p ...) (call-interactively ...)
(when ... ...)))
org-export(nil)
call-interactively(org-export nil nil)
All the best,
Tom
On May 24, 2010, at 5:50 PM, Bernt Hansen wrote:
"Thomas S. Dye" <t...@tsdye.com> writes:
Aloha Carsten,
I think I need to know what is meant by "minimal .emacs."
I have a minimal.emacs which is a stripped down .emacs that only has
what I need to invoke org-mode for reproducing a problem.
,----[ minimal.emacs ]
| (add-to-list 'load-path (expand-file-name "~/git/org-mode/lisp"))
| (add-to-list 'auto-mode-alist '("\\.\\(org\\|org_archive\\|txt\\)
$" . org-mode))
| (setq org-agenda-files '("/tmp/test.org"))
| (require 'org-install)
| (require 'org-habit)
|
| (global-set-key "\C-cl" 'org-store-link)
| (global-set-key "\C-ca" 'org-agenda)
| (global-set-key "\C-cb" 'org-iswitchb)
`----
and I load this with emacs -Q -l ~/minimal.emacs. I'll normally
edit it
to add whatever is needed to reproduce the problem in org-mode.
Using a stripped down minimal .emacs files removes broken custom
settings as the cause of the issue and makes it easy to reproduce for
other people.
HTH,
Bernt
_______________________________________________
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