From: Robert Goldman <rpgoldman@sift.info>
To: emacs-orgmode@gnu.org
Subject: Re: Emacs-orgmode Digest, Vol 37, Issue 121
Date: Sun, 29 Mar 2009 09:48:13 -0500 [thread overview]
Message-ID: <49CF8A2D.3090502@sift.info> (raw)
In-Reply-To: <E1Lnb4u-0006nm-1T@box188.bluehost.com>
From: Matthew Lundin <mdl@imapmail.org>
Subject: Re: [Orgmode] Re: Handling org-file agenda dependenncies?
To: Eraldo Helal <admin@eraldo.at>
Cc: emacs-orgmode@gnu.org
Message-ID: <m2tz5doo8m.fsf@fastmail.fm>
Content-Type: text/plain; charset=us-ascii
ML> Hi Eraldo,
ML> Eraldo Helal <admin@eraldo.at> writes:
>> > Mike Newman <mike <at> newmanfamily.me.uk> writes: >
>>> >> When you use the standard commands to add/removes files from
the >>
>>> agenda, it will write a definition for the variable
org-agenda-files to
>>> >> the custom section of your .emacs file.
>> > > That would still mean removing every org-file in the tree
manually >
>> when wanting to make a project "inactive". >
>>> >> If you want to deal with trees of files, you might be better
off >>
>>> removing the variable from the custom section, defining it >>
yourself
>>> and updating it manually.
>> > > The questions here is... How could one define it?
ML> I think you could set something like the following in your
.emacs file:
ML> --8<---------------cut here---------------start------------->8---
ML> (load-library "find-lisp") (setq org-agenda-files (append
ML> (find-lisp-find-files "~/directory1" "\.org$") (find-lisp-find-files
ML> "~/directory2" "\.org$") (find-lisp-find-files "~/directory3"
ML> "\.org$"))) --8<---------------cut
ML> here---------------end--------------->8---
ML> This will search the directories above recursively for org files.
ML> Whenever you want to remove a project from your agenda, simply
delete
ML> the appropriate line and evaluate the expression. I'd imagine
someone
ML> else can think of a way to do this more economically, though.
An interesting question would be how to generalize this to update
remember templates accordingly. Possibly the best approach would be to
have a defining form that would define a project in a single
s-expression, adding both remember templates and agenda entries, and
then that form could be removed all at once. Something like
(org-add-project newproj
"A sample new project to show the greatness of org-add-project."
(agenda-files (find-lisp-find-files "~/newproj/" "\.org$"))
(remember-templates
....))
[The above wouldn't work as written, since it's syntax is a mess of what
would be handled by a macro --- the "named arguments" like agenda-files
and remember-templates --- and what looks like a functional argument ---
the find-lisp-files --- but something like it could be lashed together
if anyone was interested.]
next parent reply other threads:[~2009-03-29 14:48 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E1Lnb4u-0006nm-1T@box188.bluehost.com>
2009-03-29 14:48 ` Robert Goldman [this message]
2009-03-29 15:39 ` Re: Emacs-orgmode Digest, Vol 37, Issue 121 Eraldo Helal
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=49CF8A2D.3090502@sift.info \
--to=rpgoldman@sift.info \
--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).