Access resource documents and links across all of my Scrivener projects?

How do I set up a binder folder such that its contents (text, media, web links, etc.) can be accessed from within ANY (all) of my Scrivener projects?

What do you mean by “accessed?”

If the host project is open, you can copy a Document Link from that project to any destination that will accept such links.

Lets say that I want to quickly access from within Scrivener’s binder, a collection of documents (txt and rich text files), PDFs, media (images, sound, video), web links, that I make use of while I write, while I use Scrivener, independent of which particular project I have launched and have open. Would be best of course if this was a collection on disc, residing on my computer, in the standard file structure of my hard drive, referenced as from an alias, live and editable from either the binder’s representation of that folder or as a result of my direct manipulation of that folder and its content in the finder.

Currently, when I drag a folder from the finder into the Scrivener Binder, Scrivener appears to make a duplicate of each of these files, importing them directly into the currently open Scrivener Project.

Not at all what I want.

Makes the Scrivener project file bloated, isn’t available to other Scrivener Projects, and is dead to any changes I make to the folder and its contents on the finder from which it was copied.

There has been a suggestion here of using Scrivener’s Shared Template Folder functionality, but this of course results in a flat list of file references, that can only be accessed one at a time, and only by importing them into each project as clones of the original, weighting down the individual Scrivener project files as they are added. Switch to the next project, or start a new one, and those files already imported simply don’t exist.

Anyone know how to import a folder and its contents such that they exist as aliases, as pointers to the actual documents, a live window into that folder in the finder? Anyone know how to do this once and have it apply to the binder of every one of my Scrivener projects?

Thanks, Randall

One alternative would be to use the “Import Research Files as Aliases” function to create the desired folder in one project, and then use that project as a template for newly created projects.

1 Like

Yes, I think the alias import command is the closest thing to what you are looking for. That is an item-by-item import to be clear, even though the resources are centralised and thus shared by all projects that link to them. By that I mean you can’t have a folder aliased into the binder in such a way that its contents are represented as binder items. There was a request for that a few years ago as I recall, but it’s not really something that would fit well into the architecture of the software.

I do quite like the idea given above of having a central mini-project that other projects are meant to integrate with. It’s not quite what you’re looking for in precise detail, it is still another project, but the integration can be tighter than you might be thinking.

1 Like

I’'ve just now instructed Finder to make an alias of a folder on my drive.
I then dragged that finder alias into the Scrivener Binder’s Research folder.
It appeard in the binder.
When I click on that newly imported finder alias in my Scrivener Binder, Scrivener presents…

“File Not Found”

???

Just attempted the “Import Research Files As Aliases”:

Doesn’t work at all on Finder Folders, so any imports need to be of Finder Files and must be of Finder Files that Scrivener has the capacity to open directly into its editor.

Looks like it only works one document at a time.

Appears to only open that document into the currently open Scrivener Project. When I open another Scrivener Project or switch between open documents with the project tabs, that imported alias is only in the project that I originally opened it within.

Frustrating.

Yes, that’s exactly what I meant by above, when I said the alias feature only works “one-by-one”. It’s a tool for referencing a file on the disk into the binder, so that changes made to that file are reflected in all projects that reference it. It’s not a tool for bringing whole hosts of documents into the binder via folders.

To repeat:

As for all projects seeing the alias, it’s opt-in. You’d alias to this file in each project that needs access to it.

Overall, again, I don’t feel this feature really addresses what you want from the original description you gave at the top of the discussion. It’s an interesting feature to keep in mind though, and might satisfy some corners of things you need. But for a truly “shared resource” type thing like you want, there is nothing really quite like that in Scrivener, save for having two projects open at once.

it’s not really something that would fit well into the architecture of the software

Please unpack this vague comment.

From a programming point of view, its trivial to request the directory of finder objects (list of Folders and Files) within any given folder (at that folder’s path). Presenting those items as a list with the proper icons (also trivial to retrieve as resources) is not at all difficult. Several lines of code.

Am I missing something? Is there something specific and unique about it’s code that would make Scrivener uniquely locked out of common calls to disc directories at folder addresses. I can’t imagine a scenario in which this would be true. What am I missing?

I’ll have to look into the previous discussion on this later, as we went into detail on why this is problematic. As I like to say in programming, famous last words are, “This should be trivial…” :wink: Next thing you know you’ve got a thicket of broken unit tests that contradict each other and so much refactoring that you want to just start over from scratch.

At any rate, do consider that the binder in Scrivener has very little to do with how a traditional file system works. For example, can you nest a PDF file beneath another PDF file in Finder? Of course not. So what happens if you do that in Scrivener? What happens if you add text to a folder in Scrivener? What happens if you sort the contents of a folder by a custom metadata field Finder has no knowledge of? Do all of the other project binders sort themselves likewise? If so, how is that communicated through a medium like APFS? What happens if you rename something to the same name as another item? In Scrivener you can have fifty items called “Notes”, can’t do that in a folder in Finder though! If I spend hours filling out index cards for items in this folder, how do they translate over to other projects? Would you be able to move items out of this binder folder? If so, where do they go on the file system?

In short, this folder would have to be so limited, so contrary to what the binder is, and what Scrivener provides, that we might as well just open up a Finder window alongside our project and get on with our lives, without spending months trying to solve these problems.

Sorry, I was unclear. I meant a Folder object in the Scrivener Binder, in which you place aliases to whatever files you want.

Yes. As I said, the idea would be to make this collection of items part of a Project Template, which you then use to create new projects.

The solution I use for this sort of requirement is to keep all research material in DEVONthink. Linking from Scrivener to DEVONthink is so easy. Solves a lot of problems for me. Not everyone’s cup of tea, I know.

Below is a screenshot of a Scrivener project with links to folders in DEVONthink – including a smart folder which collects any items in the DEVONthink database that have been tagged “placement”. So any time I use that tag on an item in DT, it will be made available for access in Scrivener via the link in Scrivener. Scrivener and DT work well together, in my experience. YMMV.

1 Like

This is also my solution, more or less.