Greasemonkey Scripts
Collection of Greasemonkey scripts that I wrote. I have a userscripts.org account, but this page will remain updated more often. Have fun!
I just finished a general cleanup and standardization of name/namespaces for all my old scripts. If you have an older version of a script (from before November 2008), and install a newer one, you may run into problems. See my notes below for more information.
You can find me on my journal or on my twitter. Any questions, comments, problems, suggestions for existing scripts, wishes for new scripts, or cookies can go to my dreamwidth.org address (afuna@) -- thanks!
Dreamwidth Development
- Dreamwidth Random Bug Picker
Click a link to pick a random bug from a list of bugs. If you like it, you can assign it to yourself (see next script).
- Dreamwidth Bug Grabber
Assign a bug to you in Dreamwidth's bugzilla installation. You must be logged on for this to work.
- Dreamwidth Bug Resolver
Mark a bug as resolved if it's open; reopen it if it is resolved.
- Dreamwidth Patch Upload Defaults
When uploading a file, automatically mark it as a patch, commit? and review?
Dreamwidth
- Delete Multiple Subscriptions
Select multiple subscriptions and hit "Delete"; don't reload the page each time you click a trash can. (Dreamwidth-only; obsolete on LJ)
Dreamwidth and LiveJournal
Due to divergence in the code base, most scripts may only work with one site. I haven't looked at them all, but if you have one script you'd like me to look at to see if it would be feasible, I'd be happy to port over scripts by request.
LiveJournal
- LiveJournal Default Memory Security
Set a default initial security when creating new memories.
- LiveJournal Gmail Userpic-chooser
Select the userpic you want to use when when replying using the form in a comment notification email.
This is just the seed of an idea... very much needs work.
- LiveJournal Inbox cut text
Show lj-cut text when viewing messages in the inbox.
Still very rough, too. Probably buggy, if it meets unexpected input (e.g., polls in an entry, nested divs etc).
I highly recommend this script, instead, which emulates actual lj-cuts in the inbox!
- LiveJournal Inbox Sidebar => Topbar
Move the Inbox sidebar to the top, to leave more horizontal room for the messages. Particularly useful if you're using Vertigo or Dystopia. Optionally, use it along with this CSS for Stylish in order to prevent flickering.
- LiveJournal Metadata (Subscriptions and Inbox)
Keep track of additional information for notifications in LiveJournal's tracking system. You can display the entry subject for comment notifications in your inbox and keep track of most recent subscription activity.
- LiveJournal Pin Flagged Inbox Messages
Pin flagged messages in your LJ message center to prevent them from being selected by the "select all" checkbox. For when you're in a deleting frenzy but don't want to delete important messages.
This has no effect on the "delete all" button.
- LiveJournal Quick Track Entries
Track entries with one click. This script lets you select notification defaults and track entries without opening a new page. I find it especially useful when tracking a bunch of entries in one go, e.g., when browsing a community or reading my friends page. You can select defaults (notifications via e-mail/IM) by right-clicking on the monkey => User Script Commands
- LiveJournal Rage Goggles
Inspired by Google's Mail Goggles, this script makes you solve a math problem, before you post that comment you know you're going to regret later. "Rage-goggled" ljuser-head shows up in the comment form to indicate that the script is active. Click on it for options: you can whitelist a journal temporarily or permanently.
- LiveJournal Search Defaults
Set your default type for the search dropdown on site scheme pages.
- LiveJournal Taglister
Clickable and autocomplete-able list of tags when updating and editing your journal.
- LiveJournal Track from Navbar
Adds a convenience link to the navbar, pointing to the track this journal's entries page.
LJ and DW Support
Scripts for the Support board on LiveJournal and Dreamwidth. Some of these may work on other sites, if you edit the includes plus any URLs inside the scripts that point to pages on livejournal.com. But only the ones labelled "Support:" work on both Dreamwidth and LiveJournal. The ones labelled "LJ Support: " will need updating.
- Support: Admin console for requests
Create an interface to the admin console which you can access from within a Support request.
- Support: Board Status Tracker
Keep track of the changes in the Support Board since your last visit.
- LJ Support: Bunnehed? BUNNEH
BUNNEH picture, for when you have been BUNNEHed
- Support: Category Detection
Looks for indications that a request should be moved to a particular category and lets you move it there by double-clicking.
The default filters detect SUP and spam requests; you can modify the filter list by clicking on the "Category detection" link in the request headers. The filters use regex, but if you are not familiar with regex, you can use simple strings like so:
term 1|term 2|term 3 - Support: Dropdown Thingum
Removes the "==>" from the category dropdown so that typing in the category name will select the category.
- LJ Support: Expand Community Name
Expands community names to link to their profiles when you type in
[!commname]Code adapted from Ciaran's FAQs by Number script - LJ Support: Filter tagged requests
Filter requests by tags; can choose to only show requests with certain tag(s), or to hide requests with certain tag(s).
- LJ Support: Imma gonna privplay
Visual indication and link to make it easier to privplay. Wrote this one because I kept forgetting which categories I had I2/I3/SH in, so I'd forget to privplay. And when I remembered to privplay, I'd forget to mark it as such or make it an IC.
In categories where you're an I3, the textarea shows up with an orange left border, and a link shows up beside the reply type dropdown. Clicking on that link automatically sets the reply type to IC, and puts a brief outline of a privplay IC in the textarea. If you want to edit the text, edit the source code directly. I'm too lazy to make an interface :P
- LJ Support: Request Translator
Translate any part of a Support request from Russian to English with one click.
- LJ Support: synedit, synmerge automator
Make certain aspects of the synedit and synmerge process more convenient. Final decision is still yours, of course!
I integrated it with the Admin Console for Requests script. If you are a Syn SH+ and have the admin console script installed, it will place the syn_* command in the console instead of as an IC.
- Support: YouReplied Breakdown
Breakdown of the types of requests in your youreplied filter.
- Support: Summary in the Title
Put the request summary in the title so that you can search for it in your browser history using Firefox's awesomebar
Others
- xkcd title-text display
Know how sometimes it can be frustrating to wait that splitsecond for the tooltip to display when you hover over the xkcd comic? Or how when it's too long, Firefox truncates the text? Went through that; wrote this script.
This displays the alt-text for xkcd comics below the comic on the xkcd site.
Troubleshooting
If you have an older version of the script, and you install a script from this page, you may find that you have two copies of the same script under slightly different names, which are both called on the same page causing wonky behavior, or else that your stored script preferences were not carried over.
If the first happens, just delete the older version. If the second happens, copy the preferences, and then delete the older version. Preferences are in about:config. Filter to "afuna", copy the old preferences to a new preference with the preference name in this format (note the double slash!):
greasemonkey.scriptvals.http://afunamatata.com/greasemonkey//scriptname.variablename
I'm really sorry for the inconvenience, but the mess the old scripts were in was driving me crazy! And so I promised myself that I would clean that up before I moved them to this new site.