Link to file without copying to assets folder?

Is this possible? I really want to link to the original and not change its name. The original may also change, so having a stale copy in assets wouldn’t be helpful.

If I manually input a relative path Logseq adds in assets making the path invalid. Why change the user’s input in this case?

The files in question are PDFs which I will never annotate.

FIGURED IT OUT: It was the mysterious bang ! that drag&drop inserted before the link. What does this actually do?

1 Like

So, after a lot of fiddling around, this seems to be the only way to both refer to the original file AND display it in Logseq. Is this right?


Both of these will link to the original file (in the graph folder) and display with the default viewer.


I think it would be more straightforward if partial paths were assumed to start from the graph folder. There seems to be a lot of second guessing going on. In the second case, it seems like the .. is ignored as you can add as many as you like and the link still opens the file in the graph folder.

Not following ..\ above the root of a given folder is typically a security precaution. It can be very dangerous depending on the application.

That said I would also appreciate a convenient way to link to external files. Sometime things get buried, but they need to be where they are for whatever reason.

Newbie here. So can I enter [displayed-filename] (full-path-of-file) and logseq will link (not attach) the file into my graph, and not copy it into the assets folder? I want to use logseq to index and help me find existing files, including large ones. I want to use logseq to replace OmniOutliner, in which format I have many notes with many links to large files that live in specific places on my disk. I don’t plan to do any sync’ing, in case that matters.

It’s a known bug, see Relative Paths in file links don't work (incorrect handling of double-dot ..) - #2 by RBR
They fixed it for audio, so it’s not about the security, and Logseq can access the system anyway.
Sadly this path issue breaks the Zotero plugin.


You can use the Logseq-localassets-plugin and trigger the /Embed non-asset file and choose the file you want. It should auto-detect the file type and render it correctly.


Thanks, that helps. Now I need to go learn how to get use github to get plugins, and then how to install them :slight_smile: … I won’t be offended (rather, to the contrary, would be very grateful) if you decide to take the time to explain how to do this, but I won’t presume this of you, and will have a go at learning from scratch.

Okay, I think I got it installed. Thanks!