You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

79 lines
2.8 KiB

4 years ago
4 years ago
4 years ago
4 years ago
  1. ;;; Plastic --- a theme based on plastic colors
  2. ;;; Commentary:
  3. ;;; to figure out face properties of point:
  4. ;;; M-x describe-text-properties
  5. ;;; or
  6. ;;; C-u C-x =
  7. ;;; Code:
  8. (deftheme plastic "A dark color theme for Emacs")
  9. (let ((*background* "#21252b")
  10. (*normal* "#a9b2c3")
  11. (*comments* "#615953")
  12. (*constants* "#9ec400")
  13. (*current-line* "#151515")
  14. (*cursor-underscore* "#e6c546")
  15. (*keywords* "#61afef")
  16. (*line-number* "#615953")
  17. (*method-declaration* "#e7c547")
  18. (*mode-line-bg* "#21252b")
  19. (*warnings* "#ff0000")
  20. (*operators* "#e06c75")
  21. (*visual-selection* "#b48ead"))
  22. (custom-theme-set-faces
  23. 'plastic
  24. `(bold (( t (:bold t))))
  25. `(button ((t (:foreground, *keywords* :underline t))))
  26. `(default ((t (:background, *background* :foreground, *normal*))))
  27. `(header-line ((t (:background, *mode-line-bg* :foreground, *normal*))))
  28. `(hl-line ((t (:background, *current-line*))))
  29. `(region ((t (:background, *visual-selection*))))
  30. `(underline ((nil (:underline t))))
  31. ;; font-lock
  32. `(font-lock-builtin-face ((t (:foreground, *operators*))))
  33. `(font-lock-comment-face ((t (:foreground, *comments*))))
  34. `(font-lock-constant-face ((t (:foreground, *constants*))))
  35. `(font-lock-keyword-face ((t (:foreground, *constants*))))
  36. `(font-lock-warning-face ((t (:foreground, *warnings*))))
  37. ;; GUI
  38. `(fringe ((t (:background, *background*))))
  39. `(linum ((t (:background, *line-number*))))
  40. `(cursor ((t (:background, *cursor-underscore*))))
  41. `(text-cursor ((t (:background, *cursor-underscore*))))
  42. `(vertical-border ((t (:foreground, *background*))))
  43. `(line-number ((t (:foreground, *comments*))))
  44. `(company-tooltip ((t (:background, *background* :foreground, *normal*))))
  45. `(company-tooltip-selection ((t (:background, *current-line* :foreground, *constants*))))
  46. `(mode-line ((t (:background, *mode-line-bg* :foreground, *constants*))))
  47. `(mode-line-inactive ((t (:background, *mode-line-bg* :foreground, *comments*))))
  48. ;; swiper
  49. `(ivy-current-match ((t (:background, *constants* :foreground, *background*))))
  50. ;; web-mode
  51. `(web-mode-html-tag-face ((t (:foreground, *keywords*))))
  52. `(web-mode-doctype-face ((t (:foreground, *normal*))))
  53. ;; show-paren
  54. `(show-paren-mismatch ((t (:background, *warnings*, :foreground, *normal* :weight bold))))
  55. `(show-paren-match ((t (:background, *keywords* :foreground, *normal* :weight bold))))
  56. `(flycheck-error ((t (:foreground, *warnings*))))
  57. ))
  58. ;;;###autoload
  59. (when (and (boundp 'custom-theme-load-path) load-file-name)
  60. (add-to-list 'custom-theme-load-path
  61. (file-name-as-directory (file-name-directory load-file-name))))
  62. (provide-theme 'plastic)
  63. ;;; plastic-theme.el ends here