Here, There and Everywhere

Note: This blog post pertains to upcoming features in Scrivener 3, which will be released on macOS later this year and will follow on Windows some time in 2018.

With the rise in popularity of web searching, and similar tools like Spotlight on iOS and macOS, we’ve grown accustomed to the concept of not only finding things by searching, but interestingly so, using that mechanism as a principal means for navigating to things we already know about. You may have seen an article or two demonstrating how Google has for many become a shortcut in getting to other websites without having to key in a URL or find a bookmark for it. And on an iPhone or Mac, how often have you used Spotlight to load an app or document, rather than hunt down its icon so you can double-click or tap on it?

Wherever we find a sea of things flooding the ordinary routes in navigation there seems a clear tendency toward searching as a means of cutting through the data, straight to what we were looking for. Over the years my own use of Scrivener has been shaped by this tendency, even though there was never a dedicated way of doing so. Project search worked, but could be disruptive if the sidebar was already in use for another purpose.

Scrivener 3.0 takes the concept of searching as a form of motion, and puts it at the very top of the application, literally in fact.

Quick Search shows you where you are, and gives you a way of getting to where you will go next.
Quick Search shows you where you are, and gives you a way of getting to where you will go next.

If it looks a little bit like a URL bar in a browser, you wouldn’t be far off in that assumption. When not in use, it merely displays where you are, but when you click into it (or use the keyboard shortcut, Ctrl-Opt-G on the Mac and Ctrl-Shift-G on PC), you can type in a bit of the name of the thing you’re looking for and get a list of search results, narrowed down as you type, from anywhere in the project. Arrow down to the precise thing you’re looking for (or if it happens to be the first result you don’t even need to do that), punch the Return key and it will load into the active editor. You can also click straight on the result you want to load.

That right there will be enough for most things you’d need such a feature for, but true to form, we’ve packed a lot of extra capabilities into it. Let’s start with a few simple additions to the Return key or clicking with the mouse:

  • With the Shift key the search result loads as a Quick Reference panel. This is the least disruptive way to reference a document, as not a single thing changes in your project window using this route.
  • With the Opt/Alt key the result loads in the other editor split, creating one if necessary. That means you can look up reference material while in the middle of typing a word, and once you’ve loaded it in the other split you’ll be able to finish typing that word without missing a beat.

Not a fan of toolbars? We’ve got you covered. When the Quick Search tool isn’t available the keyboard shortcut will bring up a floating search tool that provides all of the above and dismisses itself cleanly when you hit Return, Esc or click on a result. Just like Spotlight.

Bring Out the Mouse

Searching isn’t solely about reading or editing things. Often we search with the intention of doing something with the things we find. To that end, every entry in the search result list can be dragged and dropped—and doing so will be just like dragging and dropping that item from the binder. Turns out you can do an awful lot with a mere search result!

Drag any search result in the list into the project window to do a variety of things with it.
Drag any search result in the list into the project window to do a variety of things with it.

Working counter-clockwise through the thicket of arrows above:

  1. Assign the selected document to a collection by dragging it onto a tab in the collection tab list, or right to the correct spot if the collection is open in the sidebar, corkboard or outliner.
  2. Drop into the binder, corkboard or outliner to move the document to the dragged location. This even works with the new label view, discussed by Jennifer in an earlier post. Yes, you can move a search result and label it in one move.
  3. Or with the Alt/Opt key held down: copy it somewhere else (an optional capability).
  4. Drag into the text editor to create a link to it. (Or if it is an image, to place the image, which I just did a few seconds ago, above.)
  5. Or with the Alt/Opt key, paste the contents of it into the editor. (Great for making little starter chunks of text, like tables you’ve already formatted. Rather than making one from scratch, look up your boilerplate and drop it in.)
  6. Bookmark it, either as a project bookmark or to the document you are editing. You can even drag it to the Bookmark toolbar icon to make it a project bookmark without any further ado.
  7. Drop onto any header bar to load it there. We’ll be talking about another thing you can do when dropping items on header bars with the Opt/Alt key later on. I’d mention it now, but no spoilers!
  8. Drop on the Quick Ref icon in the toolbar to load it as Quick Reference window. (This one doesn’t have an arrow.)

You may also note, if you squint at screenshots like I do, that we don’t stop at titles. Nearly the entire project is scoured for the text you typed in, so if you don’t quite remember the name of a thing, you might still find it via a snippet of text, or a note you jotted down on an index card. If all else fails you can click the “Full Project Search” button at the bottom, and witness the firepower of this fully armed and operational battle… wait, that’s the wrong speech.

Keeping Tabs Without the Clutter

As we looked at other similar tools, like Safari’s URL bar, we noticed more was being done with them than purely giving you a place to type or reference which site you’re on:

