Relative links to other .md documents

Hi, I’m from a game dev studio that are trying to use Nextcloud for our project management.

Collectives is an app with great potential and could become an essential part of our workflow.

But we have an issue that greatly reduces its usefulness.
Consider a markdown document with the following content:

![An image](pictures/image.png)
Link to [document](document.md)

The image is displayed just fine.
Clicking the link to document does nothing.

Right clicking and opening the link in a new tab reveals that it tries to open a nonexisting https://redacted.redacted.com/apps/collectives/redacted/redacted/document.md

The expected result is that relative links to markdown document works.

It works if I use the Collective internal syntax links:

Link to [document](https://redacted.redacted.com/apps/collectives/redacted/redacted/document?fileId=14998)

Not everyone on our team wants to use the web editor. And having a syntax that is internal to the host (Collectives) goes against markdowns strengths. It makes it impossible to for example convert a markdown document to HTML without hassle.

Are there any plans to support plain relative links to markdown documents?

Versions: Collectives 2.3.0, Text 3.6.0, Nextcloud 25.0.3

I think the real problem is that you can not access directly a file like document.md with an Nextcloud url. You always need the fileId. You can see this with browsing in Nextcloud Files. For internal links you maybe use the external url https://cloud.server.tld/f/fileid. But i think you can not use the path / name.

Also there is an app Sharing Path (not Nextcloud 25). But i think this app can also not solve your problem.

Also there is an app ShareRenamer. But i think this app can also not solve your problem.

Thanks for the info.

I was worried it was something like this.

However, since ![An image](pictures/image.png) works fine, clearly the app responsible for displaying Markdown is able to resolve paths.

Why doesn’t the app do the same for relative .md links?

Not only is this entirely inconsistent, but it makes standard markdown files simply broken inside Nextcloud.

I also don’t understand why this is and why it doesn’t seem to bother anyone. I would also like to have a toggle between markdown view and markdown source code (text version) in the markdown editor. Nobody else seems to miss such a simple feature except me.

I don’t want to be misunderstood. Nextcloud Text is really great and I really don’t want to miss it. The same is certainly true for Collectives.

I couldn’t agree more.

We constantly viewing markdown files. Editing is a much less common event, so it feels very uncomfortable that the edit mode is forced at all times. Not to mention how the edit mode forces a modification, regardless of whether any modifications actually happen.

The Text app is great, but there are some rough edges and design choices I don’t understand.

Hi,
i just struggle with the same problem.
A little circle of colleagues in my company like to use external editors like vimwiki but the majority is only used to work with the nextcloud text-editor.
Please consider supporting simple relative path-syntax for file-linking.
Also not forcing the md-files to be opened in edit-mode would be great, as it would massively reduce useless news-feed in the activities-board.

Don’t get me wrong, the tool is already pretty cool as the above already mentioned

Hello everybody,
Firstaful, I want to express my gratitude for all the good work being done on Nextcloud in general. It is such a nice project, overall.

Regarding the topic: I think it would make much sense to implement the markdown relative links to other markdown files as this would open the whole world of minimalistic online/offline knowledge organization as logseq or obsidian, but as a simple alternative.
I am currently working on a project to organize my heritage information and I created for every person a folder, containing a Readme.md.

This file contains relative paths to other persons in folders staying beneath this one. Example:

root/Hans-Peter/Readme.md containing:

# Person Hans-Peter
Father [Uwe](../Uwe/Readme.md)

and file in root/Uwe/Readme.md containing:

# Person Uwe
Son [Hans-Peter](../Hans-Peter/Readme.md)

This way I am able to create a complete heritage graph only using simple markdown files.
I can put images and everything in the folder of the person. Sounds perfect for me.
I can happily work with this approach in Visual Code as the Markdown-Preview is able to jump to the files Referenced. However, when using nextcloud online, the links are broken.
This is somewhat sad, as it means I cannot share my knowledgebase with unexperienced users by simply sending them a link to the root-folder of my data.

I am sure there are plenty of other usages that depend on this functionality to work.
If somebody of the developers could tell me if it is a nightmare to implement this or if there is simply not enough personpower at the moment I would be glad.
If it’s not too difficult I would give it a shot and try to create a pull-request for this feature.

1 Like

Hello!

I have been trying to do the same for a skeleton directory where a file link points to another file in the skeleton (Readme.md has a link to Welcome.md).

Using the rich editor you get a “file id” appended, which means it won’t work on other users accounts.

However!
By downloading the file and manually editing the link you can make it relative!

In my example the rich editor produces this link to my file:
[welcome](/apps/files/?dir=/&openfile=527#relPath=/welcome.md)
That does not work for everyone. But changing it to:
[welcome](/apps/files/?dir=/&relPath=/welcome.md)
Will open the file!

Hope you find this workaround helpful! Also changing the generated link should not be hard in the code for the editor!

Dear all, just to let you know - we hope to improve the situation with the link handling changes coming in Nextcloud 29. Relative links to markdown files except Readme.md should work already, but in future they should also work for links to Readme.md files.

2 Likes