Có cách nào để có các cài đặt fontconfig khác nhau trên mỗi màn hình không?
Tôi có hai màn hình 1080p, tuy nhiên một là 13 "và 27" khác. Tôi muốn phông chữ khử răng cưa trên màn hình nhỏ và phông chữ không khử răng cưa trên màn hình lớn.
Có cách nào để có các cài đặt fontconfig khác nhau trên mỗi màn hình không?
Tôi có hai màn hình 1080p, tuy nhiên một là 13 "và 27" khác. Tôi muốn phông chữ khử răng cưa trên màn hình nhỏ và phông chữ không khử răng cưa trên màn hình lớn.
Câu trả lời:
xrdb
sử dụng bộ tiền xử lý C (vì tất nhiên là có), vì vậy nó hỗ trợ các điều kiện. Đây là một đoạn từ tôi .Xresources
:
#if SCREEN_NUM == 0
Xft.dpi: 157
#endif
#if SCREEN_NUM == 1
Xft.dpi: 96
Xft.antialias: 0
#endif
Bây giờ xrdb -merge
sẽ thực hiện đúng trên mỗi màn hình và khi bạn đăng nhập, giả sử một trong vô số các tập lệnh khởi tạo X làm phiền bạn .Xresources
, nó cũng sẽ được đặt chính xác.
(Lưu ý: trang Cấu hình Phông chữ Arch Linux có nhiều ví dụ hơn, nhưng vì lợi ích của việc bảo tồn điều này cho hậu thế, tôi đã đưa vào ví dụ có liên quan ở trên.)
Đây là cách tôi làm điều đó:
.Xresources
và chạyxrdb
.Xresources
và chạyxrdb
Đây là một kịch bản ví dụ để bắt đầu ý tưởng intellij trên màn hình nghiêng thứ cấp:
#!/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
Mặc dù điều này sẽ hoạt động nếu bạn chỉ giữ chương trình đó trên màn hình đó (như tôi làm).
xrdb
nhiều hơn một lần, vì nó nhận biết được nhiều màn hình.