Subject: bug#4381: 23.1.50; Cocoa Emacs: face background for 'region set in ns-win.el after .emacs

From: Adrian Robert <[email-masked]>
Date: Tue, 22 Sep 2009 19:19:00 -0400

On Sep 20, 2009, at 9:37 AM, Stefan Monnier wrote:

>> (custom-set-faces '(region ((t (:background "ns_selection_color")))))
>
> Why not change faces.el directly?

I guess I'd prefer to remove this feature completely over hacking  
into faces.el.  Colors there are defined for dark and light  
backgrounds, which is not supported by the NS implementation.  It  
would be nice to allow the default system-wide selection color to be  
used under NS, but I guess if this is not being implemented on GTK /  
etc. it is not considered important by emacs users.

However, I'm wondering why OP was seeing lightgoldenrod2 at all --  
this should only be used if there is no value for AppleHighlightColor  
set in the defaults, which there should be.

Erik, what do you get from a "defaults read NSGlobalDomain  
AppleHighlightColor"?

Incidentally, another solution (posted for bug 3434) is:

(if (not (face-attribute 'region :background))
     (set-face-background 'region "ns_selection_color"))