Regeln in Stylish automatisch mit unsichtbarem "!important"

  • Die Lesbarkeit und somit die Wartbarkeit der Regeln in Stylish leidet IMHO immens unter dem "!important".

    Ist Euch ein Weg bekannt, wie man
    1. dafür sorgen kann, dass "!important" automatisch jeder Regel hinzugefügt wird (richtig, ich meine nicht die Auto-Ergänzen-Funktion) und
    2. "!important" für den Editierenden unsichtbar ist?

    Mit anderen Worten:
    Wirksamer und sichtbarer Code unterscheiden sich. Um "!important".

    Danke.

  • Zitat von Andreas Borutta

    Die Lesbarkeit und somit die Wartbarkeit der Regeln in Stylish leidet IMHO immens unter dem "!important".

    IYHO, aber IMHO nicht ;) Das wird durch das (standardmäßige) Syntaxhighlighting anders eingefärbt.

    Zitat von Andreas Borutta


    Ist Euch ein Weg bekannt, wie man
    1. dafür sorgen kann, dass "!important" automatisch jeder Regel hinzugefügt wird (richtig, ich meine nicht die Auto-Ergänzen-Funktion) und
    2. "!important" für den Editierenden unsichtbar ist?

    Mit anderen Worten:
    Wirksamer und sichtbarer Code unterscheiden sich. Um "!important".

    Nein, weiß ich nicht, und ich halte so etwas auch für eine potentielle Quelle massiver Verwirrung.

    Du könntest aber die Möglichkeit nutzen, an den Anfang Deiner Stile immer ein

    Code
    /* AGENT_SHEET */


    zu setzen. Siehe dazu auch Overwriting page styles · JasonBarnabe/stylish Wiki.

    Dann kannst Du auf viele, aber nach meiner Erfahrung nicht alle "!important"-Einfügungen verzichten. Das musst Du dann jedes Mal ausprobieren (erst ohne ausführen, und dann dort ergänzen, wo die erwünschte Wirkung ausbleibt).

  • Zitat von Andreas Borutta

    Ich verstehe bisher eh nicht, warum ein Userstyle nicht per Definition (der Cascadierung - User Agent Style -> Author Style -> User Style) die User Styles stets ohne !important gewinnen.

    Ich bin da letztendlich auch überfragt. Jason Barnabe hat ja auf die relevante Passage in den W3C-Recommendations verlinkt. Der verzwickte Punkt liegt, glaub ich, darin, dass auch Autoren Regeln mit !important verwenden dürfen und das – zum Teil völlig unnötig – auch tun.

    Was ich aber zusätzlich verwirrend finde: Die Bezeichnung AGENT_SHEET impliziert für mich, dass ein entsprechend ausgezeichneter Stil als User-Agent-Stil angwendet werden soll, was Jason selbst explizit so schreibt. Das würde entsprechend der Kaskade aber der niedrigsten Priorität entsprechen, so dass man eher mehr statt weniger !important setzen müsste. :?::-??

    Zum Syntaxhighlighting: Du könntest die Stile grundsätzlich in einem externen Editor Deiner Wahl öffnen, wo Du !important in einer unauffälligen Farbe markierst, oder …

    sieh dir mal Stylish Editor Modified an. Das bietet neben noch so einigen anderen Spielereien auch verschiedene Einfärbungsstile an. Ich weiß aber nicht, wie lange dieses Addon noch funktioniert. Es ist derzeit nicht signiert. Der Entwickler hat sich wohl mal im Streit von AMO verabschiedet und wollte keine Addons für Mozilla mehr weiterentwickeln, dieses Addon ist aber erst danach hochgeladen worden. Auch das ist mysteriös.
    Im Stylish-Forum gibt’s ’ne ganze Menge Lesestoff dazu: SRAZZANO!... und speziell Stylish Editor Mod (das erste Posting kann so absolut nicht stimmen).

  • Nur zur Info, Stylish Editor Modified ist signiert.
    Wie fast alle bei Amo gehosteten Erweiterungen. Eben mal kontrolliert.
    Letzte Version ist vom 13.08.2015 und wurde letztens nochmal signiert.

    Es fehlt nur noch die komplette Überprüfung bei AMO. Das dauert eben etwas länger.

    Mfg.
    Endor

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:126.0) Gecko/20100101 Firefox/126.0
    OS: Windows 10 pro 64 bit und Windows 10 Home 64 bit
    Meine Scripte Sammlung: https://github.com/Endor8/userChrome.js
    Kein Support per PN. Fragen bitte im Forum stellen!

  • Zitat von Endor

    Nur zur Info, Stylish Editor Modified ist signiert.
    Wie fast alle bei Amo gehosteten Erweiterungen. Eben mal kontrolliert.
    Letzte Version ist vom 13.08.2015 und wurde letztens nochmal signiert.

    Es fehlt nur noch die komplette Überprüfung bei AMO. Das dauert eben etwas länger.

    Danke für die Info, aber woran erkennst du das bzw. wo siehst Du, wann die Signierung stattgefunden hat? Bei mir im Addon-Manager wird die Erweiterung als unsigniert dargestellt. Sonst hätte ich das nicht behauptet. Oder wo bin ich da auf dem Holzweg? Diesen META-INF-Ordner innerhalb des Addons kann sich doch eigentlich jeder Entwickler selbst anlegen.

  • Speravir
    Unabhängig von den Feinheiten/Unklarheiten der Kaskadierung:
    Klar ist, dass jeder der ein Userstyle setzt, möchte, dass dieses gewinnt.

    Daher wundert es mich, dass eine Anwendung wie Stylish den Nutzer das Attribut immer und immer wieder manuell setzen lässt - anstatt eine Option "[x]automatisch setzen, aber verbergen, damit es nicht stört" anzubieten.
    Pech.

    Stylish Editor Modified habe ich mir kurz angesehen.
    Da scheint was mit den Themes kaputt zu sein.
    Der Default ist "Dark Theme off [x]".
    Dennoch ist "alles schwarz" und diverse Zeichen sind nicht lesbar.
    Das macht erstmal einen abschreckenden Eindruck gestehe ich ganz offen.


    Beim Adblocker uBlockOrigin gibt es ein sehr nützliches Feature "Element Picker".
    Es bietet eine ganze Auswahl an Selektoren an um "kosmetische" Notwehr zu betreiben.

    Sowas fehlt mir für Stylish. Eine flotte Methode um fix mal was rauszukicken in grausamem Kuddelmuddel-HTML.
    Über Firebug brauche ich immer viel länger als via Element Picker in uBlockOrigin.

  • Zitat von Andreas Borutta

    Daher wundert es mich, dass eine Anwendung wie Stylish den Nutzer das Attribut immer und immer wieder manuell setzen lässt - anstatt eine Option "[x]automatisch setzen, aber verbergen, damit es nicht stört" anzubieten.

    Wie schon gesagt, halte ich das weiterhin für eine schlechte Idee. Irgendwann vergisst man das.

    Zitat von Andreas Borutta


    Stylish Editor Modified habe ich mir kurz angesehen.
    Da scheint was mit den Themes kaputt zu sein.
    Der Default ist "Dark Theme off [x]".
    Dennoch ist "alles schwarz" und diverse Zeichen sind nicht lesbar.
    Das macht erstmal einen abschreckenden Eindruck gestehe ich ganz offen.

    Komisch, bei mir nicht. Mal einen Neustart probiert? Es gab mal ein solches Problem in einer älteren Version, der Fehler war aber eigentlich ausgemerzt.

    Zitat von Andreas Borutta


    Beim Adblocker uBlockOrigin gibt es ein sehr nützliches Feature "Element Picker".
    Es bietet eine ganze Auswahl an Selektoren an um "kosmetische" Notwehr zu betreiben.

    Sowas fehlt mir für Stylish. Eine flotte Methode um fix mal was rauszukicken in grausamem Kuddelmuddel-HTML.
    Über Firebug brauche ich immer viel länger als via Element Picker in uBlockOrigin.

    Dazu würde ich dir gern ein UserChrome-Script empfehlen. Das sollte dann aber in userChrome.js Scripte für den Fuchs (Diskussion) besprochen werden. Ganz so wie beim Element-Picker wäre das aber trotzdem nicht.

  • Speravir
    Ja, der Fehler tritt hier auch nach einem Neustart auf.

    Der Hintergrund und die Zeichen "{ } : ;" sind schwarz - und daher nicht erkennbar.

    Zu einem Skript folge ich Dir gerne in den anderen Thread. Wobei ich offen gestehe, dass ich es für sehr unübersichtlich halte, alle Skripte (also völlig verschiedenartige Funktionen) in einem einzigen Thread unterzubringen.
    Aber das nur am Rande.

  • Zitat von Andreas Borutta

    Der Hintergrund und die Zeichen "{ } : ;" sind schwarz - und daher nicht erkennbar.


    Ach so. Ja, das hatte ich auch mal und auch dem Entwickler mitgeteilt. Da kam nie eine Antwort zu, aber mit einem Update trat das bei mir nicht mehr auf, weshalb ich dachte, das wäre behoben. Der Workaround bestand darin, die damals noch separat in Stylish eingebundene CodeMirror-Stildatei jedes Mal durch Klick auf Preview (wirklich, hat ausgereicht!) neu zu laden. (Ach nee, es ging damals nur um den Cursor.) Heute ist diese Stildatei in das Addon integriert. Es käme mal auf auf einen Versuch an, die CSS wieder extra einzubauen. Eigentlich müssten alle Dark-Themes eine andere Einstellung bekommen. Wegen dieses Fehlers habe ich genau für die von dir erwähnten Zeichen und die Kommata (und „matching bracket“) einen eigenen kurzen Stil gebastelt, der die Voreinstellung, die hier der Firefox-Standard ist, überschreibt und nicht mehr daran gedacht, das zu erwähnen.

    Zitat von Andreas Borutta

    Zu einem Skript folge ich Dir gerne in den anderen Thread.


    Dann machen wir das doch mal.: Siehe userChrome.js Scripte für den Fuchs (Diskussion), Beitrag #143.

    Zitat von Andreas Borutta

    Wobei ich offen gestehe, dass ich es für sehr unübersichtlich halte, alle Skripte (also völlig verschiedenartige Funktionen) in einem einzigen Thread unterzubringen. Aber das nur am Rande.


    Gefällt mir auch nicht so, da sind wir aus dem Usenet anderes gewöhnt.

  • Zitat von Andreas Borutta

    Ich möchte keine Erweiterungen verwenden, die im Default einen solchen Fehler aufweist, der den Entwickler also trotz Kenntnis offenbar nicht interessiert.

    Na ja, „Kenntnis“ … ich habe ihm das noch nicht gemeldet, weil ich von seiner Aussage ausgehend gedacht habe, er würde keine weiteren Versionen für Firefox mehr veröffentlichen. Müsste ich also mal nachholen.