emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/ef-themes b2f134ed6c 2/2: Add ef-owl theme


From: ELPA Syncer
Subject: [elpa] externals/ef-themes b2f134ed6c 2/2: Add ef-owl theme
Date: Mon, 19 Aug 2024 06:58:02 -0400 (EDT)

branch: externals/ef-themes
commit b2f134ed6c4fb7a6b0b78378842792bee1e24d0c
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>

    Add ef-owl theme
---
 contrast-ratios.org |  65 ++++++++++
 ef-owl-theme.el     | 348 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 ef-themes.el        |   1 +
 3 files changed, 414 insertions(+)

diff --git a/contrast-ratios.org b/contrast-ratios.org
index 0d112c140f..ea0c685d28 100644
--- a/contrast-ratios.org
+++ b/contrast-ratios.org
@@ -1547,6 +1547,71 @@ a tone.  Blue is okay.
 | #242e39 |    10245 |     1.42 |
 #+TBLFM: $2='(Δ $1 @1$1) :: $3='(Λ $1 @1$1);%.2f
 
+* ef-owl
+:PROPERTIES:
+:CUSTOM_ID: h:1593749c-d874-4252-ac78-7345b67bc16f
+:END:
+
+** Base colours
+:PROPERTIES:
+:CUSTOM_ID: h:e6f75663-0cea-43d7-b503-9460417ad620
+:END:
+
+| Name           |         | #292c2f | #393c3f | #404245 | #333539 |
+|----------------+---------+---------+---------+---------+---------|
+| fg-main        | #d0d0d0 |    9.10 |    7.20 |    6.54 |    7.97 |
+| fg-dim         | #857f8f |    3.63 |    2.87 |    2.61 |    3.18 |
+| fg-alt         | #aab9af |    6.87 |    5.43 |    4.93 |    6.01 |
+| red            | #d67869 |    4.51 |    3.57 |    3.24 |    3.95 |
+| red-warmer     | #df885f |    5.23 |    4.14 |    3.76 |    4.58 |
+| red-cooler     | #e4959f |    6.08 |    4.81 |    4.37 |    5.32 |
+| red-faint      | #eba0af |    6.81 |    5.38 |    4.89 |    5.96 |
+| green          | #70bb70 |    6.04 |    4.77 |    4.34 |    5.28 |
+| green-warmer   | #98c06f |    6.76 |    5.34 |    4.85 |    5.91 |
+| green-cooler   | #67bb97 |    6.11 |    4.83 |    4.38 |    5.34 |
+| green-faint    | #9fb3a7 |    6.34 |    5.01 |    4.55 |    5.55 |
+| yellow         | #c09f6f |    5.64 |    4.46 |    4.05 |    4.93 |
+| yellow-warmer  | #d1a45f |    6.14 |    4.86 |    4.41 |    5.38 |
+| yellow-cooler  | #cf9f90 |    6.03 |    4.76 |    4.33 |    5.27 |
+| yellow-faint   | #cbb0a0 |    6.86 |    5.42 |    4.92 |    6.00 |
+| blue           | #8fa4e5 |    5.76 |    4.55 |    4.13 |    5.04 |
+| blue-warmer    | #a0a0ef |    5.86 |    4.63 |    4.21 |    5.13 |
+| blue-cooler    | #72aff0 |    6.09 |    4.81 |    4.37 |    5.33 |
+| blue-faint     | #aabae0 |    7.23 |    5.71 |    5.19 |    6.32 |
+| magenta        | #e5a0ea |    7.05 |    5.57 |    5.06 |    6.17 |
+| magenta-warmer | #d389af |    5.33 |    4.21 |    3.82 |    4.66 |
+| magenta-cooler | #cfa0e8 |    6.58 |    5.20 |    4.73 |    5.76 |
+| magenta-faint  | #e0bbdf |    8.25 |    6.52 |    5.93 |    7.22 |
+| cyan           | #8fb8ea |    6.83 |    5.40 |    4.90 |    5.98 |
+| cyan-warmer    | #99bfd0 |    7.17 |    5.66 |    5.14 |    6.27 |
+| cyan-cooler    | #7ac4b7 |    6.96 |    5.50 |    5.00 |    6.09 |
+| cyan-faint     | #a2c5d8 |    7.70 |    6.09 |    5.53 |    6.74 |
+#+TBLFM: $3='(Λ $2 @1$3);%.2f :: $4='(Λ $2 @1$4);%.2f :: $5='(Λ $2 @1$5);%.2f 
:: $6='(Λ $2 @1$6);%.2f
+
+** Special colours against the modeline
+:PROPERTIES:
+:CUSTOM_ID: h:a2526c91-5f18-4ae7-acab-e2c827db5811
+:END:
+
+| Name             |         | #5b637e |
+|------------------+---------+---------|
+| modeline-err     | #ffd2ff |    4.51 |
+| modeline-warning | #e4e947 |    4.54 |
+| modeline-info    | #8defff |    4.51 |
+#+TBLFM: $3='(Λ $2 @1$3);%.2f
+
+** Distance and contrast between main backgrounds
+:PROPERTIES:
+:CUSTOM_ID: h:24e7a52b-26bb-4f7b-b5e8-51b84ba56f30
+:END:
+
+# bg-main / bg-dim, bg-main / bg-alt
+| #292c2f | distance | contrast |
+|---------+----------+----------|
+| #393c3f |     2322 |     1.27 |
+| #404245 |     4490 |     1.39 |
+#+TBLFM: $2='(Δ $1 @1$1) :: $3='(Λ $1 @1$1);%.2f
+
 * ef-reverie
 :PROPERTIES:
 :CUSTOM_ID: h:eea07b9c-81ea-4158-b7d6-79dcc8217b8b
