This is something that I have done a bit of here and there—not to the scale that you are referring to, but I don’t believe that these methods would suffer from scale, and if anything they would potentially even benefit from it, as Scrivener itself can.
The main issue I can see with this approach is that you are working with an existing data set, rather than gradually building one from scratch. The method I describe here works better with the latter, for reasons that should become obvious. But it may be the idea is worth it enough to at least give it a try, and gradually migrate into it as you go, rather than seeing it purely in terms of large up-front manual labour.
Binder Based Bookmarks
The fundamental ingredients to organising bookmarks in Scrivener are very simple:
- Create an entry in the binder/corkboard/outliner naming it for how you would want to recall the bookmark. I do often like to use the corkboard for this because of how easy it is to go right into annotation in the synopsis field, if needed. At this point, I can drag and drop the URL from the browser into the Document Bookmarks list, or use copy and paste, whichever is most convenient. I don’t worry too much about the name of the bookmark, because it almost doesn’t matter. All of its identity is front-loaded into the binder item.
- As a rule of thumb, one card per bookmark. The exceptions to this prompt us to explore some interesting ideas in the clustering of closely related pages that are meant to work together as a unit toward some purpose (research, posting, etc.). What I strive for here is to make sure that none of the bookmarks in a unit are something I would want to find individually, that I would always be more interested in the cluster as a whole when I think of it. A good example of that might be two bookmarks to this forum: one to the search page and a second to the Latest feed page. These might be two activities you wish to perform together frequently enough, and having them in separate cards would just increase the overhead for no reason other than dogma.
There is sometimes a resistance to the concept of using binder items as entries in a list, as some people prefer to think of them as being purely document sized constructs. For this approach it is important to think of items as lists, as an outliner construct just like in one’s browser. You don’t even have to type a single thing into the main editor—it can exist for solely the purpose of holding that one bookmark and nothing else, and there is nothing wrong with that.
The basics are simple, but where we go from there than scale to a level of complexity we require. Once we liberate large lists of bookmarks from being flat lists within the bookmark table of some item, where we can go from there frankly involves the rest of Scrivener, and all of its flexibility in combining different techniques for organising items. Bookmarks are now effectively binder items, which means all of the goodies you get for them, such as keywords, custom metadata, cross-references, collections, ability to link to them by [[name]]… the possibilities are endless.
Embellishing on the Idea
If you’re like me, you’ll probably want to create a “type” of document for these. It is the kind of thing that takes a few minutes to set up, and you may never need it—but if you do, it’s a lot more of a hassle to not have them. Here’s how I do it:
Project ▸ Project Settings..., Section Types, add a “Bookmark” type, and click OK.
Go into the project’s Document Template folder (setting one up if necessary), and create an item called “Bookmark”. Set its section type to “Bookmark”.
If you’re wondering why we would use this particular feature for something that won’t ever compile, consider that you can set your Project Search scope to section type to isolate all bookmarks in the project, and then in the Outliner/Corkboard, use
⌘F to filter by text.
Give it a custom icon, like maybe one of the Flag or Way-Station icons.
For any folder that is meant to primarily or solely organise bookmark entries, select it and use the
Documents ▸ Default Template for Subdocuments submenu to select the template you’ve created.
And of course you can create derivatives of this base document template for larger batches. If for example you are creating a bunch of bookmarks about one specific topic, you can pre-assign a Keyword to the template so that you can avoid having to do that mindlessly, over and over.
Now your bookmark entries have a distinctive look in the binder, which will help you spot them in general searches, and as well they can be searched for, precisely for what they are.
Going from huge lists in the Bookmarks pane to an outline-based approach will take a little work, but it shouldn’t be too bad. Consider this:
- Open the document containing a list of bookmarks you want to migrate to individual outline entries, as a Quick Reference panel.
- In there, hit
⌃⌥⌘N to open its bookmarks list as a split. I’d resize my project window so make room for it and set this list to the side, and make the bookmark list the dominate split.
- Select the first bookmark in the list and press
⌘C to copy it.
- Navigate to the area in your binder where you wish to create bookmark entries, set the view to Outliner or Corkboard, and hit Return to create a new item.
⌘V to paste—since we’re pasting into a plain-text field, all we get is the descriptive name, which is what we want.
- Drag the bookmark from the QR panel into the item’s Document Bookmarks list in the inspector.
⌘delete in the QR panel to remove the migrated bookmark from the list.
The first thing to get out of the way is the shortcut. There isn’t going to be anything quite like a direct shortcut that loads a bookmark from a binder item, because each binder item can have any number of bookmarks associated with it. That said, because Scrivener is very keyboard shortcut friendly, the barrier is thin enough that this may not in practice be a big issue. Here is what it takes for me, at a minimum, to load a bookmark from a binder item click:
↩. Now I have a habit of hitting the first shortcut twice, because that ensures the focus ends up in the bookmark list, even if the inspector is closed or currently looking at another tab. This isn’t a huge deal because your fingers are already there—hitting ‘N’ twice in quick succession is hardly worth mention as an efficiency drain. If an item has multiple bookmarks, you may need to arrow between them to select the right one—but something worth mention here is that
⌘A to select them all before pressing Return can also be useful, if you want to load a cluster of related bookmarks.
Browsers vs Scrivener
For my purposes, this approach often exceeds what I can even do in a browser. The advantage of using a browser to organise your bookmarks is chiefly in the realm of integration. It would be difficult to improve on that aspect given how browser bookmarks are embedded right in the mechanism used to view pages, and are often searchable from the URL bar, etc. However where most browsers fall a bit flat is in the realm of organisation. This depends on the browser of course, but for example in Firefox you can’t even annotate the bookmark as they removed the description field some time ago. For the most part your primary and sole mechanism for organisation are folders with a little tagging as spice.
Using Scrivener to organise your bookmarks has immediate and obvious advantages on the organisational front. Browsers have nothing on the level of detail you can use to annotate and categorise your bookmarks, by simple virtue of how deep its toolset is for organising binder items overall. And given how easy it is to drag elements between projects, they can also be very portable. Where it is lacking is of course in integration—but for how I work, this is not a major downside.