5 ms·
I still miss a lot of extensions. One of my favourites was pwgen¹. I missed it so much I decided to write my own², but writing it I found out that the WebExtens
by y0ghur7_xxx 9y ago
I still miss a lot of extensions. One of my favourites was pwgen¹. I missed it so much I decided to write my own², but writing it I found out that the WebExtensions api is still a big work in progress.
For example writing some text to the clipboard seems to be a basic thing a web extension should be able to do. BUT to do it, you have to create a textbox, set its value to something, then programmatically select the text, and then invoke document.execCommand("Copy") to copy the text. Come on! Why not something like browser.clipboard.copy('some text')?
And it does not even always work like expected³.
I hope the next ff versions will improve on this. Extensions are what makes the browser your own.
¹https://addons.mozilla.org/en-US/firefox/addon/pwgen-password-generator/ https://addons.mozilla.org/en-US/firefox/addon/pwgen-passwor...
²https://addons.mozilla.org/en-US/firefox/addon/pwgen-reloaded/ https://addons.mozilla.org/en-US/firefox/addon/pwgen-reloade...
³https://bugzilla.mozilla.org/show_bug.cgi?id=1344410 https://bugzilla.mozilla.org/show_bug.cgi?id=1344410
- zamber 9y agoClipboard and selection handling is a massive PITA in webdev. On the flipside it "enables" such creative solutions like that pesky text selection bubble on medium.
- cbcoutinho 9y agoOh man, I hate that thing on Medium so much. I'm slightly fidgety so sometimes I double click the text I'm reading. I didn't even realize how much I did it until I visited Medium and almost tweeted some random paragraph I was reading. I would love to turn that crap off.
- stinkytaco 9y agoCould you block javascript on that page?
- cesnja 9y agoYes, but you probably couldn't read the post then :)
- yk 9y agoMedium works nicely without JS. (Granted there are a few sites that rely on JS to display text, but in my experience there are a lot more that do something stupid, like breaking copying or breaking search than those.) Also NoScript reliably breaks autoplay videos, as I found out when the webextension version needed a few days until the release.
- zamber 9y agoI found custom-blocking with *block extensions more productive on JS heavy sites. https://news.ycombinator.com/item?id=15770228 https://news.ycombinator.com/item?id=15770228
- soperj 9y agoI like the light on dark better so i double click all the text i'm reading. Also helps keep your line. Might not be a fidget thing.
- cbcoutinho 9y agoYea you're probably right, reading that way is also easier to focus in on the text
- setr 9y agoIts also just kinda fun
- ripdog 9y agoIf you like light on dark, why not turn on reader mode? It has a light on dark scheme.
- taspeotis 9y agohttps://blogs.msdn.microsoft.com/oldnewthing/20150528-00/?p=45014 https://blogs.msdn.microsoft.com/oldnewthing/20150528-00/?p=...
- cbcoutinho 9y agoIncredible, I learned something about myself today.
- zamber 9y agoYou can always block it with *block extensions: ##.highlightMenu For Stylish and other CSS injectors: .highlightMenu { display:none; }
- emmelaich 9y agoI use this bit of javascript I found via HN. Just bookmark it. (paste in as the url) You can always add your own salt/tweaks too. javascript:(function () { var pw = ''; var array = new Uint8Array(12); window.crypto.getRandomValues(array); for (var i = 0; i < 12; i++) { pw += ('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_')[array[i]&63]; } prompt('Random password:', pw); })()
- bhhaskin 9y agoYou should checkout pass https://www.passwordstore.org/ https://www.passwordstore.org/
- craftyguy 9y agoThis is what I've used for quite a while. I used to have a browser extension to interface with it, now I just use rofi-pass with a keybinding to bring it up in any app, search for a password, and put it on my clipboard. No auto fill, but I never was comfortable with browser password managers throwing credentials into any arbitrary form box (visible or not..) that 'looked' like a password box.