Toggle InstantMarkdown width

Adds a button to toggle between full width and GitHub default width

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         Toggle InstantMarkdown width
// @description  Adds a button to toggle between full width and GitHub default width
// @match        http://localhost:8090/
// @grant        none
// @namespace    http://foo.at/
// @version      1.0
// ==/UserScript==

/*
 * Copyright 2015-2016 Stefan Weiss <[email protected]>
 * License: Public Domain
 * Please let me know if this script stops working for you.
 */

/* jshint esversion: 6 */
(function () {

    "use strict";

    if (!_qs("#js-repo-pjax-container")) {
        return;
    }

    let toggled = false;
    const btn = document.createElement("button");
    btn.textContent = "Toggle width";
    btn.style.cssText = "position: absolute; top: 10px; right: 10px";
    document.body.appendChild(btn);

    btn.onclick = function () {
        _qs(".container").style.width = toggled ? "980px" : "auto";
        _qs("#js-repo-pjax-container").style.width = toggled ? "790px" : "auto";
        _qs("article.markdown-body").style.maxWidth = toggled ? "790px" : "100%";
        toggled = !toggled;
    };

    function _qs (sel, base)
    {
        return (base || document).querySelector(sel);
    }

})();