/ Jak nainstalovat (neoficiální) temný režim pro Slack

Jak nainstalovat (neoficiální) temný režim pro Slack

Slack stále nemá tmavý režim. Mají temná témata, ale ty vám umožňují přizpůsobit pouze barvy postranního panelu a ponechat hlavní okno bílé. S uvolněním tmavých režimů pro celý systém v systému MacOS Mojave a Windows 10 se Slack cítí na místě.

Tato metoda je neoficiální a zahrnuje kopáníve zdrojových souborech pro Slack. Je to docela snadné, ale protože bude přepsáno pokaždé, když aktualizujete, budete to muset udělat vícekrát.

Stahování motivu

Protože Slack běží na Electronu, rámec provyvíjíte aplikace Node.js pro počítače, můžete pro ně upravovat styly, jako byste upravovali CSS webové stránky. Ve zdroji jsou však uloženy soubory CSS pro Slack, takže budete muset načíst svá vlastní témata.

Nejoblíbenějším motivem skutečného temného režimu jeslack-black-theme by Widget. A protože Electron sdílí kód napříč platformami, bude toto téma fungovat i pro Windows a Linux. Zjistili jsme však, že s motivem MacOS Mojave došlo k určitým problémům, takže pokud to nefunguje, můžete zkusit tuto vidličku, která říká, že funguje pouze v systému MacOS, ale může fungovat i pro uživatele Windows.

Oprava Slack

Tuto část budete muset pokaždé udělat znovuSlack aktualizace. V systému MacOS se můžete dostat do zdrojového adresáře Slacku kliknutím pravým tlačítkem myši na samotnou aplikaci a výběrem možnosti „Zobrazit obsah balíčku“. V systému Windows je najdete na adrese ~AppDataLocalslack .

Poté přejděte několik složek dolů do resources/app.asar.unpacked/src/static/ . Budete chtít najít ssb-interop.js soubor, kde budete upravovat kód. Ujistěte se, že je Slack uzavřen, otevřete tento soubor ve svém oblíbeném textovém editoru a přejděte dolů:

Zkopírujte a vložte následující kód na samý konec ssb-interop.js soubor:

// First make sure the wrapper app is loaded
document.addEventListener("DOMContentLoaded", function() {
// Then get its webviews
let webviews = document.querySelectorAll(".TeamView webview");
// Fetch our CSS in parallel ahead of time
const cssPath = 'https://cdn.rawgit.com/widget-/slack-black-theme/master/custom.css';
let cssPromise = fetch(cssPath).then(response => response.text());
let customCustomCSS = `
   :root {
      /* Modify these to change your theme colors: */
      --primary: #09F;
      --text: #CCC;
      --background: #080808;
      --background-elevated: #222;
   }
   `
// Insert a style tag into the wrapper view
cssPromise.then(css => {
let s = document.createElement('style');
s.type = 'text/css';
s.innerHTML = css + customCustomCSS;
document.head.appendChild(s);
});
// Wait for each webview to load
webviews.forEach(webview => {
webview.addEventListener('ipc-message', message => {
if (message.channel == 'didFinishLoading')
// Finally add the CSS into the webview
cssPromise.then(css => {
let script = `
                     let s = document.createElement('style');
                     s.type = 'text/css';
                     s.id = 'slack-custom-css';
                     s.innerHTML = `${css + customCustomCSS}`;
                     document.head.appendChild(s);
                     `
webview.executeJavaScript(script);
})
});
});
});

Pravděpodobně budete chtít duplikovat tento soubor auložte jej na jiném místě, takže kód nemusíte pokaždé upravovat. Tímto způsobem jej můžete jednoduše přetáhnout do adresáře a přepsat nejnovější verzi:

Po dokončení znovu otevřete Slacka a po několikavteřiny, kdy by se měl tmavý režim spustit. Obrazovka načítání bude stále bílá, ale hlavní okno aplikace se lépe spojí se zbytkem vašeho systému:

Přidání vlastních motivů

Pokud se vám nelíbí vzhled, můžete jej upravitCSS s libovolnými styly, které chcete. Celý tento kód dělá načtení vlastních stylů z https://cdn.rawgit.com/widget-/slack-black-theme/master/custom.css; můžete si tento soubor stáhnout, upravit jej pomocí změn a nahradit adresu URL vlastním kódem. Uložit, znovu spustit Slack a vaše změny budou viditelné. Pokud neznáte CSS nebo jen chcete provést menší změnu, před načtením CSS jsou definovány čtyři barevné proměnné, takže je můžete upravit pouze vlastními barvami.