Better SweClockers (2018–)
Högre inläggskvalitet och mindre vardagsmigrän för dig som älskar datorer och hårdvara.
» Installera «
Komma igång
» Vanliga webbläsare
Klicka på länken i början av inlägget och bekräfta installationen.
Du kan även ladda ned filen better-sweclockers.user.js
och klistra in dess innehåll manuellt i ett nytt userscript i Violentmonkeys inställningar.
» iOS
Temporärt/manuellt (bookmarklet)
Med detta sätt måste du klicka på ett bokmärke varje gång du vill aktivera Better SweClockers.
Skapa ett bokmärke till vilken webbsida som helst och med vilket namn som helst (förslagsvis "Better SweClockers"). Spara bokmärket under Favoriter.
Gå in i menyn för bokmärken och redigera bokmärket du just skapade.
Byt ut URL:en mot följande:
javascript:(() => { "use strict"; const stringify = caught => caught instanceof Error ? caught.message : String(caught); fetch("https://simonalling.github.io/better-sweclockers/better-sweclockers.user.js") .then(response => response.text()) .then(code => { const e = document.createElement("script"); e.textContent = "'use strict';" + code; document.body.appendChild(e); }) .catch(caught => alert("Could not run Better SweClockers. Reason: " + stringify(caught))); })()
Permanent/automatiskt
Utan jailbreak
Utan jailbreak är det omöjligt att installera något som inte kommer från App Store. Det jag gör är därför att köra all webbtrafik genom min server hemma i lägenheten, där Userscript Proxy infogar userscripts i alla matchande sidor. När jag inte är hemma kör jag VPN för att komma åt proxyn.
Med jailbreak
Köp och installera Userscripts Loader ($2.99 på Cydia).
Gå till Settings → Userscripts Loader → Download By URL.
Klistra in
https://simonalling.github.io/better-sweclockers/better-sweclockers.user.js
och tryck Enter.
» Android
Såvitt jag vet är det i skrivande stund bara Firefox bland de populära webbläsarna för Android som har stöd för tillägg. Tampermonkey bör fungera.
Jag använder dock Better SweClockers i Chrome genom att injicera det med hjälp av Userscript Proxy, precis som på iOS (se ovan).
Varför Better SweClockers?
Better SweClockers fixar några problem med SweClockers och lägger till massvis med bra funktionalitet.
Låst höjd på reklam etc så att man kan klicka på länkar utan att ständigt få sitt klick "flyttat" till en helt annan länk.
Utökade formateringsverktyg som gör det enormt mycket enklare att skriva välformaterade inlägg.
Blargmodes mörka tema med automatisk aktivering mellan valfria klockslag.
Fri anpassning av sajtens innehåll – dölj delar du störs av eller bara inte använder.
Bättre (större) bläddringsknappar i trådar.
Bekräftelse vid utloggning eller navigering bort från redigeringsläget.
Knappar vid varje inlägg för att PM:a skribenten eller citera signaturen.
Bättre gränssnitt för rättelser, särskilt för att skicka in flera rättelser på samma artikel.
Lättare att hitta sina egna inlägg i en tråd.
Kompakt layout – scrolla mindre.
Och en hel del mindre förbättringar.
Ny tråd?
Ursprungliga Better SweClockers skapades 2014 och har sedan dess genomgått en rad uppdateringar, inklusive anpassning till SweClockers 6.0 när det begav sig.
Nu har jag skrivit om Better SweClockers helt och hållet, den här gången med Userscripter som grund. Den ursprungliga tråden är så föråldrad och innehåller så mycket numera irrelevant information att jag gjort bedömningen att en ny tråd behövs. Detta sammanfaller också med att jag inte längre tänker systematiskt posta utförliga uppdateringsnotiser för varje liten uppdatering och att jag bestämt mig för att skippa den mycket detaljerade manual jag hittills försökt hålla uppdaterad. Den gamla tråden övergår därmed till att bli ett slags historiskt dokument.
Bilder
Blargmodes mörka tema kan aktiveras automatiskt mellan valda klockslag.
Utökade redigeringsverktyg underlättar inläggsskrivandet.
Nästan allt är valbart i inställningsmenyn.
Adopterade features
Följande features från Better SweClockers har adopterats av SweClockers och blivit en del av själva sajten:
Påbörjade inlägg sparas automatiskt så att de inte går förlorade vid oavsiktlig navigering från sidan, krascher, strömavbrott etc.
Länkar till mobilsajten omvandlas nu automatiskt till vanliga, så att man slipper kastas ut bara för att folk klistrar in mobillänkar. Ursprungligen @Soitoras förslag.
Länkarna säljes, köpes, bytes och skänkes under Senaste privatannonserna var inte länkar från början.
Senaste nytt, som låg högst upp under loggan, har tagits bort.
Ens egna inlägg framhävs med orange kant likt Framhäv egna inlägg.
Bättre bläddringsknappar har i viss mån blivit en del av standarddesignen.
Avatarens storlek uppe till höger är låst så att ikonerna till vänster om den inte trycks åt vänster när den laddas in.
Trådstatusikoner har fått tooltips som förklarar deras betydelse.
Det finns en länk för att söka med Google istället för sajtens eget sökverktyg.
Signatur
Den som vill kan lägga in följande i sin signatur:
[color="unset"]
[i]Skrivet med hjälp av [url="/forum/trad/1541641"][b][color="#5c5c68"]Better [/color][color="#c45e0b"]SweClockers[/color][/b][/url][/i]
[/color]
Resultat:
Skrivet med hjälp av Better SweClockers
För utvecklare
Om du vill hjälpa till att förbättra Better SweClockers är GitHub-repot rätt ställe. Där står det hur du kommer igång.
Den nya kodbasen är byggd med utökning i åtanke. Att lägga till en funktion består i de flesta fall av följande moment (med exempel tagna från denna commit):
» Namn
Lägg till namnet på den nya funktionen i src/text.ts
, så som det ska visas i inställningsmenyn.
src/text.ts
label: `Allmänt`,
lock_heights: `Lås höjden på reklam etc`,
compact_layout: `Kompakt layout`,
+ improved_pagination_buttons: `Bättre bläddringsknappar i trådar`,
improved_corrections: `Bättre rättelsegränssnitt`,
highlight_own_posts: `Framhäv egna inlägg`,
search_engine: {
» Inställning
Lägg till en inställning för den nya funktionen i en lämplig fil under src/preferences/
. Använd den sträng du nyss la till i src/text.ts
som label
.
src/preferences/general.ts
default: true,
label: T.preferences.general.compact_layout,
}),
+ improved_pagination_buttons: new BooleanPreference({
+ key: "improved_pagination_buttons",
+ default: true,
+ label: T.preferences.general.improved_pagination_buttons,
+ }),
improved_corrections: new BooleanPreference({
key: "improved_corrections",
default: true,
» CSS
Om den nya funktionen ska injicera CSS, lägg till en SASS-fil i src/styles/
.
src/styles/improved-pagination-buttons.scss
+.pages {
+ margin-bottom: unset;
+
+ $size: 32px;
+ a {
+ box-sizing: border-box;
+ display: table-cell;
+ height: $size;
+ text-align: center;
+ vertical-align: middle;
+ width: $size;
+ }
+}
Lägg sedan till en StylesheetModule
i src/styles.ts
, så att CSS-koden injiceras om och endast om motsvarande inställning är aktiverad.
src/styles.ts
condition: Preferences.get(P.general._.compact_layout),
css: require("styles/compact-layout"),
},
+ {
+ condition: Preferences.get(P.general._.improved_pagination_buttons),
+ css: require("styles/improved-pagination-buttons"),
+ },
{
condition: Preferences.get(P.general._.improved_corrections),
css: require("styles/improved-corrections"),
» Operation
Om den nya funktionen gör något annat än att injicera CSS, lägg till en operation i src/operations.ts
. Den commit från vilken exemplen ovan är tagna har ingen operation, men operations.ts
innehåller många exempel. Använd DependentOperation
om operationen är beroende av element som först måste hittas i sidans innehåll; annars IndependentOperation
.
Skrivet med hjälp av Better SweClockers