[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Orgmode] Org-jekyll - org-publish-initialize-files-alist
From: |
Sebastian Rose |
Subject: |
Re: [Orgmode] Org-jekyll - org-publish-initialize-files-alist |
Date: |
Wed, 30 Jun 2010 21:04:28 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Nathan Neff <address@hidden> writes:
> ...
> Below is the code where org-publish-initialize-files-alist is called
> in org-jekyll.
> It looks like in both cases, the code is trying to figure out what
> project the current
> file belongs to. Can anyone suggest a fix? I don't mean to push this
> on anyone, but I really don't know lisp that well.
> ...
> (defun org-jekyll-export-current-entry ()
> (interactive)
> (save-excursion
> (org-publish-initialize-files-alist) ; <----------------here
> (let ((project-name (cdr (assoc (expand-file-name (buffer-file-name))
> org-publish-files-alist))))
> (org-back-to-heading t)
> (org-jekyll-export-entry project-name))))
I suppose `project-name' shall be the name of the project, i.e. a
string?
;; Evtl. needed to keep compiler happy:
(declare-function org-publish-get-project-from-filename "org-publish"
(filename &optional up))
(defun org-jekyll-export-current-entry ()
(interactive)
(save-excursion
(let ((project-name (org-publish-get-project-from-filename
buffer-file-name)))
(org-back-to-heading t)
(org-jekyll-export-entry project-name))))
> (defun org-jekyll-export-blog ()
> "Export all entries in project files that have a :blog: keyword
> and an :on: datestamp. Property drawers are exported as
> front-matters, outline entry title is the exported document
> title. "
> (interactive)
> (save-excursion
> (org-publish-initialize-files-alist) ;; < -------------- here
> (setq org-jekyll-new-buffers nil)
> (mapc
> (lambda (jfile-project)
> (let ((jfile (car jfile-project))
> (project (cdr jfile-project)))
> (if (string= (file-name-extension jfile) "org")
> (with-current-buffer (org-get-jekyll-file-buffer jfile)
> (org-map-entries (lambda () (org-jekyll-export-entry project))
> "blog|BLOG")))))
> (org-publish-get-files (org-publish-expand-projects
> (list (org-publish-get-project-from-filename
> (buffer-file-name) 'up)))))
> (org-release-buffers org-jekyll-new-buffers)))
(defun org-jekyll-export-blog ()
"Export all entries in project files that have a :blog: keyword
and an :on: datestamp. Property drawers are exported as
front-matters, outline entry title is the exported document
title. "
(interactive)
(save-excursion
(setq org-jekyll-new-buffers nil)
(mapc
(lambda (jfile-project)
(let ((jfile (car jfile-project))
(project (cdr jfile-project)))
(if (string= (file-name-extension jfile) "org")
(with-current-buffer (org-get-jekyll-file-buffer jfile)
(org-map-entries (lambda () (org-jekyll-export-entry project))
"blog|BLOG")))))
;; NOT SURE IF THIS WILL WORK HERE:
(org-publish-get-base-files
(list (org-publish-get-project-from-filename (buffer-file-name) 'up))))
(org-release-buffers org-jekyll-new-buffers)))
HTH
Sebastian