Since falling in love with Org projects, I've run into one snag that I don't know how to handle with the current features. I want to be able to run org-export-project ("\C-c\C-ep") from any file in a directory or sub-directory. Even if that file is not actually exported. In fact, I'd like to be able to export from a shell.

For example, assume I have a directory "myproject" with sub-directories "source", "output", and "tools". The files in "source" are exported to "output". The files in "tools" and any other files in "myproject" don't get exported.

Given the above example, I want to be able to run org-export-project from any file, shell buffer, dired buffer, or whatever, that is in "myproject"s directory subtree.

New project type definition:
'("myproject-root"
 ;; While :publishing-directory is must be present to make
 ;; org-mode work:
 ;;     `:base-directory'
 ;;     `:recursive'
 ;;     `:catch-all-project'
 ;; are the only ones used. :catch-all-project is a boolean.
 ;; When non-nil it will tell org-mode to use files in this
 ;; subtree to trigger exporting of a parent project
 :base-directory        "~/myproject"
 :catch-all-project     t
 :publishing-directory  "~/myproject"
 :recursive             t
 )

Root project definition:
'("myproject" (:components "myproject-source" "myproject-root"))

The only thing that myproject-root does is enable org-mode to identify that a file is in the myproject meta-project.

Thoughts?

Neil




--
Neil Smithline
http://www.neilsmithline.com
Proud GNU Emacs user since 1986, v. 18.24.


Reply via email to