Schriftkonfiguration pro Bildschirm?

7

Gibt es eine Möglichkeit, unterschiedliche fontconfig-Einstellungen pro Bildschirm vorzunehmen?

Ich habe zwei 1080p-Monitore, einer ist jedoch 13 "und der andere 27". Ich möchte Antialiasing-Schriftarten auf dem kleinen Monitor und Nicht-Antialiasing-Schriftarten auf dem großen Monitor.

Jean-Michaël Celerier
quelle
Interessante Frage. Ich kann mir vorstellen, dass dies auch für verschiedene Subpixel-Renderings nützlich wäre, z. B. wenn eines RGB und das andere BGR ist.
Sparhawk

Antworten:

5

xrdbverwendet den C-Präprozessor (weil dies natürlich der Fall ist), unterstützt also Bedingungen. Hier ist ein Ausschnitt aus meinem .Xresources:

#if SCREEN_NUM == 0
Xft.dpi: 157
#endif

#if SCREEN_NUM == 1
Xft.dpi:  96
Xft.antialias: 0
#endif

Jetzt xrdb -mergewird auf jedem Monitor das Richtige getan, und wenn Sie sich anmelden und davon ausgehen, dass eines der unzähligen X-Initialisierungsskripte Ihre Daten stört .Xresources, wird es auch richtig eingestellt.

(Hinweis: Auf der Seite zur Konfiguration von Arch Linux-Schriftarten finden Sie weitere Beispiele. Um dies jedoch für die Nachwelt zu erhalten, habe ich das entsprechende Beispiel oben aufgenommen.)

Ben Stern
quelle
wow! Das ist toll ! endlich ein weg!
Jean-Michaël Celerier
1
sieht aus wie Xft.dpi unterscheidet zwischen Groß- und Kleinschreibung, nur Xft.dpi funktioniert für mich
vvolkov
@vvolkov ist richtig. Ich habe die obige Erklärung korrigiert.
Ben Stern
1
"weil es natürlich tut" :)
Roger Dahl
0

So mache ich das:

  1. Legen Sie die Konfiguration für den sekundären Monitor fest .Xresourcesund führen Sie sie ausxrdb
  2. Starten Sie das Programm und platzieren Sie es auf Ihrem sekundären Monitor
  3. Ändern Sie die Werte wieder .Xresourcesund führen Sie sie ausxrdb

Hier ist ein Beispielskript zum Starten von Intellij Idea auf einem sekundären geneigten Monitor:

#!/bin/sh
sed -i 's/.*Xft.rgba:\s*rgb.*/Xft.rgba: vrgb/' /home/babken/.Xresources
xrdb /home/babken/.Xresources
intellij-idea-ultimate-edition &
sed -i 's/.*Xft.rgba:\s*vrgb.*/Xft.rgba: rgb/' /home/babken/.Xresources
xrdb /home/babken/.Xresources

Dies funktioniert jedoch, wenn Sie das Programm nur auf diesem Monitor behalten (wie ich).

Babken Vardanyan
quelle
Wie oben müssen Sie nicht xrdbmehr als einmal ausführen , da es Multi-Display-fähig ist.
Ben Stern