GitHunt
NA

nasyxx/emacs-nasy-theme

Nasy's Emacs Theme 外皃

#+PROPERTY: header-args:emacs-lisp :tangle (expand-file-name "nasy-theme.el") :lexical t
#+options: ':nil *:t -:t ::t <:t H:3 \n:nil ^:{} arch:headline author:t
#+options: broken-links:mark c:nil creator:nil d:(not "LOGBOOK") date:t e:t
#+options: email:nil f:t inline:t num:t p:nil pri:nil prop:nil stat:t tags:t
#+options: tasks:t tex:t timestamp:t title:t toc:t todo:t |:t
#+title: README
#+date: <2021-05-18 Tue>
#+author: Nasy
#+email: nasyxx+emacs@gmail.com
#+update: <2021-06-08 Tue>
#+language: en
#+select_tags: export
#+exclude_tags: noexport
#+creator: Emacs 28.0.50 (Org mode 9.4.5)

外皃

Nasy's Emacs Theme

  • 截圖 :noexport:

[[./screenshot1.png]]
[[./screenshot2.png]]
[[./screenshot3.png]]
[[./screenshot4.png]]
[[./screenshot5.png]]

  • Header :noexport:
    :PROPERTIES:
    :ID: A386FB66-D302-4910-9681-5AD20423B0E1
    :END:

#+begin_src emacs-lisp
;;; nasy-theme.el --- Nasy's Emacs Configuration theme file. -- lexical-binding: t; --

;; Copyright (C) 2022 Nasy

;; Author: Nasy nasyxx@gmail.com

;;; Commentary:

;; Nasy's Emacs 外皃

;;----------------------------------------------------------------------------
;; DO NOT EDIT THIS FILE DIRECTLY
;; This is a file generated from a literate programing source file located at
;; README.org
;;
;; You should make any changes there and regenerate using make generate.
;;----------------------------------------------------------------------------

;;; Code:

