Hide StackOverflow Sidebars

The minimum viable StackOverflow UI while removing all distractions

От 21.01.2024. Виж последната версия.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         Hide StackOverflow Sidebars
// @namespace    http://tampermonkey.net/
// @version      2024-01-21
// @description  The minimum viable StackOverflow UI while removing all distractions
// @author       Kristian Rados
// @license      MIT

// @match        *://superuser.com/*
// @match        *://stackoverflow.com/*
// @match        *://askubuntu.com/*
// @match        *://serverfault.com/*
// @match        *://*.stackexchange.com/*
// ==/UserScript==

(function() {
    'use strict';

    // Remove left sidebar (I have not used it a single time in my life)
    var removables = ['left-sidebar']; // Can add more IDs here
    for (var i = 0; i < removables.length; i++) {
        var element = document.getElementById(removables[i]);
        if (element) {
            element.parentNode.removeChild(element);
        }
    }
    document.getElementById("content").style.border="none";

    // Make question and answers take up whole width of page
    document.getElementById("content").style.margin="0";
    document.getElementById("content").style.width="100%";
    document.getElementById("content").style.maxWidth="none";

    // Moves Linked and Related questions to bottom of page
    // COMMENT OUT this line if you prefer them next to the question
    document.getElementById("mainbar").style.width="auto";

    // Clean up right sidebar
    // Taken from https://github.com/ShivanKaul/SidebarOverflow/blob/master/extension/src/remove.js
    var hiring = document.getElementById("hireme");
    var meta = document.getElementById("sidebar").children[1];
    var hot_network_qs = document.getElementById("hot-network-questions");
    var chat = document.getElementById("chat-feature");
    if (hiring) {
        hiring.parentNode.removeChild(hiring);
    }
    if (meta) {
        meta.parentNode.removeChild(meta);
    }
    if (hot_network_qs) {
        hot_network_qs.parentNode.removeChild(hot_network_qs);
    }
    if (chat) {
        chat.parentNode.removeChild(chat);
    }
})();