emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Eric S Fraga <e.fraga@ucl.ac.uk>
To: kybic@fel.cvut.cz
Cc: emacs-orgmode@gnu.org
Subject: Re: DAG structure / hard links /  shared subtrees
Date: Fri, 30 Dec 2011 13:13:17 +0000	[thread overview]
Message-ID: <87ty4iyzgy.fsf@ucl.ac.uk> (raw)
In-Reply-To: <87liq4uda8.fsf@fel.cvut.cz> (Jan Kybic's message of "Thu, 22 Dec 2011 11:11:11 +0100")

Jan Kybic <kybic@fel.cvut.cz> writes:

> Dear org-mode users,
>
> this is my first post, so let me first state that I am using org-mode
> more and more for organizing my daily agenda and I find it really
> useful.
>
> I have a feature request. The structure of the org file is a tree. 

yes, due to the basis being an outline.

> I wondered if it could be made a directed acyclic graph (DAG) instead. 
> In other words, could a subtree be shared between two trees? In yet
> another words, a kind of Unix directory structure with hard links.

not possible unfortunately.  

> One possible use case is as follows: I am preparing a meeting that
> concerns several projects. I have my org file structured by projects. I
> want to prepare an agenda for this meeting, which would contain the
> issues to discuss from the projects. I want to be able choose the order
> the issues. During the meeting, I want to add notes. Right now, I see the following
> options:
>
> a) I can copy the subtrees corresponding to issues from the projects. 
>    However, if I later edit either of the copies, I would need to
>    synchronize the changes manually.

or simply refile the notes?  I always go through the notes I have taken
at a meeting after the meeting, in my case to define tasks etc.  You
could refile all the notes into the proper places in the hierarchy at
this point.  org has very nice refile support.

> b) I can make an internal link from the agenda to the issues. However,
>    the agenda would then not contain the full detail of the issues, just
>    a short part of the headline. During the meeting I would have to jump
>    there and back.

True but jumping is easy in org?

> c) I can create the meeting agenda dynamically, by assigning tags to
>    projects and creating a sparse tree, e.g. from the Agenda
>    buffer. However, this requires me to mark every issue to be discussed
>    with a meeting-specific tag. I do not have much control over the order
>    in which the issues appear. I cannot structure them. The generation
>    takes time. And it is not straightforward to add new items to the
>    meeting.

I am not sure how the hard links mechanism you suggest above would help
in this case?  Preparing an agenda can be difficult.  What you could do
is have special TODO labels for issues that need to be discussed at the
next meeting?

>
> I am not familiar with the internals of the org-mode but I can envision
> several possible implementations:
>
> a) Enhance existing links so that they can be expanded in-place to show the
>    whole subtree, not just a start of the headline. Ideally, it should
>    be possible to make changes there but a read-only access would also help.
>
> b) Physically copy "linked" trees to the new location. Make the copies
>    share an Id but have a unique subId. Then when one of the copies is
>    changed, the changes are propagated into other copies. I believe 
>    a lot of the logic could be borrowed from org-mobile, which also
>    performs synchronization.
>
> What do you think, does it sound feasible? Is there any other way to
> achieve what I want with org-mode? 

I think both of these would be very difficult to implement with the
latter being quite prone to conflicts...

I think a judicious combination of refiling, jumping and TODO
customisation could give you what you want?

HTH,
eric
-- 
: Eric S Fraga (GnuPG: 0xC89193D8FFFCF67D) in Emacs 24.0.92.1
: using Org-mode version 7.8.02 (release_7.8.02.55.g1870)

  reply	other threads:[~2011-12-30 13:13 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-22 10:11 DAG structure / hard links / shared subtrees Jan Kybic
2011-12-30 13:13 ` Eric S Fraga [this message]
2011-12-30 21:11   ` Jan Kybic

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=87ty4iyzgy.fsf@ucl.ac.uk \
    --to=e.fraga@ucl.ac.uk \
    --cc=emacs-orgmode@gnu.org \
    --cc=kybic@fel.cvut.cz \
    /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).