Cài đặt màu Xresource


7

Tôi đang sử dụng Gentoo với XMonad và đặt tất cả các màu trong .Xresourcestệp. Vấn đề là đối với một số cài đặt ứng dụng *.background*.foregroundkhông đủ vì chúng ghi đè cài đặt cho một số trường. Đây là một ví dụ về những gì sai:

nhập mô tả hình ảnh ở đây

Nền nên tương tự như các yếu tố cửa sổ tối, nhưng thay vào đó là màu trắng và xám.

Một số biến xresource khác đặt màu cửa sổ hộp thoại là gì và cách chính xác để khắc phục vấn đề này là gì?

.XresourcesTập tin hiện tại của tôi :

! Solarized colorscheme for Xresources
! ====================================




! To choose between light/dark bakground:
! - Define the choice in ``.Xresources`` by hardcoding
!   #define SOLARIZED_LIGHT
!   or
!   #define SOLARIZED_DARK
! - Define the symbol when loading ``.Xresources`` with ``xrdb``:
!   $ xrdb -DSOLARIZED_LIGHT -merge ~/.Xresources




#if !defined(SOLARIZED_LIGHT) && !defined(SOLARIZED_DARK)
#define SOLARIZED_DARK
#elif defined(SOLARIZED_LIGHT) && defined(SOLARIZED_DARK)
#undef SOLARIZED_LIGHT
#endif




! Define Solarized colors
! -----------------------
#define S_base03    #002b36
#define S_base02    #073642
#define S_base01    #586e75
#define S_base00    #657b83
#define S_base0     #839496
#define S_base1     #93a1a1
#define S_base2     #eee8d5
#define S_base3     #fdf6e3




#define S_yellow    #b58900
#define S_orange    #cb4b16
#define S_red       #dc322f
#define S_magenta   #d33682
#define S_violet    #6c71c4
#define S_blue      #268bd2
#define S_cyan      #2aa198
#define S_green     #859900




#ifdef SOLARIZED_LIGHT
#define S_emph      S_base01
#define S_primary   S_base00
#define S_secondary S_base1
#define S_bgrnd_hi  S_base2
#define S_bgrnd     S_base3
#endif
#ifdef SOLARIZED_DARK
#define S_emph      S_base1
#define S_primary   S_base0
#define S_secondary S_base01
#define S_bgrnd_hi  S_base02
#define S_bgrnd     S_base03
#endif




! black dark/light
*color0:                S_base02
*color8:                S_base03
! red dark/light
*color1:                S_red
*color9:                S_orange
! green dark/light
*color2:                S_green
*color10:               S_base01
! yellow dark/light
*color3:                S_yellow
*color11:               S_base00
! blue dark/light
*color4:                S_blue
*color12:               S_base0
! magenta dark/light
*color5:                S_magenta
*color13:               S_violet
! cyan dark/light
*color6:                S_cyan
*color14:               S_base1
! white dark/light
*color7:                S_base2
*color15:               S_base3








! General Xresource settings
! ==========================
!
#define FONT_REGULAR xft:Liberation Mono:style=Regular:pixelsize=14 
#define FONT_BOLD xft:Liberation Mono:style=Bold:pixelsize=14 
#define FONT_ITALIC xft:Liberation Mono:style=Italic:pixelsize=14 
Xft*antialias: true




*foreground:                S_primary
*background:                S_bgrnd
*Foreground:                S_primary
*Background:                S_bgrnd
*cursorColor:               S_emph
*pointerColorForeground:    S_emph
*pointerColorBackground:    S_secondary
*fading:                    40
*fadeColor:                 S_bgrnd








