Go To Reference Sheet

I’m looking at the Scrivener trial and so far there’s only one feature I want that doesn’t seem to be here in any form.

In many programming IDEs, there is a context menu item for “Go to Definition” which will navigate to the module where a function is defined. I’d like to see something like this in Scrivener. I’d like to right-click a character’s name in the manuscript (or a location, or a species, or a religion, or anything I have reference sheets for) and have a context menu item which will automatically navigate to the reference sheet for that term.

Hi, Ralf3, and welcome to the forum!

You may want to have a look at section 18.5 References of the manual. It does something similar to what you’re looking for.

Hello! Thanks for the suggestion, but this isn’t at all what I am looking for.

Say that I have a novel with 100 characters. In other words, a perfect job for Scrivener’s organization features.

Say that I create a character sheet for each character (Under Manuscript / Characters). Now, if I am reading or writing a scene and I want to refer to Bob’s character sheet, I either need to visually search through the list of 100 characters, or use the somewhat cumbersome search features and visually search through the list of results.

Programming IDEs solved this problem by allowing you to right click on a term directly in the code and immediately navigate to where that term is first established. I think Scrivener should be able to do this as well. Perhaps when you highlight a word or phrase, there could be a feature that finds a document in the binder with the same title (if it exists) and immediately goes there. So I could type a sentence about the character Bob, then right-click on the word “Bob” and select an option that would bring up Bob’s character sheet.

The project references feature wouldn’t help with this, since it would be pointless to add global references to all 100 character sheets. Essentially it’d just create a duplicate and less-organized copy of the binder folder, and wouldn’t solve the problem of having to visually search through a list.

I quite like this idea, and have added it to the list (although it will be some time before it sees the light of day, given the number of other things on said list I’m working through at the moment). I don’t think it would be enough to just pick out the first item in the binder, though, as you might have more than one document with the term in it and there’s no guarantee the first document is the one you want. Also, I don’t think it would be enough to do an exact match on the term. For instance, if you select “Bob”, and your character sheet is called “Bob Carolgees”, you would want the character sheet presented even though “Bob” is only a partial match. So this would need to be a “Go To” submenu in the contextual menu that presents all matching documents.

1 Like

While we wait for Keith to figure and implement this solution (I’m assuming it won’t come until Scriv for Win ver 2 and Mac ver 3), maybe look into the following:

Project references aren’t going to be useful here, but DOCUMENT references can be added to individual documents and folders. These reference lists are unique to each entry in the binder.

You could also start assigning character keywords to all documents which contain or reference a given character, and use the keywords window to search for a single character’s documents. If you keep your character reference sheets in a folder at the top of the binder, then searches which include those files will list the ref. sheet as the first result, with all other documents with the same keyword shown in the order they are found in the binder.

Scrivener links to other documents in the binder might also be a solution. You create each link yourself, but that’s not so bad if you just keep a list of these links in the document notes alongside any other info in the inspector’s Document Notes pane. FYI: Synopses can’t contain links, so that space won’t work.

I’m thinking there would have to be a way to provide a list of key words that all reference a given reference sheet, so that the document “Robert Guthrie” would pop up when I interface with the Go To Reference feature with any of the following words: Robert, Mr. Guthrie, Rob, Bob, Rob-o-Bob-o, Captain Obscure, and Knucklehead. And also a way to disable the feature for a given document so it doesn’t come up via that feature.

I look forward to forgetting all about this feature request and discovering its implementation years after the fact. :unamused:

I think that would definitely getting a bit complicated!

I’m not quite sure what you mean by that roll of the eyes. There have been some huge overhauls of Scrivener going on in the background that have taken years so far - even though I bet most users will wonder what they are even when they see them!

It meant that one day he will wander around in Scrivener and say, “Whoa! Look at what it can do! What a genius that Keith is to have come up with this!” and completely forget that he had a conversation about how it might do that one day. :smiley:

The eyerolls are for how I get excited for something and then forget about it completely; I’ve actually made requests for features that were already in Scrivener, and had been for quite a long time.

In short; that was meant as self-depricating because I’ll let a potentially handy feature go to waste. I’m sorry that I made it look like I was denigrating your development process, which was not my intent.

Heh, sorry, you’ve caught me at a time of development hell - there are serious improvements throughout Scrivener that have been in there for two years that no user has yet seen, so long have I been working on a major rework. And right now I’m tearing Compile apart ready to rebuild it into something better and easier to use. So I can understand that it might feel that some features requested a good while ago, which I said would be implemented, have lingered in limbo. :slight_smile: On the plus side Scrivener 2.7 for Mac will be getting a pretty UI refresh, at least!

