emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Neil Smithline <emacs-orgmode@neilsmithline.com>
To: Org Mode <emacs-orgmode@gnu.org>
Subject: [FEATURE PROPOSAL]
Date: Sun, 20 May 2012 18:02:02 -0400	[thread overview]
Message-ID: <4FB969DA.2000708@neilsmithline.com> (raw)

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	other threads:[~2012-05-20 22:02 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FB969DA.2000708@neilsmithline.com \
    --to=emacs-orgmode@neilsmithline.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).