! Xscreensaver
! ============
xscreensaver.captureStderr: false
!font settings
xscreensaver.Dialog.headingFont: FONT_REGULAR
xscreensaver.Dialog.bodyFont:    FONT_REGULAR 
xscreensaver.Dialog.labelFont:   FONT_REGULAR 
xscreensaver.Dialog.unameFont:   FONT_REGULAR 
xscreensaver.Dialog.buttonFont:  FONT_REGULAR 
xscreensaver.Dialog.dateFont:    FONT_REGULAR 
xscreensaver.passwd.passwdFont:  FONT_REGULAR 
!general dialog box (affects main hostname, username, password text)
xscreensaver.Dialog.foreground: S_primary
xscreensaver.Dialog.background: S_bgrnd
xscreensaver.Dialog.topShadowColor: S_bgrnd
xscreensaver.Dialog.bottomShadowColor: S_bgrnd
xscreensaver.Dialog.Button.foreground: S_primary
xscreensaver.Dialog.Button.background: S_bgrnd_hi
!username/password input box and date text colour
xscreensaver.Dialog.text.foreground: S_primary
xscreensaver.Dialog.text.background: S_bgrnd_hi
xscreensaver.Dialog.internalBorderWidth: 24
xscreensaver.Dialog.borderWidth: 0
xscreensaver.Dialog.shadowThickness: 1
xscreensaver*logo.width: 1
xscreensaver*logo.height: 1
!timeout bar (background is actually determined by Dialog.text.background)
xscreensaver.passwd.thermometer.foreground: S_red
xscreensaver.passwd.thermometer.background: S_blue
xscreensaver.passwd.thermometer.width: 4




 
! rxvt-unicode terminal
! =====================
!
URxvt*background: S_bgrnd
URxvt*foreground: S_primary
URxvt*font: FONT_REGULAR
URxvt*boldFont: FONT_BOLD
URxvt*italicFont: FONT_ITALIC
URxvt.colorIT: S_magenta
URxvt.colorBD: S_green
URxvt.colorUL: S_blue
URXVT.borderColor: S_bgrnd_hi
URxvt.highlightColor: S_bgrnd_hi
URxvt.scrollBar: false
URxvt.saveLines: 1000
URxvt.cursorBlink: true
URxvt.pointerBlank: true
URxvt.modifier: alt

Thật không may, không có tiêu chuẩn nào cho cách tổ chức màu sắc: mỗi ứng dụng làm việc riêng của nó. Việc đặt tài nguyên được sử dụng bởi mọi ứng dụng là không thực tế. Bạn sẽ cần thêm hoặc ghi đè một số cài đặt cho ứng dụng này. Nó là gì?
Gilles 'SO- ngừng trở nên xấu xa'

Hành vi tương tự có tất cả các ứng dụng GUI với danh sách các dòng văn bản như vậy: Skype, Calibre, KeePassX chỉ là những ứng dụng đầu tiên cần quan tâm. Ngoài ra nền không nên có màu trắng. *backgroundcài đặt sẽ xác định lại nền cho tất cả các ứng dụng có thể sử dụng trường đó. Rõ ràng có một giá trị khác chịu trách nhiệm cho nền văn bản hoặc nổi bật.
zoresvit

Câu trả lời:


7

chỉ cụ thể hơn :)

thay vì:

*background: ...

sử dụng:

*vt100.background: ...

điều này sẽ đảm bảo bạn chỉ ảnh hưởng đến thiết bị đầu cuối vt100 chứ không ảnh hưởng đến các ứng dụng khác. Tôi đã có vấn đề này với Mathematica và giải pháp của tôi cũng sẽ phù hợp với bạn. Nhân tiện, tôi thích cách bạn thực hiện chuyển đổi sáng / tối.


1

Điều này chắc chắn nghe giống với vấn đề tôi gặp phải với XClock một thời gian trước:
Xellock Facelifting trong khi sử dụng Xrender: Một con đường dài và quanh co

Đọc câu trả lời rất hay của Drav Sloan có lẽ sẽ cung cấp cho bạn một số hiểu biết sâu sắc hơn về hoạt động bên trong của .Xresources. Bằng cách hiểu những điều này, người ta sẽ ngạc nhiên khi biết về sự phức tạp thực sự của chúng, điều mà sẽ không bộc lộ ngay trong cái nhìn hời hợt đầu tiên.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.