Show HN: YouTube Shorts Redirector
github.com
github.com
This way, you won't get the dreaded doomscroll interface, and you can also scrub through the video!
Thanks to others who pointed out that uBlock origin can permanently disable (as opposed to being annoyed every 30 days) shorts on YT, instant quality of life improvement.
Oh, not at all. It's just that there's no in-app volume control, so they depend entirely on the phone's media volume. This is common in most mobile applications, I'd say. So all those people glued to their blaring phones are morons, to put it plainly.
No fix for those unless it can be done in my opnsense router, but then that would break everything in the house when I am the only one who really hates shorts.
And to think I pay for yt. And let's not even get started about the blank home screen for the crime of turning off history.
Just a guess from Youtube's shorts not having it. I've never used it.
The inability of tech companies to accept that no means no, and not "bother me later" is a dark pattern that I've noticed more and more lately.
Do you want to enable push notifications?
[Yes please] [Later]
How about [No]? Just add a note that I can always enable this later if I want to, but don't jerk around with this nudging making me feel I'm just postponing this choice.IMO, something should have been done when A/B tests became normal(mid to late 2000s). That ship had long long sailed, but I believe that alone require independent ethics board if it is happening outside the Web. It should not be something easily handled with a blanket waiver in shrinkwrap EULA.
Or I should say, I nearly wrote a userscript to do this, it mostly works but I still find myself manually changing urls. I am not good with JS.
// ==UserScript==
// @name Youtube shorts redirect
// @namespace http://tampermonkey.net/
// @version 0.3
// @description Youtube shorts > watch redirect
// @author
// @match *://*.youtube.com/*
// @icon https://www.google.com/s2/favicons?domain=youtube.com
// @grant none
// @run-at document-start
// @license GNU GPLv2
// ==/UserScript==
var oldHref = document.location.href;
if (window.location.href.indexOf('youtube.com/shorts') > -1) {
window.location.replace(window.location.toString().replace('/shorts/', '/watch?v='));
}
window.onload = function() {
var bodyList = document.querySelector("body")
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (oldHref != document.location.href) {
oldHref = document.location.href;
console.log('location changed!');
if (window.location.href.indexOf('youtube.com/shorts') > -1) {
window.location.replace(window.location.toString().replace('/shorts/', '/watch?v='));
}
}
});
});
var config = {
childList: true,
subtree: true
};
observer.observe(bodyList, config);
}; // ==UserScript==
// @name eat my shorts
// @namespace http://tampermonkey.net/
// @version 0.1
// @description change links to youtube shorts to reguler site
// @author jrs
// @match https://www.youtube.com/*
// @icon none
// @grant none
// ==/UserScript==
(function() {
'use strict';
function eat_shorts() {
const root = document;
const shorts_re = /^\/shorts\/(.*)/;
const ae = root.getElementsByTagName("a");
for (var i = 0; i < ae.length; i++) {
const this_a = ae[i];
const short_match = shorts_re.exec(this_a.getAttribute("href") );
if (short_match) {
this_a.setAttribute("href", "/v/" + short_match[1]);
}
}
}
const config = {
attributes: false,
childList: true,
subtree: true
}
//timer resets every time the returned function is called
function make_reset_timer(cb, timeout) {
var timer = setTimeout(cb, timeout);
function reset_timer(mutation_list, observer) {
clearTimeout(timer);
timer = setTimeout(cb, timeout);
}
return reset_timer;
}
const short_observer = new MutationObserver(make_reset_timer(eat_shorts, 10));
short_observer.observe(document, config);
})();There's also Redirector, which allows to do all kinds of redirects like this. For example, I use it to redirect from YouTube to Invidious or from Booking.com confirmation page to the variant without upsells (which are otherwise tricky to block with uBlock Origin).
http://einaregilsson.com/redirector/
My rules: https://gist.github.com/notpushkin/ee1ed3aa55a0926708d0de854...
Disclaimer: I'm not that into YouTube and kinda 'lucky-priced' to be in a region-discounted part of the world.