|
| 1 | +;; doom-monokai-pro-theme.el --- Port of Monokai Pro -*- no-byte-compile: t; -*- |
| 2 | +(require 'doom-themes) |
| 3 | + |
| 4 | +(defgroup doom-monokai-pro-theme nil |
| 5 | + "Options for doom-themes" |
| 6 | + :group 'doom-themes) |
| 7 | + |
| 8 | +(defcustom doom-monokai-pro-padded-modeline doom-themes-padded-modeline |
| 9 | + "If non-nil, adds a 4px padding to the mode-line. |
| 10 | +Can be an integer to determine the exact padding." |
| 11 | + :group 'doom-monokai-pro-theme |
| 12 | + :type '(choice integer boolean)) |
| 13 | + |
| 14 | +(def-doom-theme doom-monokai-pro |
| 15 | + "A port of VS Code's Monokai Pro" |
| 16 | + |
| 17 | + ;; name gui 256 16 |
| 18 | + ((bg '("#2B292E" nil nil )) |
| 19 | + (bg-alt '("#221F22" nil nil )) |
| 20 | + (base0 '("#0D0D0D" "black" "black" )) |
| 21 | + (base1 '("#1B1B1B" "#1B1B1B" )) |
| 22 | + (base2 '("#212122" "#212122" )) |
| 23 | + (base3 '("#2B2B2B" "#2B2B2B" "brightblack")) |
| 24 | + (base4 '("#3F4040" "#3F4040" "brightblack")) |
| 25 | + (base5 '("#5C5E5E" "#5C5E5E" "brightblack")) |
| 26 | + (base6 '("#757878" "#757878" "brightblack")) |
| 27 | + (base7 '("#969896" "#969896" "brightblack")) |
| 28 | + (base8 '("#FCFCFA" "#FCFCFA" "white" )) |
| 29 | + (fg '("#939293" "#939293" "white")) |
| 30 | + (fg-alt '("#A3A2A3" "#A3A2A3" "white")) |
| 31 | + |
| 32 | + (grey '("#727072" "#727072" "brightblack")) |
| 33 | + (red '("#CC6666" "#CC6666" "red")) |
| 34 | + (orange '("#FC9867" "#FC9867" "orange")) |
| 35 | + (green '("#A9DC76" "#A9DC76" "green")) |
| 36 | + (teal green) |
| 37 | + (yellow '("#FFD866" "#FFD866" "yellow")) |
| 38 | + (blue '("#78DCE8" "#78DCE8" "blue")) |
| 39 | + (dark-blue '("#81A2BE" "#81A2BE" "blue")) |
| 40 | + (magenta '("#FF6188" "#FF6188" "violet")) |
| 41 | + (violet '("#AB9DF2" "#AB9DF2" "violet")) |
| 42 | + (cyan blue) |
| 43 | + (dark-cyan dark-blue) |
| 44 | + |
| 45 | + ;; face categories |
| 46 | + (highlight base8) |
| 47 | + (vertical-bar (doom-lighten bg 0.1)) |
| 48 | + (selection `(,(car (doom-lighten bg 0.1)) ,@(cdr base4))) |
| 49 | + (builtin blue) |
| 50 | + (comments grey) |
| 51 | + (doc-comments yellow) |
| 52 | + (constants violet) |
| 53 | + (functions green) |
| 54 | + (keywords magenta) |
| 55 | + (methods green) |
| 56 | + (operators magenta) |
| 57 | + (type blue) |
| 58 | + (strings yellow) |
| 59 | + (variables base8) |
| 60 | + (numbers violet) |
| 61 | + (region selection) |
| 62 | + (error red) |
| 63 | + (warning yellow) |
| 64 | + (success green) |
| 65 | + (vc-modified fg-alt) |
| 66 | + (vc-added green) |
| 67 | + (vc-deleted red) |
| 68 | + |
| 69 | + ;; custom categories |
| 70 | + (modeline-bg bg-alt) |
| 71 | + (modeline-bg-alt `(,(car bg) ,@(cdr base1))) |
| 72 | + (modeline-fg fg) |
| 73 | + (modeline-fg-alt comments) |
| 74 | + (-modeline-pad |
| 75 | + (when doom-monokai-pro-padded-modeline |
| 76 | + (if (integerp doom-monokai-pror-padded-modeline) |
| 77 | + doom-monokai-pro-padded-modeline |
| 78 | + 4)))) |
| 79 | + |
| 80 | + ;; --- faces ------------------------------ |
| 81 | + ( |
| 82 | + ;; Centaur tabs |
| 83 | + (centaur-tabs-selected-modified :inherit 'centaur-tabs-selected :foreground yellow) |
| 84 | + (centaur-tabs-unselected-modified :inherit 'centaur-tabs-unselected :foreground yellow) |
| 85 | + (centaur-tabs-active-bar-face :background yellow) |
| 86 | + (centaur-tabs-modified-marker-selected :inherit 'centaur-tabs-selected :foreground base8) |
| 87 | + (centaur-tabs-modified-marker-unselected :inherit 'centaur-tabs-unselected :foreground base8) |
| 88 | + |
| 89 | + ;; Doom modeline |
| 90 | + (doom-modeline-bar :background yellow) |
| 91 | + (doom-modeline-buffer-path :foreground blue :bold bold) |
| 92 | + (doom-modeline-buffer-major-mode :inherit 'doom-modeline-buffer-path) |
| 93 | + |
| 94 | + ((line-number &override) :foreground base4) |
| 95 | + ((line-number-current-line &override) :foreground yellow :bold bold) |
| 96 | + |
| 97 | + ;; rainbow-delimiters |
| 98 | + (rainbow-delimiters-depth-1-face :foreground violet) |
| 99 | + (rainbow-delimiters-depth-2-face :foreground blue) |
| 100 | + (rainbow-delimiters-depth-3-face :foreground orange) |
| 101 | + (rainbow-delimiters-depth-4-face :foreground green) |
| 102 | + (rainbow-delimiters-depth-5-face :foreground violet) |
| 103 | + (rainbow-delimiters-depth-6-face :foreground yellow) |
| 104 | + (rainbow-delimiters-depth-7-face :foreground blue) |
| 105 | + |
| 106 | + (mode-line |
| 107 | + :background modeline-bg :foreground modeline-fg |
| 108 | + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg))) |
| 109 | + (mode-line-inactive |
| 110 | + :background modeline-bg-alt :foreground modeline-fg-alt |
| 111 | + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-alt)))) |
| 112 | + |
| 113 | + ;; --- variables -------------------------- |
| 114 | + ;; () |
| 115 | + ) |
| 116 | + |
| 117 | +(provide 'doom-monokai-pro-theme) |
| 118 | +;;; doom-monokai-pro-theme.el ends here |
0 commit comments