I’m posting here what I did to be able to get portion of documents from a Scrivener source to another one. Having been told it was possible, and then, it was not, I guess I think this topic needs some clarification.
First, I do not know if there is another easier way to do this… but if you know, please tell us.
OK, I was told by KB in the blog comments a few weeks ago that what I was trying to achieve will be feasible with Scrivener 3.
This is my basic needs and context: “… Using Scrivener mostly to prepare my teaching and training notes, I constantly reuse part of the information from other files. At the moment I just do an ugly “Copy-Paste” but would prefer to reference the source and be able “at compile” to import as text the reference. Any better idea how I can do that?”
KB answer was “As for reusing information, scrivener has a new placeholder tag. You can use this to include the text from other documents inside Scrivener, or to include the text of text files stored outside Scrivener, embedding it right into the text during Compile. So you should be able to do what you want there in 3.0.”
Let’s say that you are getting a link from a Scrivener file called FileSource.scriv
Then, you want to import only text from the file to a new document called FileDestination.scriv
From the FileSource.scriv you will use the function “Copy Document Link” and will give you a result like this: x-scrivener-item:///Users/YourUser/Dropbox/Apps/Scrivener/FileSource.scriv?id=E87AC320-8C71-4FA3-9B54-B8FB66515D01
In the FileDestination.scriv you will need to do this to import the content from the FileSource.scriv:
1- You must use the placeholder tag <$include> but do not use the \ sign before the tag
2- Then from the link you copied earlier, remove the scrivener app reference (“x-scrivener-item://”)
3- Use the scrivener file name as if it was a folder (Remove the extra char( “?id=”)
4- Use the UUID as a folder and add the rtf file it contains
5- You should have the final result like this: <$include:/Users/YourUser/Dropbox/Apps/Scrivener/FileSource.scriv/Files/Data/300BD8FA-398E-46B8-BAF8-A4B4E4941470/content.rtf>
One last thing… It would be nice to have a function that does all of this instead of having to do it manually.
Maybe it already exists?
Hoping this will help someone else …