From d723fb410caa86c3ddf4bf7357702589450d6cb5 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Sat, 17 Aug 2024 12:31:52 -0400 Subject: [PATCH 1/9] theme: Add Tokyo Night variants (Light and Storm) --- doom-themes.el | 2 + themes/doom-tokyo-night-light-theme.el | 293 ++++++++++++++++++++++++ themes/doom-tokyo-night-storm-theme.el | 295 +++++++++++++++++++++++++ 3 files changed, 590 insertions(+) create mode 100644 themes/doom-tokyo-night-light-theme.el create mode 100644 themes/doom-tokyo-night-storm-theme.el diff --git a/doom-themes.el b/doom-themes.el index 29ae5f3e..c2db1b13 100644 --- a/doom-themes.el +++ b/doom-themes.el @@ -86,6 +86,8 @@ ;; - doom-sourcerer -- a port of xero's Sourcerer (ported by @fm0xb) ;; - doom-spacegrey -- I'm sure you've heard of it (ported by @teesloane) ;; - doom-tokyo-night -- inspired by VSCode's Tokyo Night theme (ported by @FosterHangdaan) +;; - doom-tokyo-night-light -- a light variant of Tokyo Night (ported by @foster-hangdaan) +;; - doom-tokyo-night-storm -- a variant of Tokyo Night with a lighter background. (ported by @foster-hangdaan) ;; - doom-tomorrow-day -- a light variant of Tomorrow (ported by @emacswatcher) ;; - doom-tomorrow-night -- One of the dark variants of Tomorrow (ported by @hlissner) ;; - doom-vibrant -- a more vibrant variant of doom-one (ported by @hlissner) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el new file mode 100644 index 00000000..d2562c18 --- /dev/null +++ b/themes/doom-tokyo-night-light-theme.el @@ -0,0 +1,293 @@ +;;; doom-tokyo-night-light-theme.el --- inspired by VSCode's Tokyo Night theme -*- lexical-binding: t; no-byte-compile: t; -*- +;; +;; Added: August 17, 2024 +;; Author: Foster Hangdaan +;; Maintainer: +;; Source: https://github.com/enkia/tokyo-night-vscode-theme +;; +;;; Commentary: +;;; Code: + +(require 'doom-themes) + + +;; +;;; Variables + +(defgroup doom-tokyo-night-light-theme nil + "Options for doom-themes." + :group 'doom-themes) + +(defcustom doom-tokyo-night-light-brighter-modeline nil + "If non-nil, more vivid colors will be used to style the mode-line." + :group 'doom-tokyo-night-light-theme + :type 'boolean) + +(defcustom doom-tokyo-night-light-brighter-comments nil + "If non-nil, comments will be highlighted in more vivid colors." + :group 'doom-tokyo-night-light-theme + :type 'boolean) + +(defcustom doom-tokyo-night-light-comment-bg doom-tokyo-night-light-brighter-comments + "If non-nil, comments will have a subtle, darker background. Enhancing their legibility." + :group 'doom-tokyo-night-light-theme + :type 'boolean) + +(defcustom doom-tokyo-night-light-padded-modeline nil + "If non-nil, adds a 4px padding to the mode-line. Can be an integer to determine the exact padding." + :group 'doom-tokyo-night-light-theme + :type '(or integer boolean)) + + +;; +;;; Theme definition + +(def-doom-theme doom-tokyo-night-light + "A light variant of Tokyo Night." + + ; Color Scheme + ; gui 256 + ; "#8c4351" "#8c4351" => This keyword, HTML elements, Regex group symbol, CSS units, Terminal Red + ; "#965027" "#965027" => Number and Boolean constants, Language support constants + ; "#8f5e15" "#8f5e15" => Function parameters, Regex character sets, Terminal Yellow + ; "#634f30" "#634f30" => Parameters inside functions (semantic highlighting only) + ; "#385f0d" "#385f0d" => Strings, CSS class names + ; "#33635c" "#33635c" => Object literal keys, Markdown links, Regex literal strings, Terminal Green + ; "#006c86" "#006c86" => Language support functions, CSS HTML elements + ; "#0f4b6e" "#0f4b6e" => Object properties, Regex quantifiers and flags, Markdown headings, Terminal Cyan, Markdown code, Import/export keywords + ; "#2959aa" "#2959aa" => Function names, CSS property names, Markdown Headings, Terminal Blue + ; "#5a3e8e" "#5a3e8e" => Control Keywords, Storage Types, Regex symbols and operators, HTML Attributes, Terminal Magenta + ; "#707280" "#707280" => Terminal White + ; "#40434f" "#40434f" => Markdown Text, HTML Text + ; "#343b58" "#343b58" => Editor foreground, Variables, Class names, Terminal black + ; "#6c6e75" "#6c6e75" => Comments + ; "#e6e7ed" "#e6e7ed" => Editor background + + ;; name default 256 16 + ((bg '("#e6e7ed" nil nil )) + (bg-alt '("#d4d6e0" nil nil )) + (base0 '("#707280" "#707280" "white" )) + (base1 '("#797b8a" "#797b8a" "brightwhite" )) + (base2 '("#838593" "#838593" "brightwhite" )) + (base3 '("#8d8f9c" "#8d8f9c" "brightwhite" )) + (base4 '("#989aa5" "#989aa5" "brightwhite" )) + (base5 '("#a2a4ae" "#a2a4ae" "brightwhite" )) + (base6 '("#acaeb7" "#acaeb7" "brightwhite" )) + (base7 '("#b7b8c0" "#b7b8c0" "brightwhite" )) + (base8 '("#c1c2c9" "#c1c2c9" "brightwhite" )) + (fg-alt '("#475178" "#475178" "brightblack" )) + (fg '("#343b58" "#343b58" "black" )) + + (grey base4) + (red '("#8c4351" "#8c4351" "red" )) + (orange '("#965027" "#965027" "brightred" )) + (green '("#33635c" "#33635c" "green" )) + (teal '("#006c86" "#006c86" "brightgreen" )) + (yellow '("#8f5e15" "#8f5e15" "yellow" )) + (blue '("#2959aa" "#2959aa" "brightblue" )) + (dark-blue '("#2959aa" "#2959aa" "blue" )) + (magenta '("#5a3e8e" "#5a3e8e" "magenta" )) + (violet '("#40434f" "#40434f" "brightmagenta")) + (cyan '("#0f4b6e" "#0f4b6e" "brightcyan" )) + (dark-cyan '("#0f4b6e" "#0f4b6e" "cyan" )) + ; Additional custom colors + (dark-green '("#385f0d" "#385f0d" "green" )) + (brown '("#634f30" "#634f30" "yellow" )) + + ;; face categories -- required for all themes + (highlight cyan) + (vertical-bar (doom-lighten bg 0.05)) + (selection base5) + (builtin red) + (comments (if doom-tokyo-night-light-brighter-comments (doom-lighten "#6c6e75" 0.25) "#6c6e75")) + (doc-comments (doom-lighten (if doom-tokyo-night-light-brighter-comments (doom-lighten "#6c6e75" 0.25) "#6c6e75") 0.25)) + (constants orange) + (functions blue) + (keywords magenta) + (methods blue) + (operators teal) + (type base0) + (strings dark-green) + (variables fg) + (numbers orange) + (region (doom-lighten base8 0.15)) + (error red) + (warning yellow) + (success green) + (vc-modified orange) + (vc-added green) + (vc-deleted red) + + ;; custom categories + (hidden `(,(car bg) "black" "black")) + (-modeline-bright doom-tokyo-night-light-brighter-modeline) + (-modeline-pad + (when doom-tokyo-night-light-padded-modeline + (if (integerp doom-tokyo-night-light-padded-modeline) doom-tokyo-night-light-padded-modeline 4))) + + (modeline-fg 'unspecified) + (modeline-fg-alt base5) + + (modeline-bg + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.15) ,@(cdr base0)))) + (modeline-bg-l + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.1) ,@(cdr base0)))) + (modeline-bg-inactive (doom-darken bg 0.1)) + (modeline-bg-inactive-l `(,(car bg) ,@(cdr base1)))) + + + ;; --- Extra Faces ------------------------ + ( + ((line-number-current-line &override) :foreground fg) + ((line-number &override) :foreground comments :background (doom-darken bg 0.025)) + + (font-lock-comment-face + :foreground comments + :background (if doom-tokyo-night-light-comment-bg (doom-lighten bg 0.05) 'unspecified)) + (font-lock-doc-face + :inherit 'font-lock-comment-face + :foreground doc-comments) + + ;;; Doom Modeline + (doom-modeline-bar :background (if -modeline-bright modeline-bg highlight)) + (doom-modeline-buffer-path :foreground fg :weight 'normal) + (doom-modeline-buffer-file :foreground brown :weight 'normal) + + (mode-line + :background modeline-bg :foreground modeline-fg + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg))) + (mode-line-inactive + :background modeline-bg-inactive :foreground modeline-fg-alt + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive))) + (mode-line-emphasis + :foreground (if -modeline-bright base8 highlight)) + (mode-line-buffer-id + :foreground highlight) + + ;;; Indentation + (whitespace-indentation :background bg) + (whitespace-tab :background bg) + + ;;; Ivy + (ivy-subdir :foreground blue) + (ivy-minibuffer-match-face-1 :foreground green :background bg-alt) + (ivy-minibuffer-match-face-2 :foreground orange :background bg-alt) + (ivy-minibuffer-match-face-3 :foreground red :background bg-alt) + (ivy-minibuffer-match-face-4 :foreground yellow :background bg-alt) + + ;;; Elscreen + (elscreen-tab-other-screen-face :background "#353a42" :foreground "#1e2022") + + ;;; Solaire + (solaire-mode-line-face + :inherit 'mode-line + :background modeline-bg-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-l))) + (solaire-mode-line-inactive-face + :inherit 'mode-line-inactive + :background modeline-bg-inactive-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive-l))) + + ;;; Telephone + (telephone-line-accent-active + :inherit 'mode-line + :background (doom-lighten bg 0.2)) + (telephone-line-accent-inactive + :inherit 'mode-line + :background (doom-lighten bg 0.05)) + (telephone-line-evil-emacs + :inherit 'mode-line + :background dark-blue) + + ;;;; rainbow-delimiters + (rainbow-delimiters-depth-1-face :foreground fg) + (rainbow-delimiters-depth-2-face :foreground blue) + (rainbow-delimiters-depth-3-face :foreground orange) + (rainbow-delimiters-depth-4-face :foreground green) + (rainbow-delimiters-depth-5-face :foreground cyan) + (rainbow-delimiters-depth-6-face :foreground yellow) + (rainbow-delimiters-depth-7-face :foreground teal) + + ;;; Treemacs + (treemacs-root-face :foreground magenta :weight 'bold :height 1.2) + (doom-themes-treemacs-root-face :foreground magenta :weight 'ultra-bold :height 1.2) + (doom-themes-treemacs-file-face :foreground fg-alt) + (treemacs-directory-face :foreground base8) + (treemacs-file-face :foreground fg) + (treemacs-git-modified-face :foreground green) + (treemacs-git-renamed-face :foreground yellow) + + ;;; Magit + (magit-section-heading :foreground blue) + (magit-branch-remote :foreground orange) + (magit-diff-our :foreground (doom-darken red 0.2) :background (doom-darken red 0.7)) + (magit-diff-our-highlight :foreground red :background (doom-darken red 0.5) :weight 'bold) + (magit-diff-removed :foreground (doom-darken red 0.2) :background (doom-darken red 0.7)) + (magit-diff-removed-highlight :foreground red :background (doom-darken red 0.5) :weight 'bold) + + ;; --- Major-Mode Faces ------------------- + ;;; elisp + (highlight-quoted-symbol :foreground yellow) + + ;;; js2-mode + (js2-function-param :foreground yellow) + (js2-object-property :foreground green) + + ;;; typescript-mode + (typescript-this-face :foreground red) + (typescript-access-modifier-face :foreground brown) + + ;;; rjsx-mode + (rjsx-tag :foreground red) + (rjsx-text :foreground violet) + (rjsx-attr :foreground magenta :slant 'italic :weight 'medium) + (rjsx-tag-bracket-face :foreground (doom-darken red 0.3)) + + ;;; css-mode / scss-mode + (css-property :foreground blue) + (css-selector :foreground teal) + (css-pseudo-class :foreground orange) + + ;;; markdown-mode + (markdown-markup-face :foreground violet) + (markdown-header-face :inherit 'bold :foreground dark-cyan) + (markdown-blockquote-face :foreground violet :background (doom-lighten bg 0.04)) + (markdown-table-face :foreground violet :background (doom-lighten bg 0.04)) + ((markdown-code-face &override) :foreground dark-cyan :background (doom-lighten bg 0.04)) + + ;;; org-mode + (org-hide :foreground hidden) + (org-block :background (doom-darken bg 0.05)) + (org-block-begin-line :background (doom-darken bg 0.05) :foreground comments :extend t) + (solaire-org-hide-face :foreground hidden) + + ;;; web-mode + (web-mode-json-context-face :foreground brown) + (web-mode-json-key-face :foreground teal) + ;;;; Block + (web-mode-block-delimiter-face :foreground yellow) + ;;;; Code + (web-mode-constant-face :foreground constants) + (web-mode-variable-name-face :foreground variables) + ;;;; CSS + (web-mode-css-pseudo-class-face :foreground orange) + (web-mode-css-property-name-face :foreground blue) + (web-mode-css-selector-face :foreground teal) + (web-mode-css-function-face :foreground yellow) + ;;;; HTML + (web-mode-html-attr-engine-face :foreground yellow) + (web-mode-html-attr-equal-face :foreground operators) + (web-mode-html-attr-name-face :foreground magenta) + (web-mode-html-tag-bracket-face :foreground (doom-darken red 0.3)) + (web-mode-html-tag-face :foreground red)) + + + ;; --- extra variables --------------------- + ;; () + ) + +;;; doom-tokyo-night-light-theme.el ends here diff --git a/themes/doom-tokyo-night-storm-theme.el b/themes/doom-tokyo-night-storm-theme.el new file mode 100644 index 00000000..672c567b --- /dev/null +++ b/themes/doom-tokyo-night-storm-theme.el @@ -0,0 +1,295 @@ +;;; doom-tokyo-night-storm-theme.el --- inspired by VSCode's Tokyo Night theme -*- lexical-binding: t; no-byte-compile: t; -*- +;; +;; Added: August 17, 2024 +;; Author: Foster Hangdaan +;; Maintainer: +;; Source: https://github.com/enkia/tokyo-night-vscode-theme +;; +;;; Commentary: +;;; Code: + +(require 'doom-themes) + + +;; +;;; Variables + +(defgroup doom-tokyo-night-storm-theme nil + "Options for doom-themes." + :group 'doom-themes) + +(defcustom doom-tokyo-night-storm-brighter-modeline nil + "If non-nil, more vivid colors will be used to style the mode-line." + :group 'doom-tokyo-night-storm-theme + :type 'boolean) + +(defcustom doom-tokyo-night-storm-brighter-comments nil + "If non-nil, comments will be highlighted in more vivid colors." + :group 'doom-tokyo-night-storm-theme + :type 'boolean) + +(defcustom doom-tokyo-night-storm-comment-bg doom-tokyo-night-storm-brighter-comments + "If non-nil, comments will have a subtle, darker background. Enhancing their legibility." + :group 'doom-tokyo-night-storm-theme + :type 'boolean) + +(defcustom doom-tokyo-night-storm-padded-modeline nil + "If non-nil, adds a 4px padding to the mode-line. Can be an integer to determine the exact padding." + :group 'doom-tokyo-night-storm-theme + :type '(or integer boolean)) + + +;; +;;; Theme definition + +(def-doom-theme doom-tokyo-night-storm + "A variant of Tokyo Night with a lighter background." + + ; Color Scheme + ; gui 256 + ; "#f7768e" "#f7768e" => This keyword, HTML elements, Regex group symbol, CSS units, Terminal Red + ; "#ff9e64" "#ff9e64" => Number and Boolean constants, Language support constants + ; "#e0af68" "#e0af68" => Function parameters, Regex character sets, Terminal Yellow + ; "#9ece6a" "#9ece6a" => Strings, CSS class names + ; "#73daca" "#73daca" => Object literal keys, Markdown links, Terminal Green + ; "#b4f9f8" "#b4f9f8" => Regex literal strings + ; "#2ac3de" "#2ac3de" => Language support functions, CSS HTML elements + ; "#7dcfff" "#7dcfff" => Object properties, Regex quantifiers and flags, Markdown headings, Terminal Cyan, Markdown code, Import/export keywords + ; "#7aa2f7" "#7aa2f7" => Function names, CSS property names, Terminal Blue + ; "#bb9af7" "#bb9af7" => Control Keywords, Storage Types, Regex symbols and operators, HTML Attributes, Terminal Magenta + ; "#c0caf5" "#c0caf5" => Variables, Class names, Terminal White + ; "#a9b1d6" "#a9b1d6" => Editor foreground + ; "#9aa5ce" "#9aa5ce" => Markdown Text, HTML Text + ; "#cfc9c2" "#cfc9c2" => Parameters inside functions (semantic highlighting only) + ; "#565f89" "#565f89" => Comments + ; "#414868" "#414868" => Terminal black + ; "#24283b" "#24283b" => Editor background + + ;; name default 256 16 + ((bg '("#24283b" nil nil )) + (bg-alt '("#1d202f" nil nil )) + (base0 '("#414868" "#414868" "black" )) + (base1 '("#51587a" "#51587a" "brightblack" )) + (base2 '("#61698b" "#61698b" "brightblack" )) + (base3 '("#71799d" "#71799d" "brightblack" )) + (base4 '("#8189af" "#8189af" "brightblack" )) + (base5 '("#9099c0" "#9099c0" "brightblack" )) + (base6 '("#a0aad2" "#a0aad2" "brightblack" )) + (base7 '("#b0bae3" "#b0bae3" "brightblack" )) + (base8 '("#c0caf5" "#c0caf5" "white" )) + (fg-alt '("#c0caf5" "#c0caf5" "brightwhite" )) + (fg '("#a9b1d6" "#a9b1d6" "white" )) + + (grey base4) + (red '("#f7768e" "#f7768e" "red" )) + (orange '("#ff9e64" "#ff9e64" "brightred" )) + (green '("#73daca" "#73daca" "green" )) + (teal '("#2ac3de" "#2ac3de" "brightgreen" )) + (yellow '("#e0af68" "#e0af68" "yellow" )) + (blue '("#7aa2f7" "#7aa2f7" "brightblue" )) + (dark-blue '("#565f89" "#565f89" "blue" )) + (magenta '("#bb9af7" "#bb9af7" "magenta" )) + (violet '("#9aa5ce" "#9aa5ce" "brightmagenta")) + (cyan '("#b4f9f8" "#b4f9f8" "brightcyan" )) + (dark-cyan '("#7dcfff" "#7dcfff" "cyan" )) + ; Additional custom colors + (dark-green '("#9ece6a" "#9ece6a" "green" )) + (brown '("#cfc9c2" "#cfc9c2" "yellow" )) + + ;; face categories -- required for all themes + (highlight cyan) + (vertical-bar (doom-lighten bg 0.05)) + (selection base0) + (builtin red) + (comments (if doom-tokyo-night-storm-brighter-comments base5 base1)) + (doc-comments (doom-lighten (if doom-tokyo-night-storm-brighter-comments base5 base1) 0.25)) + (constants orange) + (functions blue) + (keywords magenta) + (methods blue) + (operators dark-cyan) + (type base8) + (strings dark-green) + (variables base8) + (numbers orange) + (region base0) + (error red) + (warning yellow) + (success green) + (vc-modified orange) + (vc-added green) + (vc-deleted red) + + ;; custom categories + (hidden `(,(car bg) "black" "black")) + (-modeline-bright doom-tokyo-night-storm-brighter-modeline) + (-modeline-pad + (when doom-tokyo-night-storm-padded-modeline + (if (integerp doom-tokyo-night-storm-padded-modeline) doom-tokyo-night-storm-padded-modeline 4))) + + (modeline-fg 'unspecified) + (modeline-fg-alt base5) + + (modeline-bg + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.15) ,@(cdr base0)))) + (modeline-bg-l + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.1) ,@(cdr base0)))) + (modeline-bg-inactive (doom-darken bg 0.1)) + (modeline-bg-inactive-l `(,(car bg) ,@(cdr base1)))) + + + ;; --- Extra Faces ------------------------ + ( + ((line-number-current-line &override) :foreground base8) + ((line-number &override) :foreground comments :background (doom-darken bg 0.025)) + + (font-lock-comment-face + :foreground comments + :background (if doom-tokyo-night-storm-comment-bg (doom-lighten bg 0.05) 'unspecified)) + (font-lock-doc-face + :inherit 'font-lock-comment-face + :foreground doc-comments) + + ;;; Doom Modeline + (doom-modeline-bar :background (if -modeline-bright modeline-bg highlight)) + (doom-modeline-buffer-path :foreground base8 :weight 'normal) + (doom-modeline-buffer-file :foreground brown :weight 'normal) + + (mode-line + :background modeline-bg :foreground modeline-fg + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg))) + (mode-line-inactive + :background modeline-bg-inactive :foreground modeline-fg-alt + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive))) + (mode-line-emphasis + :foreground (if -modeline-bright base8 highlight)) + (mode-line-buffer-id + :foreground highlight) + + ;;; Indentation + (whitespace-indentation :background bg) + (whitespace-tab :background bg) + + ;;; Ivy + (ivy-subdir :foreground blue) + (ivy-minibuffer-match-face-1 :foreground green :background bg-alt) + (ivy-minibuffer-match-face-2 :foreground orange :background bg-alt) + (ivy-minibuffer-match-face-3 :foreground red :background bg-alt) + (ivy-minibuffer-match-face-4 :foreground yellow :background bg-alt) + + ;;; Elscreen + (elscreen-tab-other-screen-face :background "#353a42" :foreground "#1e2022") + + ;;; Solaire + (solaire-mode-line-face + :inherit 'mode-line + :background modeline-bg-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-l))) + (solaire-mode-line-inactive-face + :inherit 'mode-line-inactive + :background modeline-bg-inactive-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive-l))) + + ;;; Telephone + (telephone-line-accent-active + :inherit 'mode-line + :background (doom-lighten bg 0.2)) + (telephone-line-accent-inactive + :inherit 'mode-line + :background (doom-lighten bg 0.05)) + (telephone-line-evil-emacs + :inherit 'mode-line + :background dark-blue) + + ;;;; rainbow-delimiters + (rainbow-delimiters-depth-1-face :foreground fg) + (rainbow-delimiters-depth-2-face :foreground blue) + (rainbow-delimiters-depth-3-face :foreground orange) + (rainbow-delimiters-depth-4-face :foreground green) + (rainbow-delimiters-depth-5-face :foreground cyan) + (rainbow-delimiters-depth-6-face :foreground yellow) + (rainbow-delimiters-depth-7-face :foreground teal) + + ;;; Treemacs + (treemacs-root-face :foreground magenta :weight 'bold :height 1.2) + (doom-themes-treemacs-root-face :foreground magenta :weight 'ultra-bold :height 1.2) + (doom-themes-treemacs-file-face :foreground fg-alt) + (treemacs-directory-face :foreground base8) + (treemacs-file-face :foreground fg) + (treemacs-git-modified-face :foreground green) + (treemacs-git-renamed-face :foreground yellow) + + ;;; Magit + (magit-section-heading :foreground blue) + (magit-branch-remote :foreground orange) + (magit-diff-our :foreground (doom-darken red 0.2) :background (doom-darken red 0.7)) + (magit-diff-our-highlight :foreground red :background (doom-darken red 0.5) :weight 'bold) + (magit-diff-removed :foreground (doom-darken red 0.2) :background (doom-darken red 0.7)) + (magit-diff-removed-highlight :foreground red :background (doom-darken red 0.5) :weight 'bold) + + ;; --- Major-Mode Faces ------------------- + ;;; elisp + (highlight-quoted-symbol :foreground yellow) + + ;;; js2-mode + (js2-function-param :foreground yellow) + (js2-object-property :foreground green) + + ;;; typescript-mode + (typescript-this-face :foreground red) + (typescript-access-modifier-face :foreground brown) + + ;;; rjsx-mode + (rjsx-tag :foreground red) + (rjsx-text :foreground violet) + (rjsx-attr :foreground magenta :slant 'italic :weight 'medium) + (rjsx-tag-bracket-face :foreground (doom-darken red 0.3)) + + ;;; css-mode / scss-mode + (css-property :foreground blue) + (css-selector :foreground teal) + (css-pseudo-class :foreground orange) + + ;;; markdown-mode + (markdown-markup-face :foreground violet) + (markdown-header-face :inherit 'bold :foreground dark-cyan) + (markdown-blockquote-face :foreground violet :background (doom-lighten bg 0.04)) + (markdown-table-face :foreground violet :background (doom-lighten bg 0.04)) + ((markdown-code-face &override) :foreground dark-cyan :background (doom-lighten bg 0.04)) + + ;;; org-mode + (org-hide :foreground hidden) + (org-block :background (doom-darken base2 0.65)) + (org-block-begin-line :background (doom-darken base2 0.65) :foreground comments :extend t) + (solaire-org-hide-face :foreground hidden) + + ;;; web-mode + (web-mode-json-context-face :foreground brown) + (web-mode-json-key-face :foreground teal) + ;;;; Block + (web-mode-block-delimiter-face :foreground yellow) + ;;;; Code + (web-mode-constant-face :foreground constants) + (web-mode-variable-name-face :foreground variables) + ;;;; CSS + (web-mode-css-pseudo-class-face :foreground orange) + (web-mode-css-property-name-face :foreground blue) + (web-mode-css-selector-face :foreground teal) + (web-mode-css-function-face :foreground yellow) + ;;;; HTML + (web-mode-html-attr-engine-face :foreground yellow) + (web-mode-html-attr-equal-face :foreground operators) + (web-mode-html-attr-name-face :foreground magenta) + (web-mode-html-tag-bracket-face :foreground (doom-darken red 0.3)) + (web-mode-html-tag-face :foreground red)) + + + ;; --- extra variables --------------------- + ;; () + ) + +;;; doom-tokyo-night-storm-theme.el ends here From 1fb0468f37be186bf42cc1cefc0b34e8d5569324 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Mon, 19 Aug 2024 15:12:41 -0400 Subject: [PATCH 2/9] theme: Add Tokyo Night Moon variant --- doom-themes.el | 1 + themes/doom-tokyo-night-moon-theme.el | 278 ++++++++++++++++++++++++++ 2 files changed, 279 insertions(+) create mode 100644 themes/doom-tokyo-night-moon-theme.el diff --git a/doom-themes.el b/doom-themes.el index c2db1b13..75397177 100644 --- a/doom-themes.el +++ b/doom-themes.el @@ -87,6 +87,7 @@ ;; - doom-spacegrey -- I'm sure you've heard of it (ported by @teesloane) ;; - doom-tokyo-night -- inspired by VSCode's Tokyo Night theme (ported by @FosterHangdaan) ;; - doom-tokyo-night-light -- a light variant of Tokyo Night (ported by @foster-hangdaan) +;; - doom-tokyo-night-moon -- a variant of Tokyo Night based on Folke's port for Neovim. (ported by @foster-hangdaan) ;; - doom-tokyo-night-storm -- a variant of Tokyo Night with a lighter background. (ported by @foster-hangdaan) ;; - doom-tomorrow-day -- a light variant of Tomorrow (ported by @emacswatcher) ;; - doom-tomorrow-night -- One of the dark variants of Tomorrow (ported by @hlissner) diff --git a/themes/doom-tokyo-night-moon-theme.el b/themes/doom-tokyo-night-moon-theme.el new file mode 100644 index 00000000..9f195fff --- /dev/null +++ b/themes/doom-tokyo-night-moon-theme.el @@ -0,0 +1,278 @@ +;;; doom-tokyo-night-moon-theme.el --- inspired by Folke's Tokyo Night port for Neovim -*- lexical-binding: t; no-byte-compile: t; -*- +;; +;; Added: August 19, 2024 +;; Author: Foster Hangdaan +;; Maintainer: +;; Source: https://github.com/folke/tokyonight.nvim +;; +;;; Commentary: +;;; Code: + +(require 'doom-themes) + + +;; +;;; Variables + +(defgroup doom-tokyo-night-moon-theme nil + "Options for doom-themes." + :group 'doom-themes) + +(defcustom doom-tokyo-night-moon-brighter-modeline nil + "If non-nil, more vivid colors will be used to style the mode-line." + :group 'doom-tokyo-night-moon-theme + :type 'boolean) + +(defcustom doom-tokyo-night-moon-brighter-comments nil + "If non-nil, comments will be highlighted in more vivid colors." + :group 'doom-tokyo-night-moon-theme + :type 'boolean) + +(defcustom doom-tokyo-night-moon-comment-bg doom-tokyo-night-moon-brighter-comments + "If non-nil, comments will have a subtle, darker background. Enhancing their legibility." + :group 'doom-tokyo-night-moon-theme + :type 'boolean) + +(defcustom doom-tokyo-night-moon-padded-modeline nil + "If non-nil, adds a 4px padding to the mode-line. Can be an integer to determine the exact padding." + :group 'doom-tokyo-night-moon-theme + :type '(or integer boolean)) + + +;; +;;; Theme definition + +(def-doom-theme doom-tokyo-night-moon + "A variant of Tokyo Night based on Folke's port for Neovim." + + ;; name default 256 16 + ((bg '("#222436" nil nil )) + (bg-alt '("#1e2030" nil nil )) + (base0 '("#444a73" "#444a73" "black" )) + (base1 '("#4d5482" "#4d5482" "brightblack" )) + (base2 '("#555d91" "#555d91" "brightblack" )) + (base3 '("#5e67a0" "#5e67a0" "brightblack" )) + (base4 '("#6c74a9" "#6c74a9" "brightblack" )) + (base5 '("#7b82b1" "#7b82b1" "brightblack" )) + (base6 '("#8990ba" "#8990ba" "brightblack" )) + (base7 '("#989ec3" "#989ec3" "brightblack" )) + (base8 '("#a7accb" "#a7accb" "brightblack" )) + (fg-alt '("#828bb8" "#828bb8" "brightwhite" )) + (fg '("#c8d3f5" "#c8d3f5" "white" )) + + (grey base4) + (red '("#ff757f" "#ff757f" "red" )) + (orange '("#ff966c" "#ff966c" "brightred" )) + (green '("#c3e88d" "#c3e88d" "green" )) + (teal '("#4fd6be" "#4fd6be" "brightgreen" )) + (yellow '("#ffc777" "#ffc777" "yellow" )) + (blue '("#82aaff" "#82aaff" "brightblue" )) + (dark-blue '("#3e68d7" "#3e68d7" "blue" )) + (magenta '("#c099ff" "#c099ff" "magenta" )) + (violet '("#fca7ea" "#fca7ea" "brightmagenta")) + (cyan '("#86e1fc" "#86e1fc" "brightcyan" )) + (dark-cyan '("#86e1fc" "#86e1fc" "cyan" )) + ; Additional custom colors + (dark-green '("#4fd6be" "#4fd6be" "green" )) + + ;; face categories -- required for all themes + (highlight fg) + (vertical-bar (doom-lighten bg 0.05)) + (selection base0) + (builtin red) + (comments (if doom-tokyo-night-moon-brighter-comments (doom-lighten "#636da6" 0.25) "#636da6")) + (doc-comments (doom-lighten (if doom-tokyo-night-moon-brighter-comments (doom-lighten "#636da6" 0.25) "#636da6") 0.25)) + (constants orange) + (functions blue) + (keywords violet) + (methods dark-cyan) + (operators cyan) + (type base8) + (strings green) + (variables fg) + (numbers orange) + (region (doom-lighten "#2f334d" 0.15)) + (error red) + (warning yellow) + (success green) + (vc-modified "#7ca1f2") + (vc-added "#b8db87") + (vc-deleted "#e26a75") + + ;; custom categories + (hidden `(,(car bg) "black" "black")) + (-modeline-bright doom-tokyo-night-moon-brighter-modeline) + (-modeline-pad + (when doom-tokyo-night-moon-padded-modeline + (if (integerp doom-tokyo-night-moon-padded-modeline) doom-tokyo-night-moon-padded-modeline 4))) + + (modeline-fg 'unspecified) + (modeline-fg-alt base5) + + (modeline-bg + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.15) ,@(cdr base0)))) + (modeline-bg-l + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.1) ,@(cdr base0)))) + (modeline-bg-inactive (doom-darken bg 0.1)) + (modeline-bg-inactive-l `(,(car bg) ,@(cdr base1)))) + + + ;; --- Extra Faces ------------------------ + ( + (hl-line :background "#2f334d") + + ((line-number-current-line &override) :foreground base8) + ((line-number &override) :foreground base0 :background (doom-darken bg 0.025)) + + (font-lock-comment-face + :foreground comments + :background (if doom-tokyo-night-moon-comment-bg (doom-lighten bg 0.05) 'unspecified)) + (font-lock-doc-face + :inherit 'font-lock-comment-face + :foreground doc-comments) + + ;;; Doom Modeline + (doom-modeline-bar :background (if -modeline-bright modeline-bg highlight)) + (doom-modeline-buffer-path :foreground fg :weight 'normal) + (doom-modeline-buffer-file :foreground yellow :weight 'normal) + + (mode-line + :background modeline-bg :foreground modeline-fg + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg))) + (mode-line-inactive + :background modeline-bg-inactive :foreground modeline-fg-alt + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive))) + (mode-line-emphasis + :foreground (if -modeline-bright base8 highlight)) + (mode-line-buffer-id + :foreground highlight) + + ;;; Indentation + (whitespace-indentation :background bg) + (whitespace-tab :background bg) + + ;;; Ivy + (ivy-subdir :foreground blue) + (ivy-minibuffer-match-face-1 :foreground green :background bg-alt) + (ivy-minibuffer-match-face-2 :foreground orange :background bg-alt) + (ivy-minibuffer-match-face-3 :foreground red :background bg-alt) + (ivy-minibuffer-match-face-4 :foreground yellow :background bg-alt) + + ;;; Elscreen + (elscreen-tab-other-screen-face :background "#353a42" :foreground "#1e2022") + + ;;; Solaire + (solaire-mode-line-face + :inherit 'mode-line + :background modeline-bg-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-l))) + (solaire-mode-line-inactive-face + :inherit 'mode-line-inactive + :background modeline-bg-inactive-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive-l))) + + ;;; Telephone + (telephone-line-accent-active + :inherit 'mode-line + :background (doom-lighten bg 0.2)) + (telephone-line-accent-inactive + :inherit 'mode-line + :background (doom-lighten bg 0.05)) + (telephone-line-evil-emacs + :inherit 'mode-line + :background dark-blue) + + ;;;; rainbow-delimiters + (rainbow-delimiters-depth-1-face :foreground fg) + (rainbow-delimiters-depth-2-face :foreground blue) + (rainbow-delimiters-depth-3-face :foreground orange) + (rainbow-delimiters-depth-4-face :foreground green) + (rainbow-delimiters-depth-5-face :foreground cyan) + (rainbow-delimiters-depth-6-face :foreground yellow) + (rainbow-delimiters-depth-7-face :foreground teal) + + ;;; Treemacs + (treemacs-root-face :foreground magenta :weight 'bold :height 1.2) + (doom-themes-treemacs-root-face :foreground magenta :weight 'ultra-bold :height 1.2) + (doom-themes-treemacs-file-face :foreground fg-alt) + (treemacs-directory-face :foreground base8) + (treemacs-file-face :foreground fg) + (treemacs-git-modified-face :foreground green) + (treemacs-git-renamed-face :foreground yellow) + + ;;; Magit + (magit-section-heading :foreground blue) + (magit-branch-remote :foreground orange) + (magit-diff-our :foreground (doom-darken "#e26a75" 0.2) :background (doom-darken "#e26a75" 0.7)) + (magit-diff-our-highlight :foreground "#e26a75" :background (doom-darken "#e26a75" 0.5) :weight 'bold) + (magit-diff-removed :foreground (doom-darken "#e26a75" 0.2) :background (doom-darken "#e26a75" 0.7)) + (magit-diff-removed-highlight :foreground "#e26a75" :background (doom-darken "#e26a75" 0.5) :weight 'bold) + (magit-diff-hunk-heading :foreground bg :background base1 :weight 'bold) + (magit-diff-hunk-heading-highlight :foreground bg :background base5 :weight 'bold) + + ;; --- Major-Mode Faces ------------------- + ;;; elisp + (highlight-quoted-symbol :foreground yellow) + + ;;; js2-mode + (js2-function-param :foreground yellow) + (js2-object-property :foreground dark-green) + + ;;; typescript-mode + (typescript-this-face :foreground red) + (typescript-access-modifier-face :foreground yellow) + + ;;; rjsx-mode + (rjsx-tag :foreground red) + (rjsx-text :foreground violet) + (rjsx-attr :foreground magenta :slant 'italic :weight 'medium) + (rjsx-tag-bracket-face :foreground (doom-darken red 0.3)) + + ;;; css-mode / scss-mode + (css-property :foreground blue) + (css-selector :foreground teal) + (css-pseudo-class :foreground orange) + + ;;; markdown-mode + (markdown-markup-face :foreground violet) + (markdown-header-face :inherit 'bold :foreground dark-cyan) + (markdown-blockquote-face :foreground violet :background (doom-lighten bg 0.04)) + (markdown-table-face :foreground violet :background (doom-lighten bg 0.04)) + ((markdown-code-face &override) :foreground dark-cyan :background (doom-lighten bg 0.04)) + + ;;; org-mode + (org-hide :foreground hidden) + (org-block :background (doom-darken bg 0.25)) + (org-block-begin-line :background (doom-darken bg 0.25) :foreground comments :extend t) + (solaire-org-hide-face :foreground hidden) + + ;;; web-mode + (web-mode-json-context-face :foreground yellow) + (web-mode-json-key-face :foreground teal) + ;;;; Block + (web-mode-block-delimiter-face :foreground yellow) + ;;;; Code + (web-mode-constant-face :foreground constants) + (web-mode-variable-name-face :foreground variables) + ;;;; CSS + (web-mode-css-pseudo-class-face :foreground orange) + (web-mode-css-property-name-face :foreground blue) + (web-mode-css-selector-face :foreground teal) + (web-mode-css-function-face :foreground yellow) + ;;;; HTML + (web-mode-html-attr-engine-face :foreground yellow) + (web-mode-html-attr-equal-face :foreground operators) + (web-mode-html-attr-name-face :foreground magenta) + (web-mode-html-tag-bracket-face :foreground (doom-darken red 0.3)) + (web-mode-html-tag-face :foreground red)) + + + ;; --- extra variables --------------------- + ;; () + ) + +;;; doom-tokyo-night-moon-theme.el ends here From 0e552d9324356f532a10c7fe170df2228f036a2c Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Mon, 19 Aug 2024 19:36:47 -0400 Subject: [PATCH 3/9] refactor: Italicize keywords and comments --- themes/doom-tokyo-night-light-theme.el | 7 ++++++- themes/doom-tokyo-night-moon-theme.el | 9 +++++++-- themes/doom-tokyo-night-storm-theme.el | 7 ++++++- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el index d2562c18..2f651924 100644 --- a/themes/doom-tokyo-night-light-theme.el +++ b/themes/doom-tokyo-night-light-theme.el @@ -147,10 +147,12 @@ (font-lock-comment-face :foreground comments - :background (if doom-tokyo-night-light-comment-bg (doom-lighten bg 0.05) 'unspecified)) + :background (if doom-tokyo-night-light-comment-bg (doom-lighten bg 0.05) 'unspecified) + :slant 'italic) (font-lock-doc-face :inherit 'font-lock-comment-face :foreground doc-comments) + (font-lock-keyword-face :foreground keywords :slant 'italic) ;;; Doom Modeline (doom-modeline-bar :background (if -modeline-bright modeline-bg highlight)) @@ -268,6 +270,7 @@ ;;; web-mode (web-mode-json-context-face :foreground brown) (web-mode-json-key-face :foreground teal) + (web-mode-keyword-face :inherit 'font-lock-keyword-face) ;;;; Block (web-mode-block-delimiter-face :foreground yellow) ;;;; Code @@ -277,6 +280,8 @@ (web-mode-css-pseudo-class-face :foreground orange) (web-mode-css-property-name-face :foreground blue) (web-mode-css-selector-face :foreground teal) + (web-mode-css-selector-class-face :foreground keywords :slant 'nil) + (web-mode-css-selector-tag-face :inherit 'web-mode-css-selector-class-face) (web-mode-css-function-face :foreground yellow) ;;;; HTML (web-mode-html-attr-engine-face :foreground yellow) diff --git a/themes/doom-tokyo-night-moon-theme.el b/themes/doom-tokyo-night-moon-theme.el index 9f195fff..70317511 100644 --- a/themes/doom-tokyo-night-moon-theme.el +++ b/themes/doom-tokyo-night-moon-theme.el @@ -84,7 +84,7 @@ (doc-comments (doom-lighten (if doom-tokyo-night-moon-brighter-comments (doom-lighten "#636da6" 0.25) "#636da6") 0.25)) (constants orange) (functions blue) - (keywords violet) + (keywords magenta) (methods dark-cyan) (operators cyan) (type base8) @@ -130,10 +130,12 @@ (font-lock-comment-face :foreground comments - :background (if doom-tokyo-night-moon-comment-bg (doom-lighten bg 0.05) 'unspecified)) + :background (if doom-tokyo-night-moon-comment-bg (doom-lighten bg 0.05) 'unspecified) + :slant 'italic) (font-lock-doc-face :inherit 'font-lock-comment-face :foreground doc-comments) + (font-lock-keyword-face :foreground keywords :slant 'italic) ;;; Doom Modeline (doom-modeline-bar :background (if -modeline-bright modeline-bg highlight)) @@ -253,6 +255,7 @@ ;;; web-mode (web-mode-json-context-face :foreground yellow) (web-mode-json-key-face :foreground teal) + (web-mode-keyword-face :inherit 'font-lock-keyword-face) ;;;; Block (web-mode-block-delimiter-face :foreground yellow) ;;;; Code @@ -262,6 +265,8 @@ (web-mode-css-pseudo-class-face :foreground orange) (web-mode-css-property-name-face :foreground blue) (web-mode-css-selector-face :foreground teal) + (web-mode-css-selector-class-face :foreground keywords :slant 'nil) + (web-mode-css-selector-tag-face :inherit 'web-mode-css-selector-class-face) (web-mode-css-function-face :foreground yellow) ;;;; HTML (web-mode-html-attr-engine-face :foreground yellow) diff --git a/themes/doom-tokyo-night-storm-theme.el b/themes/doom-tokyo-night-storm-theme.el index 672c567b..6ba2dff0 100644 --- a/themes/doom-tokyo-night-storm-theme.el +++ b/themes/doom-tokyo-night-storm-theme.el @@ -149,10 +149,12 @@ (font-lock-comment-face :foreground comments - :background (if doom-tokyo-night-storm-comment-bg (doom-lighten bg 0.05) 'unspecified)) + :background (if doom-tokyo-night-storm-comment-bg (doom-lighten bg 0.05) 'unspecified) + :slant 'italic) (font-lock-doc-face :inherit 'font-lock-comment-face :foreground doc-comments) + (font-lock-keyword-face :foreground keywords :slant 'italic) ;;; Doom Modeline (doom-modeline-bar :background (if -modeline-bright modeline-bg highlight)) @@ -270,6 +272,7 @@ ;;; web-mode (web-mode-json-context-face :foreground brown) (web-mode-json-key-face :foreground teal) + (web-mode-keyword-face :inherit 'font-lock-keyword-face) ;;;; Block (web-mode-block-delimiter-face :foreground yellow) ;;;; Code @@ -279,6 +282,8 @@ (web-mode-css-pseudo-class-face :foreground orange) (web-mode-css-property-name-face :foreground blue) (web-mode-css-selector-face :foreground teal) + (web-mode-css-selector-class-face :foreground keywords :slant 'nil) + (web-mode-css-selector-tag-face :inherit 'web-mode-css-selector-class-face) (web-mode-css-function-face :foreground yellow) ;;;; HTML (web-mode-html-attr-engine-face :foreground yellow) From 099e54106fdae2e1641561bdee512d41a2e99d42 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Mon, 19 Aug 2024 21:06:48 -0400 Subject: [PATCH 4/9] fix: Prevent italic fonts on Dashboard By explicitly setting them. --- themes/doom-tokyo-night-light-theme.el | 5 +++++ themes/doom-tokyo-night-moon-theme.el | 5 +++++ themes/doom-tokyo-night-storm-theme.el | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el index 2f651924..abb9926d 100644 --- a/themes/doom-tokyo-night-light-theme.el +++ b/themes/doom-tokyo-night-light-theme.el @@ -170,6 +170,11 @@ (mode-line-buffer-id :foreground highlight) + ;;; Doom Dashboard + (doom-dashboard-banner :foreground comments :slant 'normal) + (doom-dashboard-loaded :foreground comments :slant 'normal) + (doom-dashboard-menu-title :foreground magenta :slant 'normal) + ;;; Indentation (whitespace-indentation :background bg) (whitespace-tab :background bg) diff --git a/themes/doom-tokyo-night-moon-theme.el b/themes/doom-tokyo-night-moon-theme.el index 70317511..d10506e8 100644 --- a/themes/doom-tokyo-night-moon-theme.el +++ b/themes/doom-tokyo-night-moon-theme.el @@ -153,6 +153,11 @@ (mode-line-buffer-id :foreground highlight) + ;;; Doom Dashboard + (doom-dashboard-banner :foreground comments :slant 'normal) + (doom-dashboard-loaded :foreground comments :slant 'normal) + (doom-dashboard-menu-title :foreground magenta :slant 'normal) + ;;; Indentation (whitespace-indentation :background bg) (whitespace-tab :background bg) diff --git a/themes/doom-tokyo-night-storm-theme.el b/themes/doom-tokyo-night-storm-theme.el index 6ba2dff0..0b845f77 100644 --- a/themes/doom-tokyo-night-storm-theme.el +++ b/themes/doom-tokyo-night-storm-theme.el @@ -172,6 +172,11 @@ (mode-line-buffer-id :foreground highlight) + ;;; Doom Dashboard + (doom-dashboard-banner :foreground comments :slant 'normal) + (doom-dashboard-loaded :foreground comments :slant 'normal) + (doom-dashboard-menu-title :foreground magenta :slant 'normal) + ;;; Indentation (whitespace-indentation :background bg) (whitespace-tab :background bg) From 7635004da1e6e40a0182a6f58a2f97d5e6a7f046 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Tue, 20 Aug 2024 06:48:29 -0400 Subject: [PATCH 5/9] fix: Use a valid `slant` value --- themes/doom-tokyo-night-light-theme.el | 2 +- themes/doom-tokyo-night-moon-theme.el | 2 +- themes/doom-tokyo-night-storm-theme.el | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el index abb9926d..4c948d1b 100644 --- a/themes/doom-tokyo-night-light-theme.el +++ b/themes/doom-tokyo-night-light-theme.el @@ -285,7 +285,7 @@ (web-mode-css-pseudo-class-face :foreground orange) (web-mode-css-property-name-face :foreground blue) (web-mode-css-selector-face :foreground teal) - (web-mode-css-selector-class-face :foreground keywords :slant 'nil) + (web-mode-css-selector-class-face :foreground keywords :slant 'normal) (web-mode-css-selector-tag-face :inherit 'web-mode-css-selector-class-face) (web-mode-css-function-face :foreground yellow) ;;;; HTML diff --git a/themes/doom-tokyo-night-moon-theme.el b/themes/doom-tokyo-night-moon-theme.el index d10506e8..99649bae 100644 --- a/themes/doom-tokyo-night-moon-theme.el +++ b/themes/doom-tokyo-night-moon-theme.el @@ -270,7 +270,7 @@ (web-mode-css-pseudo-class-face :foreground orange) (web-mode-css-property-name-face :foreground blue) (web-mode-css-selector-face :foreground teal) - (web-mode-css-selector-class-face :foreground keywords :slant 'nil) + (web-mode-css-selector-class-face :foreground keywords :slant 'normal) (web-mode-css-selector-tag-face :inherit 'web-mode-css-selector-class-face) (web-mode-css-function-face :foreground yellow) ;;;; HTML diff --git a/themes/doom-tokyo-night-storm-theme.el b/themes/doom-tokyo-night-storm-theme.el index 0b845f77..a53485ca 100644 --- a/themes/doom-tokyo-night-storm-theme.el +++ b/themes/doom-tokyo-night-storm-theme.el @@ -287,7 +287,7 @@ (web-mode-css-pseudo-class-face :foreground orange) (web-mode-css-property-name-face :foreground blue) (web-mode-css-selector-face :foreground teal) - (web-mode-css-selector-class-face :foreground keywords :slant 'nil) + (web-mode-css-selector-class-face :foreground keywords :slant 'normal) (web-mode-css-selector-tag-face :inherit 'web-mode-css-selector-class-face) (web-mode-css-function-face :foreground yellow) ;;;; HTML From d4fdb463d2adff4441ca97376d6a29ba1fcddbd9 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Tue, 20 Aug 2024 14:14:01 -0400 Subject: [PATCH 6/9] refactor: Apply lighter color for line numbers This applies a lighter font color for non-active line numbers for the Tokyo Night Light theme. This helps make the active line number standout more. --- themes/doom-tokyo-night-light-theme.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el index 4c948d1b..27d9a2a0 100644 --- a/themes/doom-tokyo-night-light-theme.el +++ b/themes/doom-tokyo-night-light-theme.el @@ -143,7 +143,7 @@ ;; --- Extra Faces ------------------------ ( ((line-number-current-line &override) :foreground fg) - ((line-number &override) :foreground comments :background (doom-darken bg 0.025)) + ((line-number &override) :foreground base5 :background (doom-darken bg 0.025)) (font-lock-comment-face :foreground comments From ee72edf79cee9ed1c04a8177df9c4ebf307424db Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Wed, 21 Aug 2024 17:37:58 -0400 Subject: [PATCH 7/9] refactor(tokyo-night-moon): Change `type` to blue --- themes/doom-tokyo-night-moon-theme.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/doom-tokyo-night-moon-theme.el b/themes/doom-tokyo-night-moon-theme.el index 99649bae..9d44aae0 100644 --- a/themes/doom-tokyo-night-moon-theme.el +++ b/themes/doom-tokyo-night-moon-theme.el @@ -87,7 +87,7 @@ (keywords magenta) (methods dark-cyan) (operators cyan) - (type base8) + (type (doom-lighten dark-blue 0.3)) (strings green) (variables fg) (numbers orange) From 42b7d9823e17859ee459f9b25be4d64ae1951ec3 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan Date: Thu, 29 Aug 2024 16:00:01 -0400 Subject: [PATCH 8/9] refactor: Change color of `type` face to `teal` This change is for both the Storm and Light variants of Tokyo Night. --- themes/doom-tokyo-night-light-theme.el | 2 +- themes/doom-tokyo-night-storm-theme.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el index 27d9a2a0..96403762 100644 --- a/themes/doom-tokyo-night-light-theme.el +++ b/themes/doom-tokyo-night-light-theme.el @@ -106,7 +106,7 @@ (keywords magenta) (methods blue) (operators teal) - (type base0) + (type teal) (strings dark-green) (variables fg) (numbers orange) diff --git a/themes/doom-tokyo-night-storm-theme.el b/themes/doom-tokyo-night-storm-theme.el index a53485ca..2c5bd33e 100644 --- a/themes/doom-tokyo-night-storm-theme.el +++ b/themes/doom-tokyo-night-storm-theme.el @@ -108,7 +108,7 @@ (keywords magenta) (methods blue) (operators dark-cyan) - (type base8) + (type teal) (strings dark-green) (variables base8) (numbers orange) From bd642dead8a1ba045306ec3b407c6bb4ba977c81 Mon Sep 17 00:00:00 2001 From: Foster Hangdaan <156146315+foster-hangdaan@users.noreply.github.com> Date: Fri, 30 Aug 2024 05:38:10 -0400 Subject: [PATCH 9/9] fix(tokyo-night-light): Improve legibility of Magit highlight Co-authored-by: Prashant Vithani --- themes/doom-tokyo-night-light-theme.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/themes/doom-tokyo-night-light-theme.el b/themes/doom-tokyo-night-light-theme.el index 96403762..579789e4 100644 --- a/themes/doom-tokyo-night-light-theme.el +++ b/themes/doom-tokyo-night-light-theme.el @@ -233,8 +233,8 @@ (magit-branch-remote :foreground orange) (magit-diff-our :foreground (doom-darken red 0.2) :background (doom-darken red 0.7)) (magit-diff-our-highlight :foreground red :background (doom-darken red 0.5) :weight 'bold) - (magit-diff-removed :foreground (doom-darken red 0.2) :background (doom-darken red 0.7)) - (magit-diff-removed-highlight :foreground red :background (doom-darken red 0.5) :weight 'bold) + (magit-diff-removed :foreground (doom-darken red 0.2) :background (doom-lighten red 0.7)) + (magit-diff-removed-highlight :foreground red :background (doom-lighten red 0.5) :weight 'bold) ;; --- Major-Mode Faces ------------------- ;;; elisp