A quick function to replace the selected text (in Firefox). Accepts:
- string to replace the selection, or
- callback function that takes the selected text and returns a string to replace the selection
function replaceSelection(t) { if (typeof t === 'function') { t = t(window.getSelection().toString()); } var range = window.getSelection().getRangeAt(0); range.deleteContents(); range.insertNode(document.createTextNode(t)); }
Usage:
1. Replace selected text with "dude"
replaceSelection('dude');
2. Uppercase the selected text
replaceSelection(function(s){return s.toUpperCase()});
3. Lowercase the selected text
replaceSelection(function(s){return s.toLowerCase()});
Luckily I'm so close (and yet so far) to finishing this book, otherwise I won't be able to help myself but create a whole toolbar of bookmarklets for "power" Google doc users...
Comments? Feedback? Find me on Twitter, Mastodon, Bluesky, LinkedIn, Threads