The case for Characters and Locations

I know this has been touched upon before, but I’d like to make the argument once more, including WHY.

I switched from yWriter a couple of days ago. yWriter is a great program, but Scrivener is just… better in so many ways,

There are certain features from that program I miss already, though. Most are minor, but this one is, I.M.O, major:
Auto tracking of Character and Location names within the text.

The tracking in yWriter also handles multiple aliases, and counts usage in scenes/documents as a statistic.
I have seen suggestions on how to “hack” this feature using bookmarks, but unless I have misunderstood something, they won’t replicate this functionality?

Why do I miss this a lot?
Simply because I have found it makes it a lot easier for me to spot misspellings of character/location names.

Yes, I have seen the argument that Scrivener’s Character and Location entries are just standard documents, and that Scrivener is designed as a multipurpose application, not only for fiction writers.

But, if many (most?) of the customers do write fiction, can not new special classes be introduced for use by those who see the need?
A special Character and a special Location class that will allow auto tracking by occurrence within text (One text color for characters and another for locations).

I can imagine these classes would only need a few fields (Using Character as an example):

  • Character main alias - string field
  • Character alternate aliases - string field: each alias separated by “;”

I can’t remember how yWriter handles multiple characters with the same alias, but I guess it doesn’t matter at all in that program. A word in the text is either a character, or it isn’t,

To expand on yWriter I’d suggest the addition of:

  • Link to old type character document - Similar to Bookmark functionality?

I switch between using yWriter and Scrivener for similar reasons.

I think it’s worth pointing out that yWriter is a basic editor hooked into a meta-data tracking system, while Scrivener is a tool focused on the process of writing formal &/or long documents. Meta-data tracking that is too specialized adds complexity while only helping a subset of users.

However, as we have a “templates” folder, I could imagine having an “in-line references” folder or something like that, with a toggle-able option to automatically create document links based on the document names in that folder. Then it wouldn’t limit the usefulness to just characters / locations / items, as is the case with yWriter.

Something that might be a “next-step” would be reciprocal links appended to the bottom of the linked documents.

That’s just my two cents, though.

For me the biggest reasons of wanting variables available for names is that:

  1. when I start writing a scene, I usually think of the actions and dialogue first and names later
  2. often when I’m part way through a story, I want to change a the name of a character or location

Not having name recognition means I have to deal with situations 1 and 2 manually, either through find and replace or re-reading to discover everything that needs to be named or renamed. It unnecessarily adds a lot of time to an already time-consuming process of naming things. Coming up with the right name can take a while and I really don’t like it to halt my writing or cause me to lose the rest of the unwritten scene.

Secondarily, it would be nice to be able to do audits like can be done in Highland 2 for seeing how one might be doing to pass the Bechdel Test or see when your characters are there and not.

This is something software is good at and humans are bad at. It’s also something that more writing apps are trying to do. I’d hope eventually it’s something that makes its way into Scrivener.

You can roll your own variables. First, I’d look into the autocomplete list. Add your variables there, so that you can’t accidentally misspell them. Make sure one variable name is unique to each character.

Then in the Replacements field of the compile window, enter that variable and your character name. Whenever you compile, the output will contain character names instead of the variables. Once you settle on names, you can do a project search and replace to eliminate the variables entirely.

If you want to automatically list all documents in your project that include a given variable or set of variables, you can create saved project search collections. When you click on a saved search result, it will re-run the search, and the search terms will be highlighted and will respond to the “search again” shortcut (CMD-G on Macs).

I doubt Keith will change his mind about automatically identifying characters, since Scrivener doesn’t have a concept of what a “character” is, let alone having the ability to identify that Mr. Sparks, Richard Sparks, Rich, Dick, and Rickey, Sparky, etc…are all the same person.

To second rdale’s excellent suggestions: based unscientifically on lack of mentions in these forums, saved searches seem to be one of Scrivener’s most underutilized features. I use them to track TO DOs, QUESTIONs, etc. You can use them to track character names or variables too.

I’m possibly being pedantic here, but if you’re trying to differentiate between “Sue participating in the scene” vs. “Sue mentioned in the scene, but not actually there”, I’m not sure software tracking instances of text can automate that. That’s something you’d need to track manually via Keywords, I think.