diff --git a/ef-owl-theme.el b/ef-owl-theme.el
new file mode 100644
index 0000000000..4a60b2ec28
--- /dev/null
+++ b/ef-owl-theme.el
@@ -0,0 +1,348 @@
+;;; ef-owl-theme.el --- Legible dark theme with blue, cyan, magenta and 
desaturated colors -*- lexical-binding:t -*-
+
+;; Copyright (C) 2022-2024  Free Software Foundation, Inc.
+
+;; Author: Protesilaos Stavrou <info@protesilaos.com>
+;; Maintainer: Protesilaos Stavrou <info@protesilaos.com>
+;; URL: https://github.com/protesilaos/ef-themes
+;; Keywords: faces, theme, accessibility
+
+;; This file is NOT part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+;;
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+;;
+;; The `ef-themes' are a collection of light and dark themes for GNU
+;; Emacs whose goal is to provide colorful ("pretty") yet legible
+;; options for users who want something with a bit more flair than the
+;; `modus-themes' (also designed by me).
+
+;;; Code:
+
+
+
+(eval-and-compile
+  (require 'ef-themes)
+
+;;;###theme-autoload
+  (deftheme ef-owl
+    "Legible dark theme with blue, cyan, magenta and desaturated colors."
+    :background-mode 'dark
+    :kind 'color-scheme
+    :family 'ef)
+
+  (defconst ef-owl-palette
+    '(
+;;; Basic values
+
+      (bg-main     "#292c2f")
+      (fg-main     "#d0d0d0")
+      (bg-dim      "#393c3f")
+      (fg-dim      "#857f8f")
+      (bg-alt      "#404245")
+      (fg-alt      "#aab9af")
+
+      (bg-active   "#606265")
+      (bg-inactive "#333539")
+
+;;; Basic hues for foreground values
+
+      (red             "#d67869")
+      (red-warmer      "#df885f")
+      (red-cooler      "#e4959f")
+      (red-faint       "#eba0af")
+      (green           "#70bb70")
+      (green-warmer    "#98c06f")
+      (green-cooler    "#67bb97")
+      (green-faint     "#9fb3a7")
+      (yellow          "#c09f6f")
+      (yellow-warmer   "#d1a45f")
+      (yellow-cooler   "#cf9f90")
+      (yellow-faint    "#cbb0a0")
+      (blue            "#8fa4e5")
+      (blue-warmer     "#a0a0ef")
+      (blue-cooler     "#72aff0")
+      (blue-faint      "#aabae0")
+      (magenta         "#e5a0ea")
+      (magenta-warmer  "#d389af")
+      (magenta-cooler  "#cfa0e8")
+      (magenta-faint   "#e0bbdf")
+      (cyan            "#8fb8ea")
+      (cyan-warmer     "#99bfd0")
+      (cyan-cooler     "#7ac4b7")
+      (cyan-faint      "#a2c5d8")
+
+;;; Basic hues for background values
+
+      (bg-red-intense     "#a02f50")
+      (bg-green-intense   "#30682f")
+      (bg-yellow-intense  "#8f665f")
+      (bg-blue-intense    "#4f509f")
+      (bg-magenta-intense "#885997")
+      (bg-cyan-intense    "#4f70aa")
+
+      (bg-red-subtle      "#682a33")
+      (bg-green-subtle    "#2f502f")
+      (bg-yellow-subtle   "#5a4020")
+      (bg-blue-subtle     "#3a3980")
+      (bg-magenta-subtle  "#553977")
+      (bg-cyan-subtle     "#22526a")
+
+;;; Diffs
+
+      (bg-added          "#304a4f")
+      (bg-added-faint    "#16383f")
+      (bg-added-refine   "#2f6767")
+      (fg-added          "#a0d0f0")
+
+      (bg-changed        "#51512f")
+      (bg-changed-faint  "#40332f")
+      (bg-changed-refine "#64651f")
+      (fg-changed        "#dada90")
+
+      (bg-removed        "#5a3142")
+      (bg-removed-faint  "#4a2034")
+      (bg-removed-refine "#782a4a")
+      (fg-removed        "#f0bfcf")
+
+;;; Graphs
+
+      (bg-graph-red-0     "#b52c2c")
+      (bg-graph-red-1     "#702020")
+      (bg-graph-green-0   "#0fed00")
+      (bg-graph-green-1   "#007800")
+      (bg-graph-yellow-0  "#f1e00a")
+      (bg-graph-yellow-1  "#b08940")
+      (bg-graph-blue-0    "#2fafef")
+      (bg-graph-blue-1    "#1f2f8f")
+      (bg-graph-magenta-0 "#bf94fe")
+      (bg-graph-magenta-1 "#5f509f")
+      (bg-graph-cyan-0    "#47dfea")
+      (bg-graph-cyan-1    "#00808f")
+
+;;; Special hues
+
+      (bg-mode-line       "#5b637e")
+      (fg-mode-line       "#dadfe5")
+      (bg-completion      "#354864")
+      (bg-hover           "#706a5f")
+      (bg-hover-secondary "#335769")
+      (bg-hl-line         "#344255")
+      (bg-paren           "#706069")
+      (bg-err             "#4f231f") ; check with err
+      (bg-warning         "#3a390f") ; check with warning
+      (bg-info            "#104422") ; check with info
+
+      (border        "#4f5f66")
+      (cursor        "#afe6ef")
+      (fg-intense    "#ffffff")
+
+      (modeline-err     "#ffd2ff")
+      (modeline-warning "#e4e947")
+      (modeline-info    "#8defff")
+
+      (underline-err     "#df4f2f")
+      (underline-warning "#d4c000")
+      (underline-info    "#22b022")
+
+      (bg-char-0 "#0050af")
+      (bg-char-1 "#7f1f7f")
+      (bg-char-2 "#625a00")
+
+;;; Mappings
+
+;;;; General mappings
+
+      (bg-fringe unspecified)
+      (fg-fringe unspecified)
+
+      (err red-warmer)
+      (warning yellow-warmer)
+      (info green)
+
+      (link cyan-warmer)
+      (link-alt yellow-cooler)
+      (name blue)
+      (keybind green-cooler)
+      (identifier magenta-faint)
+      (prompt blue-cooler)
+
+      (bg-region "#404f66")
+      (fg-region unspecified)
+
+;;;; Code mappings
+
+      (builtin blue)
+      (comment yellow-faint)
+      (constant green)
+      (fnname yellow-cooler)
+      (keyword cyan-warmer)
+      (preprocessor cyan-cooler)
+      (docstring green-faint)
+      (string green-cooler)
+      (type magenta-cooler)
+      (variable blue-warmer)
+      (rx-escape blue-cooler) ; compare with `string'
+      (rx-construct red-warmer)
+
+;;;; Accent mappings
+
+      (accent-0 cyan-warmer)
+      (accent-1 yellow-cooler)
+      (accent-2 red)
+      (accent-3 green)
+
+;;;; Date mappings
+
+      (date-common cyan-cooler)
+      (date-deadline red)
+      (date-event fg-alt)
+      (date-holiday red)
+      (date-now fg-main)
+      (date-range fg-alt)
+      (date-scheduled yellow)
+      (date-weekday cyan-cooler)
+      (date-weekend red-faint)
+
+;;;; Prose mappings
+
+      (prose-code magenta-warmer)
+      (prose-done green)
+      (prose-macro green-cooler)
+      (prose-metadata fg-dim)
+      (prose-metadata-value fg-alt)
+      (prose-table fg-alt)
+      (prose-table-formula err)
+      (prose-tag yellow-faint)
+      (prose-todo red-warmer)
+      (prose-verbatim blue)
+
+;;;; Mail mappings
+
+      (mail-cite-0 cyan)
+      (mail-cite-1 green-cooler)
+      (mail-cite-2 blue-warmer)
+      (mail-cite-3 yellow-cooler)
+      (mail-part magenta-faint)
+      (mail-recipient cyan-warmer)
+      (mail-subject blue-cooler)
+      (mail-other cyan-cooler)
+
+;;;; Search mappings
+
+      (bg-search-current bg-yellow-intense)
+      (bg-search-lazy bg-cyan-intense)
+      (bg-search-replace bg-red-intense)
+
+      (bg-search-rx-group-0 bg-magenta-intense)
+      (bg-search-rx-group-1 bg-green-intense)
+      (bg-search-rx-group-2 bg-red-subtle)
+      (bg-search-rx-group-3 bg-cyan-subtle)
+
+;;;; Space mappings
+
+      (bg-space unspecified)
+      (fg-space border)
+      (bg-space-err bg-yellow-intense)
+
+;;;; Tab mappings
+
+      (bg-tab-bar      bg-alt)
+      (bg-tab-current  bg-main)
+      (bg-tab-other    bg-active)
+
+;;;; Terminal mappings
+
+      (bg-term-black           "black")
+      (fg-term-black           "black")
+      (bg-term-black-bright    "gray35")
+      (fg-term-black-bright    "gray35")
+
+      (bg-term-red             red)
+      (fg-term-red             red)
+      (bg-term-red-bright      red-warmer)
+      (fg-term-red-bright      red-warmer)
+
+      (bg-term-green           green)
+      (fg-term-green           green)
+      (bg-term-green-bright    green-warmer)
+      (fg-term-green-bright    green-warmer)
+
+      (bg-term-yellow          yellow)
+      (fg-term-yellow          yellow)
+      (bg-term-yellow-bright   yellow-cooler)
+      (fg-term-yellow-bright   yellow-cooler)
+
+      (bg-term-blue            blue)
+      (fg-term-blue            blue)
+      (bg-term-blue-bright     blue-cooler)
+      (fg-term-blue-bright     blue-cooler)
+
+      (bg-term-magenta         magenta)
+      (fg-term-magenta         magenta)
+      (bg-term-magenta-bright  magenta-cooler)
+      (fg-term-magenta-bright  magenta-cooler)
+
+      (bg-term-cyan            cyan-warmer)
+      (fg-term-cyan            cyan-warmer)
+      (bg-term-cyan-bright     cyan-cooler)
+      (fg-term-cyan-bright     cyan-cooler)
+
+      (bg-term-white           "gray65")
+      (fg-term-white           "gray65")
+      (bg-term-white-bright    "white")
+      (fg-term-white-bright    "white")
+
+;;;; Rainbow mappings
+
+      (rainbow-0 green-cooler)
+      (rainbow-1 blue)
+      (rainbow-2 magenta-warmer)
+      (rainbow-3 cyan-cooler)
+      (rainbow-4 yellow-cooler)
+      (rainbow-5 magenta-cooler)
+      (rainbow-6 red-cooler)
+      (rainbow-7 green-warmer)
+      (rainbow-8 yellow))
+    "The `ef-owl' palette.
+Color values have the form (COLOR-NAME HEX-VALUE) with the former
+as a symbol and the latter as a string.
+
+Semantic color mappings have the form (MAPPING-NAME COLOR-NAME)
+with both as symbols.  The latter is a color that already exists
+in the palette and is associated with a HEX-VALUE.")
+
+  (defcustom ef-owl-palette-overrides nil
+    "Overrides for `ef-owl-palette'.
+
+Mirror the elements of the aforementioned palette, overriding
+their value.
+
+For overrides that are shared across all of the Ef themes,
+refer to `ef-themes-common-palette-overrides'.
+
+To preview the palette entries, use `ef-themes-preview-colors' or
+`ef-themes-preview-colors-current' (read the documentation for
+further details)."
+  :group 'ef-themes
+  :package-version '(ef-themes . "1.0.0")
+  :type '(repeat (list symbol (choice symbol string)))
+  :link '(info-link "(ef-themes) Palette overrides"))
+
+  (ef-themes-theme ef-owl ef-owl-palette ef-owl-palette-overrides)
+
+  (provide-theme 'ef-owl))
+
+;;; ef-owl-theme.el ends here
diff --git a/ef-themes.el b/ef-themes.el
index 6449560c93..b127f6b251 100644
--- a/ef-themes.el
+++ b/ef-themes.el
@@ -89,6 +89,7 @@
     ef-maris-dark
     ef-melissa-dark
     ef-night
+    ef-owl
     ef-rosa
     ef-symbiosis
     ef-trio-dark



reply via email to

[Prev in Thread] Current Thread [Next in Thread]