Gibt es eine Möglichkeit, Stylebot-Stile in Chrome in das stilvolle Format zu exportieren?

1277
WilliamTael

Die ganze Geschichte ist folgende: Ich hasse den weißen Hintergrund von Chrome. Wenn ich eine neue Registerkarte öffne oder auf einen Link klicke, wird der Bildschirm weiß und meine Augen werden verbrannt. Die Stylebot-Erweiterung darf die Farben in der neuen Registerkarte oder beim Laden von weißen Bildschirmen nicht ändern.

Firefox hat dieses Problem nicht, wenn ich komplette dunkle Themen (diese alten Themen) darauf installiere. Nun möchte ich Chrome zurücklassen und Firefox verwenden. Wie wir alle wissen, hat Stylebot keine Firefox-Version.

Ich habe kein Addon gefunden, das so gut wie Stylebot für Firefox ist. Diejenigen, die Stylebot nahe kommen, sind fehlerhaft und stören die Websites.

Also überlegte ich mir, meine Voreinstellungen in Chrome's Stylebot zu übernehmen und in einen stilvollen Erweiterungsstil zu exportieren. Ich weiß nicht, ob das möglich ist, und ich weiß überhaupt nichts über Codierungen. Wenn das irgendwie funktioniert, wäre es golden!

Ich habe den Versuch aufgegeben, den weißen Hintergrund von Chrome zu ändern, da dies zu lästig war. Einige Änderungen funktionierten für den weißen Ladebildschirm, nicht jedoch für die neue Registerkarte. Selbst Erweiterungen, die die neue Registerkarte in eine andere URL umwandeln, haben nicht funktioniert. Vor dem Laden wird immer der weiße Bildschirm angezeigt.

Also ... kann mir jemand helfen?

3

2 Antworten auf die Frage

0
Mario Olivio Flores

Ich schaue mir das selbst an. Stilvolle Exporte / Importe im folgenden Format - dazu gehören zwei Beispiele von userstyles.org und eines, das ich sehr schnell erstellt habe:

[ { "sections": [ { "urls": [], "urlPrefixes": [], "domains": [ "myjetbrains.com" ], "regexps": [], "code": "body.global { /*etc */}" } ], "url": "http://userstyles.org/styles/133921", "updateUrl": "https://userstyles.org/styles/chrome/133921.json", "md5Url": "https://update.userstyles.org/133921.md5", "originalMd5": "7963f3cfdce94512ebd74a0098a56b38", "name": "YouTrack Dark TV Style", "method": "saveStyle", "enabled": true, "id": 1 }, { "sections": [ { "urls": [], "urlPrefixes": [], "domains": [], "regexps": [], "code": "/* 4chan - Midnight Caek */\r\n@namespace url(http://www.w3.org/1999/xhtml);" }, { "urls": [], "urlPrefixes": [], "domains": [ "4chan.org" ], "regexps": [], "code": "/* hides Captcha table row */\r\n\r\n/* body background and text color */\r\nhtml, body { /*etc */}" }, { "urls": [], "urlPrefixes": [], "domains": [ "dis.4chan.org" ], "regexps": [], "code": "body { /*etc */}" } ], "url": "http://userstyles.org/styles/65821", "updateUrl": "https://userstyles.org/styles/chrome/65821.json?ik-passtoggle=ik-No", "md5Url": "https://update.userstyles.org/65821.md5", "originalMd5": "d34520a7525de8e0c174d466697c50db", "name": "4chan - Midnight Caek", "method": "saveStyle", "enabled": true, "id": 2 }, { "method": "saveStyle", "name": "stackoverflow improvement", "enabled": true, "sections": [ { "urls": [], "urlPrefixes": [], "domains": [ "superuser.com" ], "regexps": [], "code": "body\n" } ], "updateUrl": null, "md5Url": null, "url": null, "originalMd5": null, "id": 3 } ] 

Stylebot ermöglicht das Sichern und Exportieren ihrer Stile in diesem JSON-Format:

{ "abcnews.go.com":{ "_enabled":true, "_rules":{ "div.t_callout":{ "display":"none" } } }, "boingboing.net":{ "_enabled":true, "_rules":{ "#next-post-thumbnails":{ "display":"none" } } } } 

Es sollte ziemlich trivial sein, etwas Code zu schreiben, um durch Stylebots zurückgegebenes JSON zu scrollen und die CSS im stilvollen Format zu generieren. Ich werde das tatsächlich irgendwann angehen und werde meine Sachen posten, wenn ich dazu komme.

0
Jiaqi Liu

VORSICHT:

Bevor Sie den konvertierten Json in Stylus / Stylus importieren, sichern Sie zunächst Ihre vorhandenen Einstellungen. Ich habe es nur in meinen exportierten Einstellungen überprüft und kann Fehler enthalten!


Ich habe gerade ein Skript geschrieben, um stylebot json in stylish / stylus json umzuwandeln.

Um das Skript verwenden zu können, muss Python 3 installiert sein. Wenn Sie das Skript heruntergeladen haben s2s.py, führen Sie das Skript aus mit:

python3 s2s.py stylebot.json -o stylus.json -e utf-8 

Die Argumente -ound -esind optional.

GitHub Gist

Ich weiß, es ist eine Art hässlicher Code, aber wen interessiert das schon: P

import argparse import json   def stylebot_to_stylus(source='sb.json', target='stylus.json', encoding='utf-8'):  with open(source, encoding=encoding) as f: data = json.load(f)  result_list = [] item_id = 1 for domain_name in data: item_dict = {} item_dict["id"] = item_id item_id += 1 item_dict["enabled"] = data[domain_name]['_enabled'] item_dict["name"] = domain_name  # only one section for each domain (group) sections = [] section0 = {} section0['urls'] = [] section0['domains'] = []  # add the domain or the group of domains if ',' in domain_name: for addr in domain_name.split(sep=','): section0['domains'].append(addr.strip()) else: section0['domains'].append(domain_name)  css_rule = ''  # construct a css rule for each domain (group) for selector in data[domain_name]['_rules']: css_rule += selector + '{' for attr in data[domain_name]['_rules'][selector]: css_rule += attr + ':' css_rule += data[domain_name]['_rules'][selector][attr] + ';' css_rule += '}' section0['code'] = css_rule  sections.append(section0) item_dict['sections'] = sections  result_list.append(item_dict)  with open(target, "w", encoding=encoding) as of: of.write(json.dumps(result_list))   if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument("source", help="input json file, exported from Stylebot[Lite]") parser.add_argument('-o', '--output', help='output json file, can be imported to Stylus') parser.add_argument('-e', '--encoding', help='output json file, can be imported to Stylus')  args = parser.parse_args() src = args.source out = args.output if args.output else 'stylus_output.json' enc = args.encoding if args.encoding else 'utf-8'  stylebot_to_stylus(src, out, enc)