This is not how userscripts should be done. But I didn’t expect that thing, which was started 6 month ago as simple function tool, will became a huge handyman (tbh, 20 small scripts is even worse). About 80% of everything here probably most of us want to see on Derpibooru without userscripts.
Get it there
GitHub
Most features requires YouBooru:Settings, which probably will work even if you don’t install it, but still:
GitHub
Works with YouBooru:Feeds:
Forum thread
Tweak CSP to make it work
Requires any of “monkey” plugins:
Greasemonkey Tampermonkey
Huge detailed and probably incomplete manual:
$Images and search related
$Custom tags aliases
Allows you to define custom tags which represents complex expression. Overrides normal tags. Replacing is recursive. Works only with normal search (not in watchlist, filters, tag editors). “Do not pare page name” option will show in page header actual search string (not what you entered), mostly only for debug purposes.
Requires YDB:Settings to configure, supports YDB:Feeds.
$Multiwatchlists
Each tag has option “As watchlist”. If checked, tag name will appears in dropdown for each normal tag and it will work as “Watch/Unwatch”. All tags in that tags expression will be separated by
||
. If tag expression was edited manually (not watch/unwatch) or checked “As watchlist”, all components will be checked for actual aliases and existence. For stability reasons do not manually edit more than 1 tag at once.
Requires YDB:Settings to configure, supports YDB:Feeds.
$YDB tags
Custom YDB tags from YDB:Feeds also supported.
__ydb_LastYears:X
— images uploaded at that day in past years.
:X
works as in
__ydb_DaysAgo
;
__ydb_LastYearsAlt:X
— same but uses “first_seen_at” instead of “created_at”.
:X
works as in
__ydb_DaysAgo
;
__ydb_Spoilered
— includes all your spoilered images;
__ydb_Unspoil
— metatag, all spoilers will be removed if tag exist in query;
__ydb_Yesterday
— uploaded yesterday;
__ydb_DaysAgo:X
— uploaded X days ago
For
__ydb_Unspoil
YDB:Settings is strongly recommended.
There is a dropdown for easy typing.
$@artist
Allows you to write
@artistname
instead of
artist:artistname
.
$Colored tags editor
Makes tags in fancy tag editor looks like… like tags… Pfft, just look at the screenshot. Character and episodes tags may be uncolored since it uses handcrafted database.
$Immediate image hiding
Replaces image with filler right in the moment when you clicked “Hide”.
Enabled by default, use YDB:Settings to disable, supports YDB:Feeds.
$Hiding downvote if upvoted
Hides “downvote” and “hide” buttons if you clicked “fave” or “upvote” and vice versa mostly to evade missclicking downvoting upvoted images. Keyboard shortcuts still works, though.
Disabled by default, use YDB:Settings to enable, supports YDB:Feeds.
$Galleries things
If you browse the gallery, you may instanly open it in search.
While in search, you may use gallery sorting (if it possible).
Also it’s the only way to add feed with gallery sorting.
$Similar images
Added ability to override site’s related images page with a bit rougher but limitless search expression.
Disabled by default, use YDB:Settings to enable.
$User related
$Showing all old names
In comment sections and forum post “AKA
old names” will appear even if 14 days of showing old name is expired. All data is collected by parsing “previously known as” appendix, and doesn’t backup cloudly even if you have installed YDB:Settings with this option enabled.
Cannot be disabled right now because it hardcoded into userbase thingie, used by some functions, and you probably don’t want some parts of data be lost by renaming.
$Highlighting uploader and artists in comments
In comment section uploader will be showed with “(OP)” and artists will have green background behind their name. Based on parsing artist tag info, parsing is limited by 5 unknown artists (uses userbase as cache).
Since 0.5.42 editors and since 0.5.43 also colorists highlighting with orange color.
$Personal scratchpads
Adds input area to profile page, just like in Discord. Content may be revealed by hovering profile link in comments/posts. No chars limit, just don’t put War and Peace here.
$Contact list
Replaces “Messages” link in dropdown profile menu with “Contacts” where … you can see your contacts. There is also a link in profile “Add to contacts”. Also shows first 100 chars from scratchpad (or until first linebreak).
$Cutting down obvious badges
If you see “Really classy artist” badge, “Artist” badge will give you no additional info, won’t it? Screenshots before and after.
2/3 enabled by default (doesn’t hide same level donation based badges), use YDB:Settings to configure.
$Site UI related
$Site notifies
Notifies as news may be closed. There is also an option to close all notifies automatically (you will be warned). If you accidentally closed one you intrested, there is “Reset” option. Check it once and save.
Requires YDB:Settings to configure.
$Notifications
Allows to immediately read all notification or all notifications about merging images. No idea, how it will work with pagination.
$Link fixes in profile art blocks
Recent Artwork, Uploads, Favourites and Watched (from main page) will have correct search parameter (while normal DB lacks in it) allows you navigate directly.
$Expanding profile art blocks
Because orignal ones feel weird because of using ~70-80% of width.
$Expanding search fields
Making them multiline. Top one expands on hover.
Enabled by default, use YDB:Settings to disable, use
SSF to make top search more powerful.
$Reverting back page headers
Just because I don’t like how new one handles long text.
Enabled by default, use YDB:Settings to disable.
$Fixing comments link
Because right now #comments link goes without search parameters.
$Custom spoilers
Allows to determine custom spoiler images. See
#post_3824607 for details.
$Shortcuts
Allows to determine custom dropdown menu in subheader.
$Comments and Forum related
$Clickable spoilers
You probably want to know, why each underlined text starts with $.
Works also with [spoiler] tag.
$Shrinking long posts and comments
If post is longer than you specified, it will be cut down. If you want to disable it, just write absurdly large value in settings.
Enabled by default, use YDB:Settings to configure.
$Clickable links
$Same domain links
All links, goes to different derpi domain, now will lead you to current one. Just like “Always Your Derpibooru” but in preventing manner (since my ISP blocks 50% domains of booru and script cannot load).
$Outside links
All third party links now opens in new tab. There is “nofollow noreferrer” parameter, don’t worry.
$Greentext
>User was banned for adding that feature
Disabled by default, use YDB:Settings to enable.