srid / neuron

Future-proof note-taking and publishing based on Zettelkasten (superseded by Emanote: https://github.com/srid/emanote)
https://neuron.zettel.page
GNU Affero General Public License v3.0
1.52k stars 150 forks source link

Labelled directional links #514

Closed srid closed 3 years ago

srid commented 3 years ago

Deprecate (while still supporting) [[[ in favour of labelled & directional links.

A folgezettel link would look like: [[Some note]]#. That is, the # signifies the connetion label (called "folgezettel"); and its position (here, being at the end of the link) signifies the direction of the folgezettel connection.

The same link with reversed direction would look like: #[[Some note]]. This creates a folgezettel connection from Some note.md to the current note.

In effect, this is similar to tagging of #379. Unlike inline tags, this syntax allows whitespace in tag names. This proposal can also act as an alternative to the use of tags in #379.

Open question: automatically list branching links? Consolidate with dirtree plugin's view? Or keep them separate?


Custom labels becomes possible with this proposal, eg: [[Some note]]$.


A more general proposal would be "glued links", and making the above an alias to it.

That is, [[Some note]]# becomes an alias for [[Some note]][[Folgezettel]], where "Folgezettel" becomes a special zettel indicating the label of the glued connection (one might treat this as a hyperedge of 3 vertices). This way, users may introduce custom connection labels if they so wish; and the backlinks panel can group the backlinks by connection label zettel.

jenny787 commented 3 years ago

great idea. I would use this and normal links to cover all my linking needs.

jdcola commented 3 years ago

It's a great proposal but the link direction metaphor looks odd to me. Intuitively, [[some note]]# seems like [[some note]]->[[current note]] which means from some note.md to the current note. While #[[some note]] seems like [[current]]->[[some note]] which means from current to some note.md. (Reading from left to right and intepret # as -->.) If the current note is following some note (as a folgezettel of some note), the notation should be [[some note]]#, which means [[some note]]'s folgezettel is current note.

srid commented 3 years ago

Visualize the label (#) as a magnet, that pulls the node in that direction, leaving the other node in its position.

I favour this position, only because it matches the semantics of inline tags (#foo). But I'm open to other ideas and approaches.

srid commented 3 years ago

Summary https://gab.com/srid/posts/105601439790477782

MaienM commented 3 years ago

You summary link appears to be dead.

srid commented 3 years ago

@MaienM Just check the official docs https://neuron.zettel.page/folgezettel

I don't usual social media anymore. Micro updates on neuron will be made available in https://www.srid.ca/microblog and more specifically under https://www.srid.ca/neuron (both these links have Atom feed in them).