Subject: bug#33398: 26.1, netbsd-8; Hi Lock Faces, Hi Green B, default setting suggestion

From: Juri Linkov <[email-masked]>
Date: Fri, 23 Nov 2018 00:16:46 +0200

>>> The rainbow/artist’s coloring pencils theme for hi-faces is nicer to
>>> have for the wm-frame-windowing environment.
>
> The ROYGBIV palette for hi-lock-faces as theme.

There is one palette in vc-annotate-color-map, but it doesn't look good
when used for highlighting.

>>>> The same way as hi-yellow is defined to use yellow, and hi-green
>>>> to use green, we can define hi-blue to use blue color, and
>>>> hi-pink to use red color.  This will free cyan and magenta
>>>> to use.
>> 
>> I guess there are no hi-magenta and hi-cyan faces because
>> Isearch uses the magenta color for the current match and the
>> cyan color for lazy-highlighted matches.
>> 
>> But OTOH, on TTY magenta and cyan are used from hi-pink and hi-blue,
>> and there is no problem, so we can define two new hi-lock faces.

The existing hi-blue face's color "light blue" is closer to the existing
lazy-highlight face's color "paleturquoise" than to the new hi-cyan
face's color "DarkSlateGray1" proposed in the patch below, so this
color choice will be better then existing:

diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el
index 08b58117dd..95d7f867df 100644
--- a/lisp/hi-lock.el
+++ b/lisp/hi-lock.el
@@ -157,8 +157,11 @@ hi-yellow
   :group 'hi-lock-faces)
 
 (defface hi-pink
-  '((((background dark)) (:background "pink" :foreground "black"))
-    (t (:background "pink")))
+  '((((min-colors 88) (background dark))
+     (:background "pink" :foreground "black"))
+    (((background dark)) (:background "red" :foreground "black"))
+    (((min-colors 88)) (:background "pink"))
+    (t (:background "red")))
   "Face for hi-lock mode."
   :group 'hi-lock-faces)
 
@@ -172,8 +175,29 @@ hi-green
   :group 'hi-lock-faces)
 
 (defface hi-blue
-  '((((background dark)) (:background "light blue" :foreground "black"))
-    (t (:background "light blue")))
+  '((((min-colors 88) (background dark))
+     (:background "light blue" :foreground "black"))
+    (((background dark)) (:background "blue" :foreground "black"))
+    (((min-colors 88)) (:background "light blue"))
+    (t (:background "blue")))
+  "Face for hi-lock mode."
+  :group 'hi-lock-faces)
+
+(defface hi-magenta
+  '((((min-colors 88) (background dark))
+     (:background "orchid1" :foreground "black"))
+    (((background dark)) (:background "magenta" :foreground "black"))
+    (((min-colors 88)) (:background "orchid1"))
+    (t (:background "magenta")))
+  "Face for hi-lock mode."
+  :group 'hi-lock-faces)
+
+(defface hi-cyan
+  '((((min-colors 88) (background dark))
+     (:background "DarkSlateGray1" :foreground "black"))
+    (((background dark)) (:background "cyan" :foreground "black"))
+    (((min-colors 88)) (:background "DarkSlateGray1"))
+    (t (:background "cyan")))
   "Face for hi-lock mode."
   :group 'hi-lock-faces)
 
@@ -189,13 +213,13 @@ hi-blue-b
   :group 'hi-lock-faces)
 
 (defface hi-green-b
-  '((((min-colors 88)) (:weight bold :foreground "green1"))
+  '((((min-colors 88)) (:weight bold :foreground "green3"))
     (t (:weight bold :foreground "green")))
   "Face for hi-lock mode."
   :group 'hi-lock-faces)
 
 (defface hi-red-b
-  '((((min-colors 88)) (:weight bold :foreground "red1"))
+  '((((min-colors 88)) (:weight bold :foreground "firebrick2"))
     (t (:weight bold :foreground "red")))
   "Face for hi-lock mode."
   :group 'hi-lock-faces)
@@ -216,8 +240,8 @@ hi-lock-interactive-patterns
 (define-obsolete-variable-alias 'hi-lock-face-history
                                 'hi-lock-face-defaults "23.1")
 (defvar hi-lock-face-defaults
-  '("hi-yellow" "hi-pink" "hi-green" "hi-blue" "hi-black-b"
-    "hi-blue-b" "hi-red-b" "hi-green-b" "hi-black-hb")
+  '("hi-yellow" "hi-pink" "hi-green" "hi-blue" "hi-magenta" "hi-cyan"
+    "hi-black-b" "hi-blue-b" "hi-red-b" "hi-green-b" "hi-black-hb")
   "Default faces for hi-lock interactive functions.")
 
 (define-obsolete-variable-alias 'hi-lock-regexp-history