(require '彩)
(require 'color)
(eval-when-compile
(require 'cl-lib))
#+end_src

  • Colors
    :PROPERTIES:
    :ID: 22A29749-9744-421C-9838-0344146A0ACF
    :END:

#+begin_src emacs-lisp :tangle (expand-file-name "彩.el") :lexical t
;;; 彩.el --- Nasy's Emacs theme colors. -- lexical-binding: t; --

;;; Commentary:

;;; Code:

;;; 正色
(defconst n-青 "#00ffff")
(defconst n-赤 "#c3272b")
(defconst n-白 "#ffffff") ;; 精白
(defconst n-黑 "#000000")
(defconst n-黄 "#fff143") ;; 不知其法而用鵝黃

;;; 間色
(defconst n-紺青 "#3f4470")
(defconst n-鴉青 "#424c50")
(defconst n-靛藍 "#065279")
(defconst n-羣青 "#2e59a7")
(defconst n-深竹月 "#2e62cd")
(defconst n-寶藍 "#4b5cc4")
(defconst n-青冥 "#3271ae")
(defconst n-靛青 "#177CB0")
(defconst n-湖藍 "#30DFF3")
(defconst n--青 "#00ffff")

(defconst n-松绿 "#057748")
(defconst n-官緑 "#2a6e3f")
(defconst n-青青 "#4f6f46")
(defconst n-蒼翠 "#519a73")
(defconst n-菉竹 "#698e6a")
(defconst n-竹靑 "#789262")
(defconst n-春辰 "#a9be7b")
(defconst n-松花 "#bce672")
(defconst n-歐碧 "#c0d695")
(defconst n-龍泉靑瓷 "#c8e6c6")
(defconst n-水緑 "#d4f2e7")
(defconst n-水黄 "#ddeec4")
(defconst n-春緑 "#e3efd1")
(defconst n-蔥青 "#edfebb")
(defconst n-断肠 "#ecebc2")

(defconst n-絳 "#510312")
(defconst n-胭脂 "#960018")
(defconst n-綪 "#b13546")
(defconst n-品红 "#F00056")
(defconst n-朱 "#ff0000")
(defconst n-火红 "#FF2D51")
(defconst n-丹 "#ff4c00")
(defconst n-妃 "#ed5736")
(defconst n-海棠 "#DB5A6B")
(defconst n-桃红 "#f47983")
(defconst n-鳳仙粉 "#FF9393")
(defconst n-粉红 "#ffb3a7")
(defconst n-露玫瑰 "#ffe4e1")

(defconst n-墨 "#50616D")
(defconst n-蒼青 "#7397ab")
(defconst n-墨灰 "#758A99")

(defconst n-养生主 "#b49b7f")

(defconst n-茶 "#B35C44")
(defconst n-鱼肚 "#FCEFE8")
(defconst n-珈琲椶 "#705438")
(defconst n-紙棕 "#D2B38C")
(defconst n-向日黃 "#FFC34D")
(defconst n-缟 "#F2ECDE")
(defconst n-牙 "#EEDEB0")
(defconst n-米灰 "#D3CBAF")
(defconst n-芽灰 "#E3DBBF")
(defconst n-胡粉 "#FFFAE8")
(defconst n-蠟白 "#FEF8DE")
(defconst n-富春紡 "#FEF4B4")
(defconst n-鹅黄 "#FFF143")
(defconst n-嬭油 "#fffdd0")
(defconst n-鸭黄 "#FAFF72")
(defconst n-蛤粉 "#fdfff4")
(defconst n-荼 "#F3F9F1")
(defconst n-素 "#E0F0E9")
(defconst n-霜 "#E9F1F6")
(defconst n-漆 "#161823")
(defconst n-黛 "#4A4266")
(defconst n-丁香 "#CCA4E3")
(defconst n-青莲 "#801DAE")
(defconst n-淡紫丁香 "#e6cfe6")
(defconst n-水紅 "#f3d3e7")
(defconst n-長萅蕐 "#FF47D1")
(defconst n-紫扇貝 "#923A60")

(provide '彩)
;;; 彩.el ends here
#+end_src

  • Definition
    :PROPERTIES:
    :ID: 957F26CD-C9BC-40E6-B9DE-41478964297B
    :END:

#+begin_src emacs-lisp
(defgroup nasy-theme nil
"Options of Nasy's theme."
:group 'faces)

(defcustom nasy-theme-light/dark 'light
"Nasy theme uses light theme or dark theme?"
:group 'nasy-theme
:type 'symbol)

(defcustom nasy-theme-org-scale t
"Nasy theme uses scale up in `org-mode' or not."
:group 'nasy-theme
:type 'boolean)

(defcustom nasy-theme-outline-scale t
"Nasy theme uses scale up in `outline' or not."
:group 'nasy-theme
:type 'boolean)

(defcustom nasy-theme-underlines-list '(comment constant dash-string hl-line)
"Nasy theme uses underline on list.

Should be one or more in comment', hl-line', constant', dash-string', `keyword'."
:group 'nasy-theme
:type '(list symbol))

(defcustom nasy-theme-fixed-pitch-font "Recursive Mono Casual Static"
"Nasy theme fixed pitch font."
:group 'nasy-theme
:type 'string)

(defcustom nasy-theme-variable-pitch-font "Cardo"
"Nasy theme variable pitch font."
:group 'nasy-theme
:type 'string)

(defcustom nasy-theme-variable-pitch-font-weight 'regular
"Nasy theme variable pitch font weight."
:group 'nasy-theme
:type 'symbol)

(defcustom nasy-theme-fixed-pitch-font-scale 1.0
"Nasy theme fixed pitch font scale."
:group 'nasy-theme
:type 'float)

(defcustom nasy-theme-variable-pitch-font-scale 1.3
"Nasy theme variable pitch font scale."
:group 'nasy-theme
:type 'float)

(defcustom nasy-theme-rescale-f/v-pitch-font t
"Nasy theme rescale f/v-pitch-font or not."
:group 'nasy-theme
:type 'boolean)

(defun nasy-theme--light?dark (light dark)
"Determine using the LIGHT or the DARK color of nasy-theme."
(if (eq nasy-theme-light/dark 'light)
light
dark))
(defalias '--l?d #'nasy-theme--light?dark)

(defun nasy-theme--scale? (scale)
"Determine using org-mode' SCALE or not." (if nasy-theme-org-scale scale 1)) (defun nasy-theme--outline-scale? (scale) "Determine using outline' SCALE or not."
(if nasy-theme-outline-scale
scale
1))
(defalias '--s? #'nasy-theme--scale?)
(defalias '--os? #'nasy-theme--outline-scale?)

(defun nasy-theme--check-underline-list (sym)
"Check if SYM in `nasy-theme-underlines-list' or not."
(when (memq sym nasy-theme-underlines-list)
t))
(defalias '--u? #'nasy-theme--check-underline-list)

(defun nasy-theme--rescale-font ()
"Nasy theme rescale font."
(when nasy-theme-rescale-f/v-pitch-font
(setf (alist-get
nasy-theme-fixed-pitch-font
face-font-rescale-alist
nasy-theme-fixed-pitch-font-scale nil 'string=)
nasy-theme-fixed-pitch-font-scale)
(setf (alist-get
nasy-theme-variable-pitch-font
face-font-rescale-alist
nasy-theme-variable-pitch-font-scale nil 'string=)
nasy-theme-variable-pitch-font-scale)))

(nasy-theme--rescale-font)
#+end_src

  • Theme
    :PROPERTIES:
    :ID: 9C9E3DCF-EE33-42A5-A312-AE5D3218EA92
    :END:

#+begin_src emacs-lisp
(deftheme nasy)

(let* ((class '((class color) (min-colors 88) (background light)))
(classd '((class color) (min-colors 88) (background dark)))
(n/淺背景 "#f4daefb6e3b6") ;; (color-lighten-name n-缟 1.45)
(n/深背景 "#F109ea21da05") ;; (color-darken-name n-缟 1.45)
(n/深深背景 "#ef20e757d52d") ;; (color-darken-name n-缟 2.9)
(nd/淺背景 "#1667187123a5") ;; (color-lighten-name n-漆 1.45)
(nd/淺淺背景 "#16b918ca2427") ;; (color-lighten-name n-漆 2.9)
(n/丁香青莲 (--l?d n-青莲 n-青莲))
(n/墨墨灰 (--l?d n-墨 n-墨灰))
(n/墨灰墨 (--l?d n-墨灰 n-墨))
(n/墨灰素 (--l?d n-墨灰 n-素))
(n/墨缟 (--l?d n-墨 n-缟))
(n/湖藍靛青 (--l?d n-湖藍 n-靛青))
(n/漆缟 (--l?d n-漆 n-缟))
(n/牙墨 (--l?d n-牙 n-墨))
(n/牙黛 (--l?d n-牙 n-黛))
(n/素墨 (--l?d n-素 n-墨))
(n/素墨灰 (--l?d n-素 n-墨灰))
(n/缟墨 (--l?d n-缟 n-墨))
(n/缟漆 (--l?d n-缟 n-漆))
(n/缟黛 (--l?d n-缟 n-黛))
(n/霜黛 (--l?d n-霜 n-黛))
(n/青莲丁香 (--l?d n-青莲 n-丁香))
(n/青莲牙 (--l?d n-青莲 n-牙))
(n/靛青湖藍 (--l?d n-靛青 n-湖藍))
(n/黛缟 (--l?d n-黛 n-缟))
(n/黛霜 (--l?d n-黛 n-霜)))
(custom-theme-set-faces
'nasy
;;; essential styles
`(default ((,class (:foreground ,n/墨缟 :background ,n/缟漆))))

 ;;; Basic
 `(bold ((,class (:weight bold))))
 `(button          ((,class (:box (:line-width 1) :underline t :weight bold))))
 `(cursor          ((,class (:background ,n/黛霜 :foreground ,n/霜黛))))
 `(error           ((,class (:background ,n-鳳仙粉 :foreground ,n-紫扇貝 :weight bold))))
 `(escape-glyph    ((,class (:foreground ,n-茶))))
 `(fixed-pitch
   ((,class (:family ,nasy-theme-fixed-pitch-font))))
 `(fixed-pitch-serif ((t (:inherit fixed-pitch))))
 `(fringe          ((,class (:background ,n/缟漆 :foreground ,n/墨缟))))
 `(header-line     ((,class (:background ,n-荼
                                         :box (:line-width 2 :style released-button)
                                         :extend t
                                         :foreground ,n/靛青湖藍))))
 `(highlight    ((,class (:background ,n-米灰
                                      :distant-foreground ,n/霜黛))))
 `(internal-border ((,class (:background ,n/缟漆))))
 `(link         ((,class (:foreground ,n-靛青 :underline t))))
 `(link-visited ((,class (:foreground ,n-青莲 :underline t))))
 `(region       ((,class (:background ,n-蠟白 :distant-foreground ,n/墨缟 :extend t))))
 `(secondary-selection ((,class (:background ,n-芽灰))))
 `(success      ((,class (:background ,n-鱼肚 :foreground ,n-靛青 :weight bold))))
 `(variable-pitch
   ((,class (:family ,nasy-theme-variable-pitch-font
                     :weight ,nasy-theme-variable-pitch-font-weight))))
 `(warning      ((,class (:background ,n-富春紡 :foreground ,n-珈琲椶 :weight bold))))


 ;;; centaur-tabs
 `(centaur-tabs-default
   ((,class (:background ,n-米灰
                         :foreground ,n-墨))))
 `(centaur-tabs-selected
   ((,class (:background ,n-富春紡
                         :foreground ,n-墨))))
 `(centaur-tabs-selected-modified
   ((,class (:background ,n-富春紡
                         :foreground ,n-墨
                         :slant italic))))
 `(centaur-tabs-unselected
   ((,class (:background ,n-春緑
                         :foreground ,n-墨灰))))
 `(centaur-tabs-unselected-modified
   ((,class (:background ,n-水黄
                         :foreground ,n-墨灰
                         :slant italic))))
 `(centaur-tabs-active-bar-face
   ((,class (:background ,n-墨))))



 ;;; company
 `(company-box-scrollbar
   ((,class (:background ,n/黛缟
                         :box (:line-width 2 :style released-button)
                         :extend t
                         :foreground ,n/缟黛))))
 `(company-box-selection
   ((,class (:inherit company-box-scrollbar))))
 `(company-echo-common
   ((,class (:background ,n-茶 :foreground ,n-缟))))
 `(company-preview-common
   ((,class (:background ,n-荼 :foreground ,n-墨 :slant italic :weight bold))))
 `(company-scrollbar-bg
   ((,class (:background ,n-牙))))
 `(company-scrollbar-fg
   ((,class (:background ,n-茶 :foreground ,n-缟))))
 `(company-tooltip
   ((,class (:background ,n/霜黛 :foreground ,n/黛霜))))
 `(company-tooltip-common
   ((,class (:background ,n-素 :foreground ,n-松绿 :weight bold))))
 `(company-tooltip-common-selection
   ((,class (:background ,n/黛缟 :foreground ,n-松花 :inherit company-tooltip-common))))
 `(company-tooltip-selection
   ((,class (:background ,n/黛缟
                         :box (:style released-button)
                         :extend t
                         :foreground ,n/缟黛))))

 ;;; counsel & ivy
 `(all-the-icons-ivy-rich-icon-face
   ((t (:box (:line-width 2 :style released-button)
             :inherit default))))
 `(ivy-current-match
   ((,class (:background ,n/黛缟
                         :extend t
                         :foreground ,n/缟墨
                         :weight bold))))
 `(ivy-highlight-face
   ((,class (:inherit counsel-active-mode))))
 `(ivy-minibuffer-match-face-1
   ((,class (:background ,n-松花
                         :foreground ,n-墨
                         :weight bold))))
 `(ivy-minibuffer-match-face-2
   ((,class (:background ,n-鹅黄
                         :foreground ,n-墨
                         :weight bold))))
 `(ivy-minibuffer-match-face-3
   ((,class (:background ,n-丁香
                         :foreground ,n-墨
                         :weight bold))))
 `(ivy-minibuffer-match-face-4
   ((,class (:background ,n-火红
                         :foreground ,n-墨
                         :weight bold))))

 ;;; customize faces
 `(custom-button
   ((,class (:box (:line-width 2 :style released-button)
                  :foreground ,n/霜黛
                  :background ,n/黛霜))))
 `(custom-button-mouse
   ((,class (:box (:line-width 2 :style released-button)
                  :background ,n/霜黛
                  :foreground ,n/黛霜))))
 `(custom-button-pressed
   ((,class (:box (:line-width 2 :style pressed-button)
                  :inherit custom-button))))
 `(custom-button-pressed-unraised
   ((,class (:foreground ,n-青莲 :inherit custom-button-unraised))))
 `(custom-button-unraised
   ((,class (:underline t))))
 `(custom-comment
   ((,class (:background ,n/霜黛 :foreground ,n/黛霜))))
 `(custom-group-tag
   ((,class (:foreground ,n-靛青
                         :height 1.4
                         :slant normal
                         :weight bold
                         :inherit variable-pitch))))
 `(custom-group-subtitle
   ((,class (:foreground ,n/墨缟
                         :height 1.2
                         :underline t
                         :weight bold))))
 `(custom-variable-obsolete
   ((,class (:foreground ,n/黛霜
                         :strike-through t))))
 `(custom-variable-tag
   ((,class (:foreground ,n-靛青
                         :slant normal
                         :weight bold))))

 ;;; dashboard
 `(dashboard-heading
   ((,class (:inherit font-lock-string-face :underline ,(--u? 'dash-string)))))
 `(widget-button
   ((,class (:weight unspecified))))

 ;;; display-fill-column-indicator-mode
 `(fill-column-indicator ((,class (:background ,n-湖藍 :foreground ,n-靛青))))


 ;;; flycheck
 `(flycheck-warning ((,class (:background ,n-牙
                                          :underline (:style wave :color ,n-丁香)))))

 ;;; font-lock faces
 `(font-lock-bracket-face
   ((,class (:foreground ,n-茶))))
 `(font-lock-builtin-face
   ((,class (:foreground ,n-黛 :weight bold))))
 `(font-lock-comment-delimiter-face
   ((,class (:foreground ,n-墨 :weight bold
                         :underline ,(--u? 'comment)))))
 `(font-lock-comment-face
   ((,class (:foreground ,n-墨 :weight light
                         :slant italic
                         :underline ,(--u? 'comment)))))
 `(font-lock-constant-face
   ((,class (:foreground ,n-黛
                         :underline ,(--u? 'constant)
                         :weight bold))))
 `(font-lock-delimiter-face
   ((,class (:foreground ,n-蒼翠
                         :background ,n/深深背景))))
 `(font-lock-doc-face
   ((,class (:background ,n-春緑 :foreground ,n-墨 :weight light :extend t))))
 `(font-lock-doc-markup-face
   ((,class (:inherit font-lock-constant-face))))
 `(font-lock-escape-face
   ((,class (:foreground ,n-丁香))))
 `(font-lock-function-name-face
   ((,class (:background ,n/深背景 :foreground ,n-墨 :weight bold))))
 `(font-lock-keyword-face
   ((,class (:foreground ,n-黛
                         :weight bold
                         :underline ,(--u? 'keyword)
                         :background ,n-断肠))
    (,classd (:foreground ,n-缟
                          :weight bold
                          :underline ,(--u? 'keyword)))))
 `(font-lock-misc-punctuation-face
   ((,class (:inherit font-lock-punctuation-face))))
 `(font-lock-negation-char-face
   ((,class (:foreground ,n-珈琲椶))))
 `(font-lock-number-face
   ((,class (:foreground ,n-深竹月))))
 `(font-lock-operator-face
   ((,class (:foreground ,n-羣青
                         :background ,n-露玫瑰))))
 `(font-lock-preprocessor-face
   ((,class (:foreground ,n-紙棕 :slant italic))))
 `(font-lock-property-face
   ((,class (:foreground ,n-靛藍 :slant italic))))
 `(font-lock-punctuation-face
   ((,class (:foreground ,n-春辰))))
 `(font-lock-regexp-grouping-backslash
   ((,class (:background ,n-淡紫丁香))))
 `(font-lock-regexp-grouping-construct
   ((,class (:background ,n-淡紫丁香))))
 `(font-lock-string-face
   ((,class (:background ,n/淺背景 :foreground ,n-青青))))
 `(font-lock-type-face
   ((,class (:background ,n/深深背景
                        :foreground ,n-墨
                        :slant italic
                        :weight bold))))
 `(font-lock-variable-name-face
   ((,class (:foreground ,n-墨 :slant italic))))
 `(font-lock-warning-face
   ((,class (:background ,n-鸭黄 :foreground ,n-墨 :weight bold))))

 ;;; highlight
 ;; highlight-indents-guide
 `(highlight-indent-guides-even-face
   ((,class (:background ,n-水黄))))
 `(highlight-indent-guides-odd-face
   ((,class (:background ,n-春緑))))
 ;; hl-line
 `(hl-line ((,class (:underline ,(--u? 'hl-line)
                                ;; :background ,n-芽灰
                                ;; :distant-foreground ,n-墨
                                :extend t
                                :weight bold))))

 ;;; minibuffer
 `(minibuffer-prompt ((,class (:foreground ,n-松绿 :weight bold
                                           :underline t))))

 ;;; mode line
 `(doom-modeline-battery-charging
   ((,class (:foreground ,n-寶藍))))
 `(doom-modeline-battery-full
   ((,class (:foreground ,n-松绿))))
 `(doom-modeline-buffer-file
   ((,class (:foreground ,n-墨
                         :weight light))))
 `(doom-modeline-buffer-minor-mode
   ((,class (:inherit mode-line))))
 `(doom-modeline-buffer-modified
   ((,class (:foreground ,n-火红
                         :inherit mode-line
                         :weight bold))))
 `(doom-modeline-buffer-major-mode
   ((,class (:foreground ,n-火红 :weight light))))
 `(doom-modeline-buffer-path
   ((,class (:foreground ,n-墨
                         :weight light))))
 `(doom-modeline-debug
   ((,class (:foreground ,n-墨 :weight light))))
 `(doom-modeline-info
   ((,class (:foreground ,n-靛青
                         :inherit mode-line
                         :weight light))))
 `(doom-modeline-lsp-error
   ((,class (:inherit doom-modeline-urgent))))
 `(doom-modeline-lsp-running
   ((,class (:inherit doom-modeline-warning))))
 `(doom-modeline-lsp-warning
   ((,class (:inherit doom-modeline-warning))))
 `(doom-modeline-buffer-minor-mode
   ((,class (:inherit mode-line :background nil))))
 `(doom-modeline-project-dir
   ((,class (:foreground ,n-青青 :weight bold))))
 `(doom-modeline-urgent
   ((,class (:foreground ,n-品红
                         :inherit mode-line
                         :weight bold))))
 `(doom-modeline-warning
   ((,class (:foreground ,n-松花
                         :inherit mode-line
                         :weight bold))))
 `(mode-line          ((,class (:background ,n-胡粉 :weight light))))
 `(mode-line-inactive ((,class (:background ,n-素 :weight light))))

 ;;; orderless
 `(orderless-match-face-0
   ((,class (:background ,n-富春紡   :foreground ,n-蒼翠 :weight bold))))
 `(orderless-match-face-1
   ((,class (:background ,n-鳳仙粉   :foreground ,n-珈琲椶 :weight bold))))
 `(orderless-match-face-2
   ((,class (:background ,n-龍泉靑瓷 :foreground ,n-靛青   :weight bold))))
 `(orderless-match-face-3
   ((,class (:background ,n-紙棕     :foreground ,n-松绿   :weight bold))))

 ;;; org mode
 `(org-block
   ((,class (:background ,n/淺背景 :foreground ,n-墨 :extend t))
    (,classd (:background ,nd/淺背景 :foreground ,n-缟 :extend t))))
 `(org-block-begin-line
   ((,class (:background ,n-嬭油
                         :box (:line-width 1 :style released-button)
                         :extend t
                         :foreground ,n/墨缟
                         :weight bold
                         :slant italic))))
 `(org-cite-key
   ((,class (:foreground ,n-松绿))
    (,classd (:foreground ,n-蔥青))))
 `(org-code ((,class (:background ,n-米灰
                                  :foreground ,n-墨
                                  :inheit fixed-pitch))))
 `(org-document-title
   ((,class (:background ,n-富春紡
                         :extend t
                         :foreground ,n/墨缟
                         :height ,(--s? 1.7)
                         :weight bold))))
 `(org-document-info
   ((,class (:extend nil
                         :foreground ,n/墨缟
                         :height ,(--s? 1.2)
                         :slant italic))))
 `(org-document-info-keyword
   ((,class (:background ,n/素墨
                         :foreground ,n/墨缟
                         :height ,(--s? 1.2)
                         :slant italic))))
 `(org-done
   ((,class (:box (:line-width 2 :style released-button)
                  :foreground ,n/墨缟))))
 `(org-ellipsis
   ((,class (:foreground ,n-米灰
                         :underline nil))))
 `(org-headline-done
   ((,class (:underline (:color ,n-松花)))))
 `(org-list-dt ((,class (:height ,(--s? 1.1) :weight bold))))
 `(org-meta-line
   ((,class (:inherit font-lock-comment-face
                      :underline nil))))
 `(org-property-value ((,class (:foreground ,n-松绿))))
 `(org-roam-link
   ((,class (:inherit org-link
                      :overline  t
                      :underline t))))
 `(org-special-keyword ((,class (:foreground ,n-深竹月))))
 `(org-superstar-header-bullet ((,class (:background ,n-富春紡))))
 `(org-superstar-item ((,class (:foreground ,n-靛青))))
 `(org-tag
   ((,class (;; :background ,n/牙黛
             :box nil
                  :foreground ,n/墨缟
                  :slant normal
                  :underline nil
                  :weight bold))))
 `(org-verbatim ((,class (:background ,n-春緑
                                      :foreground ,n-墨
                                      :inheit fixed-pitch))))

 ;;; Outline
 ;; Also the org-levels
 `(outline-1
   ((,class (:extend nil
                     ;; :background ,n-霜
                     :foreground ,n-靛青
                     :height ,(--os? 1.4)
                     :overline nil
                     :underline nil
                     :weight bold))))
 `(outline-2
   ((,class (:extend nil
                     ;; :background ,n-露玫瑰
                     :foreground ,n-紫扇貝
                     :height ,(--os? 1.2)
                     :overline nil
                     :underline nil
                     :weight bold))))
 `(outline-3
   ((,class (:extend nil
                     ;; :background ,n-春緑
                     :foreground ,n-松绿
                     :height ,(--os? 1.1)
                     :overline nil
                     :underline nil
                     :weight bold))))
 `(outline-4
   ((,class (:extend nil
                     ;; :background ,n-淡紫丁香
                     :foreground ,n/青莲丁香
                     :height ,(--os? 1.1)
                     :overline nil
                     :underline nil
                     :weight bold))))
 `(outline-5
   ((,class (:extend nil
                     :foreground ,n-靛青
                     :height ,(--os? 1.1)
                     :slant italic
                     :weight normal))))
 `(outline-6
   ((,class (:extend nil
                     :foreground ,n-茶
                     :height ,(--os? 1.1)
                     :slant italic
                     :weight normal))))
 `(outline-7
   ((,class (:extend nil
                     :foreground ,n-松绿
                     :height ,(--os? 1.1)
                     :slant italic
                     :weight normal))))
 `(outline-8
   ((,class (:extend nil
                     :foreground ,n/青莲丁香
                     :height ,(--os? 1.1)
                     :slant italic
                     :weight normal))))

 ;;; page break lines
 `(page-break-lines
   ((,class (:inherit font-lock-comment-face :slant normal :underline nil))))


 ;;; Show parens
 `(show-paren-match    ((,class (:background ,n-丁香))))
 `(show-paren-mismatch ((,class (:background ,n-鳳仙粉))))

 ;;; tab-line and tab-bar
 `(tab-line                               ((t (:inherit mode-line))))
 `(tab-line-tab                           ((t (:inherit mode-line))))
 `(tab-line-tab-inactive                  ((t (:inherit mode-line-inactive))))
 `(tab-line-tab-face-inactive-alternating ((t (:inherit mode-line-inactive))))
 `(tab-line-tab-current                   ((t (:inherit mode-line :foreground ,n-富春紡))))
 `(tab-line-highlight                     ((t (:inherit tab-line-tab))))

 `(tab-bar                ((t (:inherit tab-line))))
 `(tab-bar-tab            ((t (:inherit tab-line-tab))))
 `(tab-bar-tab-inactive   ((t (:inherit tab-line-tab-inactive))))

 ;;; term
 `(term-color-black   ((,class (:background ,n-墨     :foreground ,n-墨))))
 `(term-color-blue    ((,class (:background ,n-靛青   :foreground ,n-靛青))))
 `(term-color-cyan    ((,class (:background ,n-湖藍   :foreground ,n-湖藍))))
 `(term-color-green   ((,class (:background ,n-松绿   :foreground ,n-松绿))))
 `(term-color-magenta ((,class (:background ,n-長萅蕐 :foreground ,n-長萅蕐))))
 `(term-color-red     ((,class (:background ,n-火红   :foreground ,n-火红))))
 `(term-color-white   ((,class (:background ,n-缟     :foreground ,n-缟))))
 `(term-color-yellow  ((,class (:background ,n-紙棕   :foreground ,n-紙棕))))
 `(vterm-color-inverse-video
   ((,class (:background ,n-墨))))

 ;;; vertico
 `(vertico-mouse  ((,class (:background ,n-紙棕
                                        :inherit highlight))))

 ;;; which-func
 `(which-func  ((,class (:foreground ,n-青青 :weight light))))))

;;;###autoload
(and load-file-name
(boundp 'custom-theme-load-path)
(add-to-list 'custom-theme-load-path
(file-name-as-directory
(file-name-directory load-file-name))))

(provide-theme 'nasy)
#+end_src

  • Footer :noexport:
    :PROPERTIES:
    :ID: D06983B0-64EC-41CD-A6AD-D243B37D4DCC
    :END:

#+begin_src emacs-lisp
(provide 'nasy-theme)
;;; nasy-theme.el ends here
#+end_src

Local Variables:

org-src-fontify-natively: nil

End:

Languages

Emacs Lisp100.0%

Contributors

Created May 18, 2021
Updated January 31, 2026
nasyxx/emacs-nasy-theme | GitHunt