A collection of time-saving and life-enhancing (ahem) bookmarklets. These bookmarklets are used for various purposes, but they all share the same goal: make web browsing and development easier and more efficient. I like giving my bookmarklets keywords so I can use my address bar as a command line. (If you speak Dutch, check out this presentation from 2011: http://kak.be/phl.) The bookmarklets are stored here as separate script files. You can copy and paste them into your bookmarks manager, or import them wholesale using the generated `bookmarks.html` file. Feel free to fork and create pull requests: http://kak.be/bookmarklets See COPYING for licence details. Or “license details”, if you are so inclined. These bookmarks were exported on Sat, 2024-11-23 12:25:21 +0100.
These are the bookmarklets I keep on the bookmarklets toolbar for quick access with the mouse. For instance, when browsing a web comic, it is easier to keep the cursor positioned over the "Next »" and just keep clicking it, rather than typing "next<Enter>" every time. (Or looking for the "Next" link on the web page itself.)
Make a page more readable by disabling all page styling and applying a bare minimum of our own. Go to the first thing that looks like the start of the actual content so no time is wasted scrolling past initial navigation etc.
Go to the previous page. To do so, this bookmarklet will look: - for <link rel="prev"> or <a rel="prev"> - for links whose text contains "Previous", ">>", etc. e.g. <a href="/bla">Previous</a> - for links whose (or their parents') ID or class contains "prev" - at the URL to see if there is a date, and increases that - at the URL to see if there is a number, and increases that - for links whose previous sibling's text contains "Previous", ">>", etc. e.g. « <a href="/bla">Whatever</a>
Go to the next page. To do so, this bookmarklet will look: - for <link rel="next"> or <a rel="next"> - for links whose text contains "Next", ">>", etc. e.g. <a href="/bla">Next</a> - for links whose (or their parents') ID or class contains "next" - at the URL to see if there is a date, and increases that - at the URL to see if there is a number, and increases that - for links whose next sibling's text contains "Next", ">>", etc. e.g. <a href="/bla">Whatever</a> »
Speed up the video and audio playback rate, starting from 10x back to 1x by executing this bookmarklet multiple times. Executing it once more after the normal speed will restart the cycle from the maximum speed again.
Remove analytics and tracking parameters such as Google Analytics’ “utm_*” and Facebook’s “fbclid” from the current document location (URI/URL) and from the links on the page. It does not reload the page or its frames.
Close the cookies/tracking/personalization permission dialog rejecting all non-essential cookies and objecting to all legitimate uses.
Remove all the IFRAMEs that are off-site or do not have a “src” attribute. These are typically used for ads and unwanted external content. navigation etc. IFRAMEs without a “src” attribute are also used for sandboxing untrusted content, e.g. on mailinator.com, but I have not yet found a way to distinguish between src-less IFRAMEs for ads and src-less IFRAMEs for “regular” content. Maybe try to guess based on the dimensions? Meh.
Tweak the page's content.
Set the IMG@title to the IMG@alt attribute. If the image already has a title attribute, separate the title and alt text with a blank line.
Try to color the cells of comparison tables based on their contents.
Speed up the video and audio playback rate, starting from 10x back to 1x by executing this bookmarklet multiple times. Executing it once more after the normal speed will restart the cycle from the maximum speed again.
Free the VIDEO elements: get rid of overlays, and enable the native controls. Useful on https://www.instagram.com/ where the stupid overlays prevent showing the controls and triggering the context menu, so you don’t know how long the video will take and can't play the video in full screen mode.
Load the full-size versions of resized images based on their "src" attribute, or their containing link's "href" attribute. Also, make IFRAMEs take up the entire width of their offset parent (useful for embedded videos and whatnot). Same goes for the VIDEO elements.
Jump N (default: 30) seconds in the audio and video elements on the page, or jump to a specific time. A positive number jumps forward, a negative number goes back in time. By starting the time with `to `, you can jump to that specific time, e.g. `jump to 35s`. You can also use other units: `h` for hours, and `m` for days. `s` for seconds is implied.
Close the cookies/tracking/personalization permission dialog rejecting all non-essential cookies and objecting to all legitimate uses.
Make a page more readable by disabling all page styling and applying a bare minimum of our own. Go to the first thing that looks like the start of the actual content so no time is wasted scrolling past initial navigation etc.
Remove all the IFRAMEs that are off-site or do not have a “src” attribute. These are typically used for ads and unwanted external content. navigation etc. IFRAMEs without a “src” attribute are also used for sandboxing untrusted content, e.g. on mailinator.com, but I have not yet found a way to distinguish between src-less IFRAMEs for ads and src-less IFRAMEs for “regular” content. Maybe try to guess based on the dimensions? Meh.
Get rid of full-page overlays.
Allow sorting tables from their headers. This is not meant to be a super intelligent sorting algorithm for all kinds of content. (For that, use something like the jQuery tablesorter plugin: https://mottie.github.io/tablesorter/. Rather, it is smart enough to sort strings in a natural fashion. Examples: - “foo1” comes before “FOO002” because it is case-insensitive and the numbers are sorted numerically, not orthographically. - “- EUR 99” comes before “EUR 1” because it considers the minus sign (or dash or hyphen) to be part of the number if there only a limited number of characters in between. - “https://www.example.com/” comes before “https://google.com/” because it ignores “www.”, and “http://www.example.com/zzz” comes before “https://example.com/aaa”, because “http://” comes before “https://”. - “31 Dec 2019” comes before “1 Apr 2020” because parsable dates are sorted chronologically.
Change the video and audio speed (playback rate).
Tools to help development.
Add the specified CSS to the current document.
Convert plain text to Base64 and back. It determines which conversion to do.
Dump the generated HTML of the current page as a plain-text document in a new tab or window.
Render the specified or selected text as HTML.
Show the length of the given string.
Use GCHQ’s CyberChef to magically determine what the input data is, e.g. a Base64-encoded string of gzipped plaintext, a JSON Web Token, … By default, this bookmarklet tells CyberChef to only go two levels deep to save time and energy. E.g. `magic H4sIAL8d32UAAyvJSFXIL8pMz8xLzFEoyEnMzCtJrSjRAwByt2jzFwAAAA` will use CyberChef to produce this recipe: 1) `From_Base64('A-Za-z0-9+/=',true,false)` 2) `Gunzip()` which leads to: `the original plaintext.`
Restore window.console to its native state.
Reload all external style sheets.
Render the specified or selected text as plain text.
Set the document title to the specified text.
Decode all %XX bytes into a (hopefully) readable string.
Change every character to its percent-encoded form (%XX), even if they are URL-safe. (This makes "URL-encode" a bit of a misnomer.) I use this mainly for pranks. If I want to reply with a link to Google Images, I will typically obfuscate the search term so as not to give it away immediately. For example: https://www.google.com/images?q=cool+story+bro https://www.google.com/images?q=%63%6F%6F%6C%20%73%74%6F%72%79%20%62%72%6F
Manipulate HTML forms.
Check whether password and probable password confirmation INPUTs have the same value.
Remove the "required" attribute all form elements, as well as other attributes like "min"/"max" or "maxlength" that restrict input.
Make all forms open in a new window/tab.
Enable autocompletion on all forms and elements.
Fill the text inputs with their label contents, their placeholders, titles, names or IDs. Fill other, more specialised inputs, with “sensible” defaults.
Make all forms use GET.
Make all forms use POST.
Convert password inputs to normal text inputs and back again.
Dictionaries, translators, …
Look up the specified or selected text in the Arch Chinese dictionary.
Look up the specified or selected text in the German Wiktionary.
Look up the specified or selected text on Dictionary.com.
Look up the specified or selected text in the English Wiktionary.
Look up the specified or selected text in the Spanish Wiktionary.
Look up the specified or selected text in the French Wiktionary.
Look up the specified or selected text in the Italian Wiktionary.
Look up the specified or selected text using Merriam-Webster.
Look up the specified or selected text in the Dutch Wiktionary.
Look up the specified or selected text in the Norwegian Wiktionary.
Look up the specified or selected text in the Oxford English dictionary.
Look up the specified or selected text in the Portuguese Wiktionary.
Look up the specified or selected text in the Russian Wiktionary.
Look up the specified or selected text in the Swedish Wiktionary.
Look up the specified or selected text on Thesaurus.com.
Look up the specified or selected text in the Urban Dictionary.
Look up the specified or selected text in the Dutch Van Dale dictionary.
Look up the specified or selected text in the Vietnamese Wiktionary.
Look up the specified or selected text in the “Flemish” dictionary.
Look up the specified or selected text in the (Mandarin) Chinese Wiktionary.
Translate the specified or selected text or URL to German. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the German version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to English. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the English version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Spanish. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Spanish version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to French. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the French version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Italian. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Italian version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Dutch. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Dutch version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Norwegian. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Norwegian version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Portuguese. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Portuguese version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Russian. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Russian version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Swedish. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Swedish version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to Vietnamese. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the Vietnamese version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Translate the specified or selected text or URL to (Mandarin) Chinese. It determines what and how to translate using the following logic: - If a parameter has been specified, translate that using Google Translate. - If text has been selected, translate that using Google Translate. - If the page appears to link to the (Mandarin) Chinese version of itself (e.g. in a language selector menu), follow that link. - If the page is accessible via HTTP(S), use its URL with Google Translate. - Otherwise, prompt the user for text to translate with Google Translate. Get the active text selection, diving into frames and text controls when necessary and possible.
Use Naver’s text-to-speech on the selected (Mandarin Chinese) text.
Get around easier.
Go back to the previous page, or, failing that, to the referring page.
Show a minimal HTML page linking to the current page.
Highlight all links and images with the given text in their URL.
Add the links' HREFs to their tooltips.
Go to the next page. To do so, this bookmarklet will look: - for <link rel="next"> or <a rel="next"> - for links whose text contains "Next", ">>", etc. e.g. <a href="/bla">Next</a> - for links whose (or their parents') ID or class contains "next" - at the URL to see if there is a date, and increases that - at the URL to see if there is a number, and increases that - for links whose next sibling's text contains "Next", ">>", etc. e.g. <a href="/bla">Whatever</a> »
Go to the previous page. To do so, this bookmarklet will look: - for <link rel="prev"> or <a rel="prev"> - for links whose text contains "Previous", ">>", etc. e.g. <a href="/bla">Previous</a> - for links whose (or their parents') ID or class contains "prev" - at the URL to see if there is a date, and increases that - at the URL to see if there is a number, and increases that - for links whose previous sibling's text contains "Previous", ">>", etc. e.g. « <a href="/bla">Whatever</a>
Go to the specified or selected URL using the current page as the referrer.
Replace all external links with new “A” elements with the same @href, handlers. Mainly useful for Google search result pages when trying to copy links directly off those pages, so Google does not obfuscate them with tracker garbage (which happens on click, before the link URL has been copied).
Remove the hash from the current page's URL, but keep the query string.
Remove the hash and query string from the current page's URL. This is the same as "rmqh".
Remove the query string from the current page's URL, but keep the hash.
Remove the query string and hash from the current page's URL. This is the same as "rmhq".
Go to the root directory, or the Nth directory starting from the root. For example, when you are on "https://www.example.com/foo/bar/baz": - executing "/" goes to "https://www.example.com/" - executing "/ 1" goes to "https://www.example.com/foo/" - executing "/ 2" goes to "https://www.example.com/foo/bar/" - executing "/ quux" goes to "https://www.example.com/quux"
Rewrite links to the Internet Archive Wayback Machine’s saved pages back to the original URIs.
Remove analytics and tracking parameters such as Google Analytics’ “utm_*” and Facebook’s “fbclid” from the current document location (URI/URL) and from the links on the page. It does not reload the page or its frames.
Go to the parent "directory". Note that this function tries to be somewhat smart about it: - If the path ends in a slash, go to the parent directory. - If the path looks like the default index, go to the parent directory and use the same filename. - For all other paths, go to the containing directory. For example: - "/foo/bar/baz/" becomes "/foo/bar/" - "/foo/bar/baz/index.html" becomes "/foo/bar/index.html" - "/foo/bar/baz" becomes "/foo/bar/" (which in turn will become "/foo/")
Search Bing Maps.
Search Google Maps for a route by car.
Search Google Maps for flights.
Search Google Maps.
Go to the specified (lat, lng) coordinates with Mapillary.
Search Google Maps for a bicycle route.
Search Google Maps for a route using public transit.
Search Google Maps for a walking route.
Go to the corresponding Wikimedia Commons page for a Wikipedia article.
Look up the specified or selected text in any Wikipedia. This does a Google "I'm feeling lucky" search for all wikipedia.org sites.
Look up the specified or selected text in the German Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the English Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Spanish Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the French Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Italian Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Dutch Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Norwegian Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Portuguese Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Russian Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Swedish Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the Vietnamese Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Look up the specified or selected text in the English Wikivoyage.
Look up the specified or selected text in the Chinese Wikipedia. Use `--dis` as the first parameter to show the disambiguation page, if any. E.g. `enw --dis 1` would open `1 (disambiguation)`, which is a lot faster to type then `enw 1 (disambiguation)`, and also works for the non-English Wikipedia instances, which use other words for “disambiguation”. Get the active text selection, diving into frames and text controls when necessary and possible.
Search DuckDuckGo for the given text, numbering the search result pages.
Search DuckDuckGo for images for the given text.
Search using Ecosia, for “A better planet with every search”.
Search using Ecosia Images, for “A better planet with every search”.
Search the international (English) Google for the given text, with a 100 results per SERP and without Instant Search.
View the Google cached text for the specified URL. Specify "html" as the first parameter to view the cached HTML.
Search Google Images, optionally limiting to certain sizes using: - "wallpaper" word to find images the size of your screen. - "640x480" to find images with exactly those dimensions - ">1600x1200" to find images approximately larger than 1600x1200 - ">4mp" to find images approximately larger than 4 megapixels (2272x1704)
Go to the first DuckDuckGo result ("I'm Feeling Ducky") for the given text.
Search the international (English) Google for the given text on the current site's domain, with a 100 results per SERP and without Instant Search.
Defaults to Ecosia Images (see `eimg`).
Search the current site for the given text using the site's own search form, if any. It first looks for an INPUT[type="search"]. If not found, it looks for typical values in the INPUT attributes like "name", "id", "class", … If it still could not find anything, it looks for those values in FORM attributes like "id", "class", "action", … If no search inputs were found, it quietly logs a message to the console.
Search images using the TinEye reverse image search.
Search Twitter for the specified text or URL.
Search Twitter for the specified user.
View the Internet Archive Wayback Machine's latest cache for the specified URL.
Search Yandex with its reverse image search.
Search YouTube for the specified or selected text, using Invidious (“an alternative front-end to YouTube”). If the text looks like a video ID, you are taken directly to the video. If you append a "!" to the video ID, it will be opened in an IFRAME, so you do not need to sign in for "restricted" videos.
Search YouTube for the specified or selected text inside “topic” videos, using Invidious (“an alternative front-end to YouTube”). “Topic” videos are the official channels for artists/bands/musicians and can be recognized by either “ - Topic” or “🎵” suffixed to the name. However, it is easier to search for the text “Provided to YouTube by”, which is at the start of the auto-generated description for music “videos”.
Might as well turn these into Greasemonkey scripts one day.
Utilities for “the social network for athletes”.
Convert pace (e.g. “4:38/km”) to speed (e.g. “12.95 km/h”) on a web page.
Search for a Strava activity.
Search for a Strava member (athlete).
Search for a Strava club.
Hide visual pollution from the Strava feed. “Pollution” is a highly subjective term, meaning “everything I do not care enough about to want to see featured in the feed”. That means things like very short rides (unless they have photos), short runs/hikes/walks, water sports and winter sports, Zwift sessions, people joining clubs or challenges, … On individual activity pages, hide segment efforts that are either too short or not “climby” enough.
Search for a Strava segment.
Expand the statistics on a Strava profile by adding average distance/elevation gain/speed per activity.
Search the Discogs master release for the given text. I prefer searching for the master record instead of a specific release, to get more “general” info.
Search Emojipedia for the given text or emoji.
Put a bookmarklet's code on GitHub in a TEXTAREA so it is easy to copy. I use this because selecting and copying bookmarklet code to put them in my Safari on iOS is a pain.
Search for a company number / VAT number in the Belgian company registry “Crossroads Bank for Enterprises”: https://kbopub.economie.fgov.be/ If the selected text or parameter does not look like a VAT number, look it up as the company name.
Improve the Triodos account statement print-out. This bookmarklets adds the account balance after each operation, which makes it easier to keep track of the balance throughout the year/month. It also darkens the odd row background so it stands out more when printing in black and white. (Remember to check the "Print background colours and images" box.)
Show the top posts for the current/selected subreddit. I hardly ever use Reddit, but when I do, I’m most likely looking at a humour-related subreddit to have a laugh, so “just play the hits, dammit!”.
Show the currently playing track in the window/tab title on SomaFM Player pages like https://somafm.com/player/#/now-playing/cliqhop