3 changes: 2 additions & 1 deletion helm-help.el
Expand Up @@ -24,7 +24,8 @@
:group 'helm)

(defface helm-helper
'((t :inherit helm-header))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit helm-header))
"Face for Helm help string in minibuffer."
:group 'helm-help)

Expand Down
3 changes: 2 additions & 1 deletion helm-locate.el
Expand Up @@ -137,7 +137,8 @@ embedded help for more infos."
map))

(defface helm-locate-finish
'((t (:foreground "Green")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "Green"))
"Face used in mode line when locate process is finish."
:group 'helm-locate)

Expand Down
6 changes: 4 additions & 2 deletions helm-misc.el
Expand Up @@ -45,12 +45,14 @@
:type '(alist :key-type string :value-type function))

(defface helm-time-zone-current
'((t (:foreground "green")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "green"))
"Face used to colorize current time in `helm-world-time'."
:group 'helm-misc)

(defface helm-time-zone-home
'((t (:foreground "red")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "red"))
"Face used to colorize home time in `helm-world-time'."
:group 'helm-misc)

Expand Down
3 changes: 2 additions & 1 deletion helm-mode.el
Expand Up @@ -189,7 +189,8 @@ and all functions belonging in this list from `minibuffer-setup-hook'.
This is mainly needed to prevent \"*Completions*\" buffers to popup.")

(defface helm-mode-prefix
'((t (:background "red" :foreground "black")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
(:background "red" :foreground "black")))
"Face used for prefix completion."
:group 'helm-mode)

Expand Down
6 changes: 4 additions & 2 deletions helm-occur.el
Expand Up @@ -120,12 +120,14 @@ Note that when using `buffer-substring' initialization will be slower."


(defface helm-moccur-buffer
'((t (:foreground "DarkTurquoise" :underline t)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
(:foreground "DarkTurquoise" :underline t)))
"Face used to highlight occur buffer names."
:group 'helm-occur)

(defface helm-resume-need-update
'((t (:background "red")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
(:background "red")))
"Face used to flash occur buffer when it needs update."
:group 'helm-occur)

Expand Down
3 changes: 2 additions & 1 deletion helm-sys.el
Expand Up @@ -28,7 +28,8 @@
:group 'helm)

(defface helm-top-columns
'((t :inherit helm-header))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit helm-header))
"Face for helm help string in minibuffer."
:group 'helm-sys)

Expand Down
5 changes: 3 additions & 2 deletions helm-tags.el
Expand Up @@ -64,8 +64,9 @@ one match."
:group 'helm-faces)

(defface helm-etags-file
'((t (:foreground "Lightgoldenrod4"
:underline t)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "Lightgoldenrod4"
:underline t))
"Face used to highlight etags filenames."
:group 'helm-tags-faces)

Expand Down
6 changes: 4 additions & 2 deletions helm-utils.el
Expand Up @@ -211,12 +211,14 @@ last position is added to the register `helm-save-pos-before-jump-register'.")
;;; Faces.
;;
(defface helm-selection-line
'((t (:inherit highlight :distant-foreground "black")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit highlight :distant-foreground "black"))
"Face used in the `helm-current-buffer' when jumping to a candidate."
:group 'helm-faces)

(defface helm-match-item
'((t (:inherit isearch)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit isearch))
"Face used to highlight the item matched in a selected line."
:group 'helm-faces)

Expand Down
82 changes: 59 additions & 23 deletions helm.el
Expand Up @@ -883,88 +883,124 @@ You can toggle later `truncate-lines' with
:group 'helm)

(defface helm-source-header
'((((background dark))
`((((background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "#22083397778B"
:foreground "white"
:weight bold :height 1.3 :family "Sans Serif")
(((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "#abd7f0"
:foreground "black"
:weight bold :height 1.3 :family "Sans Serif"))
"Face for source header in the Helm buffer."
:group 'helm-faces)

(defface helm-visible-mark
'((((min-colors 88) (background dark))
(:background "green1" :foreground "black"))
`((((min-colors 88) (background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "green1"
:foreground "black")
(((background dark))
(:background "green" :foreground "black"))
(((background light)) :background "#d1f5ea")
,@(and (>= emacs-major-version 27) '(:extend t))
:background "green"
:foreground "black")
(((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "#d1f5ea")
(((min-colors 88))
(:background "green1"))
(t (:background "green")))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "green1")
(t ,@(and (>= emacs-major-version 27) '(:extend t))
:background "green"))
"Face for visible mark."
:group 'helm-faces)

(defface helm-header
'((t (:inherit header-line)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit header-line))
"Face for header lines in the Helm buffer."
:group 'helm-faces)

(defface helm-candidate-number
'((((background dark)) :background "Yellow" :foreground "black")
(((background light)) :background "#faffb5" :foreground "black"))
`((((background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "Yellow" :foreground "black")
(((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "#faffb5" :foreground "black"))
"Face for candidate number in mode-line."
:group 'helm-faces)

(defface helm-candidate-number-suspended
'((t (:inherit helm-candidate-number :inverse-video t)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit helm-candidate-number :inverse-video t))
"Face for candidate number in mode-line when Helm is suspended."
:group 'helm-faces)

(defface helm-selection
'((((background dark)) :background "ForestGreen"
`((((background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "ForestGreen"
:distant-foreground "black")
(((background light)) :background "#b5ffd1"
(((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:background "#b5ffd1"
:distant-foreground "black"))
"Face for currently selected item in the Helm buffer."
:group 'helm-faces)

(defface helm-separator
'((((background dark)) :foreground "red")
(((background light)) :foreground "#ffbfb5"))
`((((background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "red")
(((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "#ffbfb5"))
"Face for multiline source separator."
:group 'helm-faces)

(defface helm-action
'((t (:underline t)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:underline t))
"Face for action lines in the Helm action buffer."
:group 'helm-faces)

(defface helm-prefarg
'((((background dark)) :foreground "green")
(((background light)) :foreground "red"))
`((((background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "green")
(((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "red"))
"Face for showing prefix arg in mode-line."
:group 'helm-faces)

(defface helm-match
'((((background light)) :foreground "#b00000")
(((background dark)) :foreground "gold1"))
`((((background light))
,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "#b00000")
(((background dark))
,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "gold1"))
"Face used to highlight matches."
:group 'helm-faces)

(defface helm-header-line-left-margin
'((t (:foreground "black" :background "yellow")))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:foreground "black" :background "yellow"))
"Face used to highlight helm-header sign in left-margin."
:group 'helm-faces)

(defface helm-minibuffer-prompt
'((t (:inherit minibuffer-prompt)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit minibuffer-prompt))
"Face used for the minibuffer/headline prompt (such as Pattern:) in Helm."
:group 'helm-faces)

(defface helm-eob-line
'((t (:inherit default)))
`((t ,@(and (>= emacs-major-version 27) '(:extend t))
:inherit default))
"Face for empty line at end of sources in the Helm buffer.
Allow specifying the height of this line."
:group 'helm-faces)
Expand Down