w4tchdoge's AO3 Bookmark Maker
Modified/Forked from Ellililunch AO3 Bookmark Maker.
Userscript that automatically adds the details of a work to your bookmark notes for archival purposes. I've made the script highly configurable with (hopefully) clear instructions, but out-of-the-box functionality should be good enough if you don't want to bother with the configuration.
IMPORTANT NOTES:
- The script only automatically adds the bookmark text if you are making the bookmark on a work/series page with a summary element. For series' this is every series page (series summaries are handled differently to work summaries). For work's this is either the first chapter of a multi-chapter work, an entire work page, or the only chapter of a single chapter work.
- This userscript relies heavily on template literals (W3Schools, MDN), which are supported in the latest versions of all modern mainstream browsers.[1][2] If you are using a niche browser or you want to be certain that your browser supports template literals, please visit this StackOverflow answer and run the code snippet. It should return a
true
if template literals are supported.
Apart from the editing of what preset you're using/the actual contents of the autogenerated bookmark, all major userscript settings have been moved to a menu on the header menu of your preferences page.

An explanation of all the settings is in the userscript's code.
Demo/Example Images
Demo/Example images show the output if Preset 1 (the default preset) is being used.
Everything collapsed:

Details uncollapsed:

Details & summary uncollapsed:

Details & relationships uncollapsed:

Details & summary & relationships uncollapsed:

Changelog
2.2.0
2.1.2
- Replace the bottom entire work button with a summary page button that works better on large works.
2.1.1
- Adjusted script execution condition to allow for works with no summary.
2.1.0
- Tweaked the bookmarking process which should hopefully make it easier to configure. Also rewrote some of the code to hopefully make it better perfoming.
2.0.9
2.0.8
- Make some if statements in the localStorage section more readable.
2.0.7
- Fix bottomEntireWork not functioning because of the placement of the code responsible for putting the button there being inside an if statement that only executes on specific pages.
2.0.6
- Fixing assignment of localStorage values to variables in current script execution.
2.0.5
- Fixing general localStorage stuff.
2.0.4
- More summary related fixes.
2.0.3
- Fix the script replacing an existing summary in the bookmark notes with 'undefined'.
2.0.2
- Alert the user that their input for a new divider value has been accepted + Minor styling changes in the setting dropdown.
2.0.1
- Fix if statements that used variables that needed to be true or false by using a function to convert the 'true' & 'false' strings from localStorage to booleans.
2.0.0
- Implemented a settings menu & localStorage of the settings set in the settings menu. Presets must still be set via editing the script.
1.0.0
- Initial publishing of the userscript to Greasy Fork.