So legen Sie den Instanznamen von Google Chrome (oder einer beliebigen x11-Anwendung) fest

So legen Sie den Instanznamen von Google Chrome (oder einer beliebigen x11-Anwendung) fest

Ich verwende jetzt dwmeinen Fenstermanager und weiß, dass ich Regeln festlegen kann, um einer Anwendung einen bestimmten Tag zuzuweisen, und zwar wie folgt:

static const Rule rules[] = {
    /* xprop(1):
    *  WM_CLASS(STRING) = instance, class
    *  WM_NAME(STRING) = title
    */
    /* class      instance    title       tags mask     isfloating   monitor */
    { "Gimp",     NULL,       NULL,       0,            True,        -1 },
    { "Google-chrome",  NULL, NULL,       1 << 1,       False,       -1 }, // set chrome's tab. 2013-12-13
    { "UXTerm",    NULL,      "proxy",    1 << 8,       False,       -1 }, // let goagent proxy run in tab #9. 2013-12-13
};

Jetzt möchte ich mehrere Chrome-Instanzen mit verschiedenen Webseiten ausführen, die verschiedenen Tags zugeordnet sind. Das Problem ist, dass einige der Titel der Webseiten dynamisch sind. Daher denke ich, dass es keine gute Praxis ist, Regeln nach Titel festzulegen.

Hier ist meine Frage: Wie lege ich den Instanznamen von Google Chrome (oder einer beliebigen X11-Anwendung) fest, damit ich die Regeln nach Instanznamen erstellen kann?

Antwort1

Bei Chrome (oder Chromium) können Sie das zweite Element ändern, WM_CLASSindem Sie es beim Start mit dem --class="myClass"Flag (Dokumentation). Dies betrifft jedoch die classSpalte Ihrer dwmKonfiguration und nicht die instance, die das erste Element des WM_CLASSArrays wäre.

Die Lösung könnte dann darin bestehen, --app=URIstattdessen zu verwenden, wodurch diskrete Instanzen mit "festen" Namen erstellt werden, die auf der Eingabe basierenURI. Dies löst das Problem des dynamischen Registerkartentitels. Der Nachteil besteht jedoch darin, dass im --appModus nur eine Registerkarte möglich ist (und diese ist randlos).

Was die allgemeine Frage betrifft, könnte man wmctrldie Fensterklasse manuell ändern:http://tripie.sweb.cz/utils/wmctrl/

verwandte Informationen