But back to the topic at hand, as I say, I have added it to the list (for Windows and Mac) as I do think it’s a good idea.

I don’t believe I’ve seen it mentioned yet, but there is already one feature that does do an item name look-up on right-click, and that is the Scrivener Link contextual menu. If you select “Bob”, then at the top of that menu there would be a “Suggestions” area with the “Bob Carolgees” and any other documents with “Bob” in their titles. Link it and click to proceed. Of course if you actually want functional hyperlinks in your final copy, you may not want to use that method, but if you just use them for internal navigation, there is no harm in leaving it around, just making them as you “need”.

A more passive approach is to use the Edit/Find/Find Synopsis (Ctrl-Cmd-G) menu commmand. That searches by title and synopsis alone, making it a very handy tool to quickly locate a document you need. It means typing or copying and pasting the word you want to look up, so it’s not what you’re asking for, but pretty close! Keep in mind with that tool you can just tab, arrow key and hit spacebar to load the document in a QR panel, or drag a search result to the editor header bar to load it.

MM, I’m worried that my thought process is so transparent to you… have you considered counseling? :stuck_out_tongue: But yes, that’s what I meant to express.

Wow, thank you for the consideration! I think you have earned a sale from me. I look forward to the feature, but I won’t be impatient about it, and I will make do with the existing features for now. But a very good impression has been made on me.

It is true that I didn’t consider the problem of multiple aliases for the same page, or multiple pages with the same name, something that programming environments don’t have to deal with since code cannot be ambiguous by nature or else it simply won’t compile. It is a good point, but it still seems doable.

Pages with multiple aliases might be solved by tagging system, which might use the existing tagging features in some way, or it could read from a special “AKA” section on the character sheet itself. It is not unreasonable to think that a character sheet would naturally contain a list of common aliases for a character, for instance, so if the character sheet for Bob Carolgees has a line that says “AKA: Bob / Robert C. / The Black Widower” then the matching algorithm could test for matches from that line.

In the rare event that you have two or more elements with the same name, the simplest solution would be for the user to add their own internal link to the start of the page to make their own Wikipedia-style disambiguation. “Did you mean [the city of Bob]?” – Since it is so rare that this actually happens in the context of a novel, then this solution should be more than enough to suffice.

The existing tagging system can help resolve these ambiguities, too. You can give Character sheets a unique icon, making them easier to find in a list of search results. You can also use any of the existing metadata to identify character sheets as such, and then search on that metadata.

Another solution that doesn’t even involve tagging and searching. Use the split pane function to put the folder containing all of your character sheets in an Outline view in one pane. Sort it in alphabetical order. Scan down to find the one you want. For individual chapters, create a Collection containing only the characters in that chapter, and do the same thing.

Katherine

  1. If the idea is to specifically target reference material docs and not docs from one’s narrative, it might be useful to restrict the results of this function to items within the Research folder tree (or perhaps some user-designated folder).

  2. Perhaps the function should target the other editor, if it is open.

  3. As for Robo-Bobo, who likes to look himself up in a variety of ways, considered titling of the reference document by the user would do the trick, I should think: ‘Robert Schmobert (Bob, Robo-Bobo)’.

Just to tweak the idea a little (borrowing from qualitative research software like nVivo), I would suggest reusing keywords to provide a way of labelling text within a document (be it a name, or a passage, or a whole section), rather than the whole document. It might be implemented thus:

  • As now, the keyword tab in the info panel lists keywords (though perhaps with options to display in different ways, including as a word cloud).
  • You select the text in the document you want to label, and drag it over to the keyword.
  • Then, you can click on the keyword, and up comes a document window displaying all the pieces of text associated with that key word (e.g. all the text you labelled that relates to a particular character).
  • You can double click on any entry to be taken to the context (i.e. where it came from).
  • You might also have an option for keywords in the text that might match to be auto labelled, as with links.

Possible?

1 Like

I think you may be underestimating the difficulty inherent in labeling individual pieces of text, rather than entire documents.

Also, remember that a “document” can be as short as you like. Scrivener doesn’t care. So, rather than requiring a complete re-implementation of keywords, you can just split out the chunk of text you care about into its own document and use Scrivener’s existing metadata tools.

Katherine