Ova metoda je neslužbena i obuhvaća kopanje u izvornim datotekama za Slack. To je prilično jednostavno za napraviti, ali budući da će se nadopunjavati svaki put kad ažurirate, morat ćete to učiniti više puta.
Preuzimanje teme
Budući da Slack funkcionira na Electronu, okvir za razvoj aplikacija Node.js na radnoj površini, možete urediti stilove za njega kao da biste uredili CSS web stranice. No, CSS datoteke za zatišje zakopane u izvoru pa ćete morati učitati svoje teme.
Najpopularnija stvarna tema s tamnom modu je Widget slack-black-theme. A budući da Electronovi dionici kodiraju preko platformi, ta će tema raditi i na Windows i Linuxu. Našli smo da su neki problemi s temom na macOS Mojave ipak, pa ako to ne radi onda možete probati ovaj viljuškar, koji kaže da radi samo na macOS, ali može raditi i za Windows korisnike kao dobro.
Patching Slack
Ovaj dio, morat ćete ponovno raditi svaki put kada se zatražite ažuriranja. Na macOS-u možete doći do Slackovog izvornog direktorija desnim klikom na samu aplikaciju i odabirom opcije "Show Package Contents". U sustavu Windows, naći ćete ga na ~AppDataLocalslack
Zatim idite na nekoliko mapa
resources/app.asar.unpacked/src/static/
Želiš pronaći
ssb-interop.js
datoteku, gdje ćete urediti kôd. Provjerite je li Zasun zatvoren, otvorite tu datoteku u omiljenom uređivaču teksta i pomaknite se do dna:
ssb-interop.js
datoteka:
// 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); }) }); }); });
Vjerojatno želite kopirati ovu datoteku i spremiti je na drugu lokaciju, tako da svaki put ne morate urediti kôd. Na taj način možete ga jednostavno povući u direktorij da biste prebrisali najnoviju verziju:
Dodavanje vlastitih tema
Ako vam se ne sviđa izgled, možete urediti CSS sa svim željenim stilovima. Sve ovo kôd je opterećenje prilagođenih stilova od https://cdn.rawgit.com/widget-/slack-black-theme/master/custom.css; možete preuzeti tu datoteku, urediti je s vašim promjenama i zamijeniti URL vlastitim kodom. Spremite, ponovno pokrenite opuĹĄtanje i promjene će biti vidljive. Ako ne znate CSS ili samo želite napraviti manju promjenu, prije učitavanja CSS-a definirane su četiri varijable boja, tako da možete urediti one s vlastitim bojama.