feature request: dynamic internal links

I use internal links all the time.
It would be nice if they were a bit more dynamic.

Like if I make a link to someones name which goes to their character sheet when clicked (i.e. [[tim]].

if i change the file name of the character from tim to nick, it would be nice if ALL the internal links pointing to tim changed to ‘Nick’. It would keep things in sync.

I like using scrivener as a wiki, so this would be great!

I like using Scrivener as a sort of wiki, too. These tips won’t make the software fully dynamic like VoodooPad or even an online wiki, but there are a couple of settings I tweak to make this way of working a bit more like a writing in a wiki:

  • In the Corrections preference pane: set Automatically detect [[Scrivener links]]. A few points on usage:

[list][*] The Edit/Complete Document Title (Ctrl-Esc) command is useful when creating links to existing documents.

  • When the text within the brackets does not match an existing binder item title, you will be given a dialogue box to create the link. Although Scrivener doesn’t work like a wiki in the post hoc linking sense, you can still easily make “stubs” while you write. Note that if you create stubs like this in locations that have a default subdocument type (like the character sheet folder in some of our built-in templates) then the stub will use that type. I.e. you’ll get a fresh character sheet to fill out by linking to a character you haven’t written up yet.
    [/:m]
    [
    ] There are some options in the Navigation preference pane, under the References and Scrivener Links section, that will adjust link interaction a bit more wiki-like. I prefer setting the Open clicked Scrivener Links in: Current Editor, and Open newly created Scrivener Links in: (Do not open).[/*:m][/list:u]

There is an Edit/Update Links to use Target Titles menu command for that purpose. It can be applied to large selections of text as well. As for doing that automatically, there is no infrastructure for that. Scrivener would have to scan every file in the project, open, edit and save it. If you want to see what that would mean, try using the Project Replace feature on a large project to change one common phrase to another, then imagine that happening every time you change a title in the binder, whether or not you need it! :slight_smile: