zadam / trilium

Build your personal knowledge base with Trilium Notes
GNU Affero General Public License v3.0
27.2k stars 1.9k forks source link

Link child pages to their parent #945

Closed danielnbalasoiu closed 2 years ago

danielnbalasoiu commented 4 years ago

In the current setup the only way to have a relation and generate a link map between two or more notes is by internal linking.

Link map is very useful when I want to see what tasks I've worked on in a specific day or what articles I've read but this is not reflected in the graph unless I keep a log with internal relations between the parent page (Today's date) and it's child nodes.

Node structure:

05 - Saturday

The content of the page would look like this:

Today's log

Tasks:

Interesting articles

Can you add a new relation between the parent node and all it's children? I think this should be inherited even if you copy/clone a note into multiple parents (days in calendar in our case).

Default behavior: image

After manual linking: image

With future request implemented image

zadam commented 4 years ago

Hello,

I don't think it's necessary to create relation attributes for parent-child relationship that just seems like a duplication of relationships which are already represented elsewhere (in "branches" but that's not important).

So I believe the core thing you're asking for is to include these parent-child relationships into the link map. I was thinking about this already in the past since it's a completely valid idea - Link map is supposed to show the relevant relationships between the current note and the others. But there are some problems:

a) it is essentially a duplication of what is already quite visible in the note tree b) it can get pretty unwieldy especially in case of large number of e.g. children notes. This might be fine for your particular use case but I can imagine others where the real links and relations would be "drowned" by children c) link map (dialog) also shows transitive relationships - so e.g. when you show children, you then show also children of children. But then when you show children, you should also show parents, no? Do you then show (other) parents of children? At that point you're really just duplicating the note tree and loading almost everything.

One thing I can think of is to try to reduce this and only show ancestors of the current note and children of the current note so you don't need to display e.g. other children of the current note's parent. Then the displayed relationships are reduced to the essential (if somewhat arbitrarily).

Link map is very useful when I want to see what tasks I've worked on in a specific day or what articles I've read

Did you notice the "edited notes on day" widget? This kind of sounds like it might be useful here ...

lerone-b commented 4 years ago

I support danielnbalasoiu´s FR in substance, acknowledging the problem space that zadam very reasonably brought to the table – meaning: I also think there should be some sort rather restrictive 'cut' in the representation of the kindred-chain in the relation map (keeping the 'overview' quality of the graph/map).

I would add some wider conceptual thought: I think consideration the idea that the parent-child-relation (and really the logical structure of the note-tree) should be represented in the 'relation-map' as Iong as one sees it as 'the one' graphical/topological relation of any given note providing 'overview'. this would also amount to ascribing a central logical/cognitive/orientational function and role just by the fact that it is the one concurrent schema of any note. I´d think the fact of its default existence with any note and it´s graph nature automatically carries /communicates the gesture / promise(?) to provide a quick and digestable overview of a notes overall/holistic topological position in the notebook. so, for me it´s position and role in the UI comes with a kind of proposition baked-in.

consequently I´d think that to separate the hierarchical structure out of of the picture of the notes relevant linkage to other notes somehow degrades and trunctates its communicative / cognitive value as a 'topology-/context-graph' of a note – which is a translation of 'relation map' that would make sense to me.

so, in short: +1!

plague-doctor commented 3 years ago

I definitely support this idea. I have installed Trilium two days ago, and have spend few hours in order to figure out how to achieve exactly what @danielnbalasoiu is asking for.

Let's have a look at this branch:

personal1

and this is what I would like to see on the Link Map:

personal2

Please don't separate the hierarchical structures. @lerone-b has described this perfectly. It is a strong :+1: from me.

zadam commented 3 years ago

I plan to revisit the link map in the next iteration and I will explore this option ...

zadam commented 2 years ago

Link map supports "hierarchical view".