Ez a módszer nem hivatalos és magában foglalja a Slack forrásfájlokban való ásatását. Ez meglehetősen könnyű, de mivel minden alkalommal felülíródik, akkor többször is ezt kell tennie.
Téma letöltése
Mivel a Slack fut az Electronon, amely az asztali Node.js alkalmazások fejlesztésére szolgál, szerkesztheti a stílusokat, például a weboldal CSS szerkesztéséhez. De a Llack CSS-fájljai eltűnnek a forrásból, ezért be kell töltenie a saját témáit.
A legelterjedtebb sötét mód téma a slack-black-téma a Widget. És mivel az Electron megosztja az összes platformot, ez a téma Windows és Linux operációs rendszereken is működni fog. Megállapítottuk, hogy a macOS Mojave témájával kapcsolatban néhány kérdés merült fel, tehát ha nem működik, próbálhatja ki ezt a villát, amely szerint csak macOS operációs rendszereken működik, de működhet a Windows felhasználók számára is.
Patching Laza
Ez a rész, minden alkalommal újra kell végeznie a Slack frissítéseket. A macOS rendszeren a Slack forráskönyvtárához érhet el, ha jobb egérgombbal rákattint az alkalmazásra, és kiválasztja a "Csomagtartalom megjelenítése" lehetőséget. A Windows rendszeren megtalálja ~AppDataLocalslack
Ezután navigáljon néhány mappából
resources/app.asar.unpacked/src/static/
. Meg fogja találni a
ssb-interop.js
fájl, ahol szerkeszteni fogja a kódot. Győződjön meg róla, hogy a Zárolás be van zárva, nyissa meg azt a fájlt a kedvenc szövegszerkesztőben, és lapozzon a legördülő menühöz:
ssb-interop.js
file:
// 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); }) }); }); });
Valószínűleg meg szeretné duplázni ezt a fájlt és menteni egy másik helyre, így nem kell mindig módosítania a kódot. Így egyszerűen csak húzza a könyvtárba, hogy felülírja a legújabb verziót:
Saját témák hozzáadása
Ha nem tetszik a megjelenés, szerkesztheti a CSS-t bármilyen stílusban. A kód mindegyike a terhelési egyéni stílusok a https://cdn.rawgit.com/widget-/slack-black-theme/master/custom.css; letöltheti azt a fájlt, szerkesztheti a módosításokkal és az URL-t saját kódjával helyettesítheti. Mentés, újraindítás Lazítás, és a módosítások láthatóak lesznek. Ha nem ismeri a CSS-t, vagy csak kisebb módosítást szeretne végrehajtani, a CSS betöltése előtt négy színváltozó van definiálva, így a saját színekkel szerkesztheti azokat.