At Fri, 20 Jan 2012 12:04:51 -0600,
John Hendy wrote:
> 
> I use org-mode for all of my work notes. For the most part, I'm very
> happy with it. I know everything is in there somewhere and I can find
> it. I currently have one file for my projects organized something like
> this:
> 
> 
> * Project 1
> ** Journals
> *** 2011 November
> **** [2011-11-15 Tue] Weekly project update                           :mtg:
> **** [2011-11-22 Tue] Weekly project update                           :mtg:
> 
> So, one of the issues I've constantly struggled with in org is whether
> to try and create a skeleton outline of all of the aspects of the
> project and fill it in bit by bit during things like weekly
> meetings... or whether to do what I do above and go chronologically,
> simply creating journal entries for the day something happens. Part of
> the reason for choosing chronological is that I am required to
> document Intellectual Property related concepts. Time ordering makes
> it simple to just print out an export of the items since my last brain
> dump and past them into a technical notebook for dating/witnessing.
> 
> To just keep adding means my exports will either be redundant (include
> all the stuff I pasted last time too) or tedious (find all new updates
> and move to separate temp file for exporting).

Generally I think the way to tackle this is to take advantage that you
are working with plain text and not with Word document, and use
standard Emacs/Unix tools for working with text.

Some ideas:

Before updating each project, cut-n-paste it into the new
revision.. Org mode makes it easy to cut-n-paste trees, for myself
duplicating a headline is simply pressing Y then P over a folded
headline (viper/vimpulse user)

So what about:

* Project 1 <... folded content... >

Then you about to start a team meeting, or review, or basically
revising the project. Cut-paste the whole tree so you have two
identical copies, then edit the copy's title to reflect revision
or date or draft number etc.

* Project 1 <... folded content... >
* Project 1 draft2 <... folded content... >

Start revising the draft2 tree.

When you need to figure out what had changed between "Project 1" and
"Project 1 draft 2", you put both into indirect buffers like so:

Go to Project 1, press, C-c C-x b (this will create indirect buffer
"Project 1-1"), then go to draft 2 tree, and do same thing. If you did
not edit the title, it will reuse the indirect buffer name, since its
titled after the headline. You can give different numeric prefix to
C-c C-x b to create different indirect buffers for headlines with same
text.

Then use M-x ediff-buffers, and you can navigate changes easily by
pressing n or p in ediff control panel. I just tried it out and it
worked pretty good. Only thing that could have worked better, is to
hook-up ediff with org-reveal or reveal-mode, so that it automatically
folds all unchanged stuff, and only reveals text in the highlighted
regions.

If you do this "copy the project" thing once a week or so, you can
have a nice ediff of the project's progress along the time-line.

Actually it may not be a bad idea to implement M-x
org-ediff-subtree-with-sibling command, that would do that
automatically, and would include the ediff hooks to do fold/reveal of
regions

The downside of this method is that you have to learn ediff, which is
IMHO has a steep learning curve for new users, but is very powerful
once you learn to use and customize it.

Regards,
  Max

Reply via email to