We liked the way Safari drew progress bars enough to use the idea for showing your overall progress on the draft target, along with your daily session target. So not only does Quick Search, well, search, it also functions as an embedded and steady monitor of your writing progress (should you set goals). The design fulfils a longstanding request we’ve had to embed this information somewhere readily available in the main window. Now instead of having to leave that Project Targets panel open all day, you can keep an eye on how the word counts are coming along with a low-key progress bar, right above where you type.[1]

You can also mouse over the tool to get a numerical read-out of the draft and session word count, and leave the mouse there to keep that information up instead of the name of the thing you’re editing.

Keep track of how far youve come with a glance.
Keep track of how far you’ve come with a glance.

Don’t worry, if you’d rather be kept in the dark while you write, you can turn this display off in settings. And you can change the colours too. This is Scrivener after all.

All told Quick Search (and Writing Progress) is a simple tool, but with enough flexibility to it that it has rapidly became an indispensable ingredient in how I locate, organise, compose and assemble text on the fly. And it is just one of the many ways we’ve thought about navigation and workflow in Scrivener. We’ll have more to discuss along those lines in a future article.


  1. The floating window is still there if you want it, and remains what you’ll use to set targets and thus activate this part of the feature.  ↩

10 thoughts on “Here, There and Everywhere”

  1. This is fantastic! Can’t wait.

    When you open a search result, will it jump to the exact spot in the document where the search term was found? Previous versions have required scanning the whole thing for a highlighted word, or opening up a separate search box, which was pretty tedious.

    Also, how does find and replace fit in?

    Will some of this make its way to iOS too?

    Thank you!

  2. That’s a good question to a point I did not cover. As noted above there are three different groups that matching can be done against: titles, synopsis and text. Depending on which result you click on, the behaviour changes. If you click on a title or synopsis match you’re navigated to that item normally—just as if you clicked on it in the binder. A corkboard/outliner/whatever will load if the match is a group; the session, in terms of last cursor position/selection will be restored in text files.

    If you click on a text result from the lower third of this search result list, then indeed you will be taken to the first match found in the document. And just like when using regular project search, the Find & Replace panel will be preloaded with the term you searched for, meaning Cmd-G and Cmd-Shift-G can be used to walk through additional matches.

    I believe that also indirectly answers your question regarding project search. It has always worked that way with standard project search—there has never been a need to manually scroll or bring up the Find panel (though you can, if you don’t like shortcuts).

    Also, how does find and replace fit in?

    Not sure what you mean by that. This is a quick navigation tool for getting to things by bits of identifying text. It’s not really a part of the search and replace ecosystem. Again the comparison to Spotlight is perhaps apt: you wouldn’t use Spotlight to search and replace. You use it to get to thing you want to search and replace within.

    Will some of this make its way to iOS too?

    It already has a simple global search mechanism. Scroll up past the top of the binder/outline list to bring up the search tool.

  3. This is loosely related to searching, but I’m wondering if there has been any change to auto-completion list behaviour.

    Specifically, in S3 will we have access to auto-completion when entering custom metadata?

    This would really help keep data entry consistent when synching with other programs such as Aeon Timeline.

  4. Custom text fields are still simple plain-text fields, not capable of tapping into the full text engine—which includes auto-completes.

  5. Simply more of the best, most innovative features out there for any writing software! Hurry up and get here already, Scrivener 3!

  6. Sounds great! On a similar note, is it possible that we may be able to use the search bar to browse online databases/search engines of our choice in the future?

  7. You’d still have to use Spotlight/Google/Cortana/Siri now and then, I’m afraid. We aren’t aiming to replace search engines in general, just how to get around inside of one’s project more swiftly. That it can search is secondary to that. :D

  8. I’ve been using the beta exclusively for the last six months and I’d never really explored the search bar… I will be in future — it looks very useful and of course very well thought out (as usual, of course).

    BTW, the shortcut is actually Ctl-opt-G, not Ctl-cmd-g — or it is in my version, anyway…

    Thanks again.

  9. Thanks! I’ve fixed the article’s mention of the shortcut. I do use the default, it just didn’t type out that way. :)

  10. This is a lovely addition to the flexibility of the Scrivener UI!

    One thing that would be a nice extension to this search list is something that was first pioneered by quicksilver / launchbar and has slowly made its way into more programs.

    Probably the best example is the wonderful “Sublime Text” professional text editor. It has a “Find anything” search, and you can use it to either search text/functions within a project like Scrivener 3, but also search for any commands / functions / tools / preferences. This makes it much faster than the GUI, yet more easy to remember than 1000 cryptic key bindings! Something like ⌘⇧? (which only searches menu entries) but built into the same interface.

Leave a Reply