Metadata describes or points to other data. In Scrivener, the metadata variable <$author> is the name for a project’s author. In my case, that’d be E D Skinner. There’s also metadata for the name of the current project, <$projectname>. It contains the name of the project–its filename–when it was created.
Note: The steps and screenshots that follow are for Scrivener 3.2.2 on a MacBook running MacOS Big Sur 11.2. If you have a different version or platform, some adjustments may be needed.
Metadata in Scrivener is saved in four places:
- Scrivener -> Preferences, General, Author Information;
- Compile, metadata icon (above the right-most pane);
- Project -> Project Settings, Custom Metadata; and
- Other (see Help -> List of all Placeholders).
NOTE: When a new project is created (File -> New Project), the first (Author Information) is copied to the second (Compile, metadata) of the new project.
If you then change your Scrivener preferences (#1), only projects created after that will get the change.
You’ll need to manually change the Compile metadata in any pre-existing projects if you want them to have the new values.
1. Scrivener -> Preferences, General, Author Information
The first metadata is born when Scrivener runs on your computer for the first time. Part of the initialization asks for your name, address, etc. It is stored in Scrivener before any project exists. And everytime you run Scrivener, that same information–unless you change it–is resurrected.
You can review (and change) it in your Scrivener -> Preferences. Click the General tab at the top, and then Author Information on the left. Here’s mine.
There are nine (9) pieces of information (data) in this display including my forename and surname, address, telephone, and email address.
Later, when a project is created (File -> New Project), all of this data is copied into the project where it is then sliced, diced, and recombined to become several metadata variables.
Some of it ends up in the Compile metadata.
2. Compile, metadata icon (above the right-most pane)
In the new project, if I write <$surname> in the text, when it is compiled, it will be replaced with Skinner. Similarly, <$forename> becomes E D. And for convenience, my whole name is put together in <$author> as E D Skinner.
As you can probably guess, the <$projecttitle> and <$abbr_title> come from the filename given when the project is first created.
NOTE: If you later use the Mac Finder or other file browser to change the name of the Scrivener project, this metadata within the project won’t be changed. You’ll need to manually change the Compile metadata in the display above. (Once changed, it will be saved as part of the project.)
3. Project -> Project Settings, Custom Metadata
The third place Scrivener keeps metadata is for new variables of your own devising. There’s a good section in the reference manual showing you the how and why of it.
Each item in the Binder can assign a different value to each variable you add. In that sense, the Custom Metadata belongs to (is stored in) each scene, folder, and part item in the Binder, They can also be added to the Outline view’s headings so you can see them while scrolling through your work in that view.
And you can refer to them in the text with the <$custom:xxx> metadata variable where “xxx” is the name of your Custom Metadata. In the display above, I have two metadata variables. To insert them into the text of a scene, I would write <$custom:Date/Time> for the first, and <$custom:Plot Point> for the second.
4. Other (see Help -> List of all Placeholders)
There are a bunch of metadata variables. Scrivener refers to them as Placeholders and we’ve seen a few of them already. All of them are enclosed within “<” and “>” and begin with a dollar sign “$”. The author’s name, as we’ve seen, is in the <$author> placeholder. (I’m a software guy so I think of these as variables.)
You’ll see all of the ones mentioned here and a great many others.
TIP: To search and print the complete list, use Help -> List of all Placeholders to bring up the list. Click therein and type ^A to select all of the document. Then close it, add a new text item to your project, click in the text therein and paste (^V) the list. You can then use Edit -> Find and other tools to explore, and you can prune out any subsection you might want, and print just that or the whole list.
Here’s an example project. I named it DeleteMe.
You’ll notice the Draft folder in the Binder contains one text item. In the central editor, I’ve typed things like, “Surname is <$surname>” so we can see which variable has what value.
In the inspector pane on the right, also notice the two Custom Metadata variables, Main storyline and Date/time.
When I compile the Draft folder, here’s the output.
Two Key Points
- Author name and details are copied from Scrivener -> Preferences, General, Author Information and into a project when it is created. In that project, it is saved in the Compile, metadata settings.
- Similarly, a project’s name is initially used as its filename. But it is also stored in the project’s compile settings. If you change the filename with the Finder, a file browser, or some other mechanism, the Compile, metadata setting inside the file will not be affected. You’ll probably want to launch Scrivener and change that as well.