Short Url: http://caseywatts.com/chromeextensionworkshop
Alternate Short Url: http://tinyurl.com/blatant-panda
Other gists & tricks: http://caseywatts.com/gists-and-tricks
- Inspiration - Some Chrome Extensions to Inspire You
Short Url: http://caseywatts.com/chromeextensionworkshop
Alternate Short Url: http://tinyurl.com/blatant-panda
Other gists & tricks: http://caseywatts.com/gists-and-tricks
This is one chapter of my "Chrome Extension Workshops" tutorial, see the rest here: https://gist.github.com/caseywatts/8eec8ff974dee9f3b247
Unrelated update: my book is out! Debugging Your Brain is an applied psychology / self-help book
I'm feeling very clever. I've got this sweet line of javascript that replaces "cloud" with "butt". My mom would LOVE this, but she doesn't computer very well. I'm afraid to show her the Developer Console and have her type/paste this in. But she IS pretty good at bookmarks, she knows just how to click those!
A bookmark normally takes you to a new web page. A bookmarklet is a bookmark that runs javascript on the current page instead of taking you to a new page. To declare that it is a bookmarklet, the "location" it points to starts with javascript:.
No, seriously, don't. You're probably reading this because you've asked what VPN service to use, and this is the answer.
Note: The content in this post does not apply to using VPN for their intended purpose; that is, as a virtual private (internal) network. It only applies to using it as a glorified proxy, which is what every third-party "VPN provider" does.
| ʘ‿ʘ | |
| Innocent face | |
| ಠ_ಠ | |
| Reddit disapproval face | |
| (╯°□°)╯︵ ┻━┻ | |
| Table Flip / Flipping Table | |
| ┬─┬ ノ( ゜-゜ノ) |
| function onOpen() { | |
| SpreadsheetApp.getUi().createAddonMenu().addItem('Upload', 'upload').addToUi(); | |
| } | |
| function upload() { | |
| SpreadsheetApp.getUi().showModalDialog(HtmlService.createHtmlOutput( | |
| '<form><input type="file" name="file" onchange="var reader = new FileReader(); reader.onloadend = (e) => google.script.run.withSuccessHandler(google.script.host.close).importICS(e.target.result); reader.readAsText(this.parentNode.file.files[0]);"></form>' | |
| ), 'Select .ics file'); | |
| } |