auto-link/highlight/something when typing

I’d like to be able to have a glossary/dictionary/database/something where I can place names/etc, and have it so that when I type the name, it will automatically highlight/link/reference/something the name/text. I’d like this for several reasons…

  1. As a visual spell-check for typos on my common or esoteric names (if it doesn’t turn into a link/whatever after I type it, I made a typo)
  2. To be able to automatically pre-fill/auto-fill some of the outline columns/meta-data to show things like characters/places in the different binders
  3. To make it easy(er) to check that I’m using the correct name/text
  4. Possibly make it easy to compile into a glossary

Ideally, I’d like to be able to combine with the Characters/Places/etc, and be able to identify synonyms that would highlight/link to the same place/definition/Glossary-terms. Possibly best implemented as document-based meta-data as an additional pull-down menu with/beside “Document Notes” - something like “AutoLink” where each row/entry automatically links matching text to this document, possibly with a check-box to ignore-case. Thus, for a Character-sheet for Tom Savage, it could have multiple-matches that auto-link to it, something like this pseudo-code:

AutoLink:
"Thomas Savage"
"Tom Savage"
"Tom"
"Savage" x=ignore-case

and it would have to have a data-base back-end, and check when adding to AutoLink that the text is unique (ie - can’t AutoLink “Tom” to more than 1 document). After changing an AutoLink-line, would ask whether you’d like to change all matching-text to the new-text, un-link, or search/replace one-at-a-time. Also, after adding/changing a line, would ask whether to search other documents and AutoLink. This would thus also make a good/reliable way to change character-name or similar. Probably also need to be able to select a word/text in any other document that is auto-linked, and force it to NOT-auto-link.

Since formats/etc are an integral part of Scrivener, I’d probably limit the kinds of in-line highlighting to things that can be done within current styles (highlight/link/followed-by-psuedo-footmark-notation/super-script-AL-for-AutoLink/etc), and possibly have a check-box/menu-item to turn on/off AutoLink-highlighting (possibly 2 if you have 2-kinds of highlighting : color and foot-note-like). AutoLink would always happen, the check-box(es) would only control whether the highlight/etc would occur. Though I’m not sure if an option to hide AutoLink would just make it more confusing…

May also need some additional compiler-type options, like whether to footnote/link none/first-occurance/all in the final-document.

An option to blink the high-light as a visual indicator that it’s auto-linked would be an nice feature if highlighting turned off. That way it would still be a sanity-check on the spelling, and would also be a visual indicator that the text was auto-highlighted (for the case where you made an accidental AutoLink)

2 Likes

I was hoping this would spark a little discussion, but I guess if no-one else is interested, then I must be an edge-case. I just thought it would be a great way to do some neat things and might also meet the needs of some other posts I’d read, like

  • Be able to automatically highlight/find all the documents that contain your different characters. since all your character’s names/nicknames/etc would automatically auto-link to your character’s description/summary-sheet
  • Be able to easily re-name characters/places/etc
  • Be able to find/review all places that reference character/place/object/etc, so it would be easier to make sure that there aren’t any inconsistencies in descriptions/etc.

but in a way that seemed to fit with the Scrivener-flow (at least I thought so).

All these things are possible now with the meta-data/scrivener-links/etc, but then you have to manually set up the meta-data/scrivener-links for each document/sentence/etc, thus it’s easy for mistakes to be made. Plus, for me, it seems to take me out of writer-mode and put me in editor-mode, so it ends up being a pain. I just thought the automation would save a lot of editor-mode time for many people…

I realise that this is quite an old post now, but thought I’d chip in anyway.
This is a great idea for a feature and something that I’ve been wrestling with on my current project where I’m trying to keep track of a large number of character and locations and their interdependencies. I have had to resort to using VoodooPad to handle this, but it would be much better if this feature was baked in to Scrivener so that I don’t have to duplicate work and keep jumping between two different apps.

Keith, could you consider some kind of VoodooPad-style auto-linking for a future release?

I also think the Auto-Link feature would be super helpful. It’s a tool I find that another writing program does that is really helpful for me while writing so I just have to click it for quick reference. It would definitely keep Scrivener on my preferred list and all-in-one for me personally. It would allow me to simply click for the quick reference without have to switch out of the pane, make sure I’m in the dual pane mode, etc.

Scrivener has a couple of tools that can help with some of the things spoken of here:

  1. Right-click on any phrase that is the title of another document. Toward the top of the contextual menu you’ll find matching items. By default they will open in the same editor, hold down the Command key to load in the other editor, Option for Quick Reference. So essentially any phrase of text you type in can be a link, it’s just not in your face about it. (This is all Mac-only at the moment.)
  2. Enable the Automatically detect [[document links]] option, in the Corrections preference pane. This creates a link as you type, creating new documents on the fly if nothing matches the phrase you put in brackets. After link creation, the brackets are removed.
3 Likes

I do have the “Automatically detect [[document links]]” option enabled. However, it does not work in the Windows version. I am not sure if it is a bug or something that will be addressed already in a future patch.

It works for me.

As an example, I open the Scrivener Tutorial project. I type [[Metadata]] in the text editor of a document. When I type the final “]” Scriv creates a working link. Same with [[The Outliner]]. Note that this operation is case sensitive.

After typing final “]”:

Does that not work for you?

Best,
Jim

Okay, so it didn’t work on the file that converted upon the update from Scrivener 1 to Scrivener 3. However, it did work on a new project I created from scratch in Scrivener 3. Maybe the file that was converted got corrupted or something. Thank you for the help!

1 Like

I really like the suggestion in the first post. Tinderbox 9 has implemented some features analogous to these. It will reformat the text and/or set tags based on user-defined regex patterns.