From 9c48decc134b5785c2f5bd0535e88928b06bb813 Mon Sep 17 00:00:00 2001 From: Amin Bandali Date: Sat, 25 Apr 2020 12:17:59 -0400 Subject: Add and use my new Refinery colour theme Assimilate 4 drones Assimilate minions v0.3.3-2-gbc1edab Assimilate refinery-theme 71b5501 Assimilate rich-minority 1.0.3-2-ga03e693 Assimilate smart-mode-line 2.13-1-g999be06 * init.el: Move theme-related things from here... * lisp/bandali-theme.el: ...to here. * lisp/bandali-ivy.el: Face customizations now in Refinery. --- lisp/bandali-ivy.el | 11 +--- lisp/bandali-theme.el | 94 ++++++++++++++++++++++++++++++++++ lisp/smart-mode-line-bandali-theme.el | 51 ++++++++++++++++++ lisp/smart-mode-line-tangomod-theme.el | 51 ------------------ 4 files changed, 146 insertions(+), 61 deletions(-) create mode 100644 lisp/bandali-theme.el create mode 100644 lisp/smart-mode-line-bandali-theme.el delete mode 100644 lisp/smart-mode-line-tangomod-theme.el (limited to 'lisp') diff --git a/lisp/bandali-ivy.el b/lisp/bandali-ivy.el index 4a88a13..438360f 100644 --- a/lisp/bandali-ivy.el +++ b/lisp/bandali-ivy.el @@ -51,16 +51,7 @@ This function is intended for use with `ivy-ignore-buffers'." (apply #'provided-mode-derived-p mode b/ivy-ignore-buffer-modes)))) (add-to-list 'ivy-ignore-buffers 'b/ivy-ignore-buffer-p) - (ivy-mode 1) - :custom-face - (ivy-minibuffer-match-face-1 ((t (:background "#eeeeee")))) - (ivy-minibuffer-match-face-2 ((t (:background "#e7e7e7" :weight bold)))) - (ivy-minibuffer-match-face-3 ((t (:background "light goldenrod" :weight semi-bold)))) - (ivy-minibuffer-match-face-4 ((t (:background "misty rose" :weight semi-bold)))) - (ivy-current-match ((((class color) (background light)) - :background "#d7d7d7" :foreground "black") - (((class color) (background dark)) - :background "#65a7e2" :foreground "black")))) + (ivy-mode 1)) (use-package swiper :demand diff --git a/lisp/bandali-theme.el b/lisp/bandali-theme.el new file mode 100644 index 0000000..2266723 --- /dev/null +++ b/lisp/bandali-theme.el @@ -0,0 +1,94 @@ +;;; bandali-theme.el --- bandali's custom theme setup -*- lexical-binding: t; -*- + +;; Copyright (C) 2018-2020 Amin Bandali + +;; Author: Amin Bandali +;; Keywords: faces + +;; This program 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. + +;; This program 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 this program. If not, see . + +;;; Commentary: + +;; My custom theme setup. + +;;; Code: + +(add-to-list + 'custom-theme-load-path + (expand-file-name + (convert-standard-filename "lisp") user-emacs-directory)) + +(use-package refinery-theme + :demand + :config + (load-theme 'refinery t)) + +(use-package smart-mode-line + :commands (sml/apply-theme) + :demand + :config + ;; thanks, but no thnaks; don't make fixed-width fills. + (defun sml/fill-for-buffer-identification () "") + (setq sml/theme 'bandali) + (sml/setup) + (smart-mode-line-enable)) + +(use-package minions + :demand + :config (minions-mode)) + +(defvar b/org-mode-font-lock-keywords + '(("[ \t]*\\(#\\+\\(BEGIN\\|END\\|begin\\|end\\)_\\(\\S-+\\)\\)[ \t]*\\([^\n:]*\\)" + (1 '(:foreground "#5a5b5a" :background "#292b2b") t) ; directive + (3 '(:foreground "#81a2be" :background "#292b2b") t) ; kind + (4 '(:foreground "#c5c8c6") t))) ; title + "For use with the `doom-tomorrow-night' theme.") + +(eval-when-compile + (declare-function exwm-systemtray--refresh "exwm-systemtray")) + +(defun b/lights-on () + "Enable my favourite light theme." + (interactive) + (mapc #'disable-theme custom-enabled-themes) + (load-theme 'refinery t) + (when (featurep 'smart-mode-line) + (sml/apply-theme 'bandali)) + (font-lock-remove-keywords + 'org-mode b/org-mode-font-lock-keywords) + (when (featurep 'erc-hl-nicks) + (erc-hl-nicks-reset-face-table)) + (when (featurep 'exwm-systemtray) + (exwm-systemtray--refresh))) + +(defun b/lights-off () + "Go dark." + (interactive) + (mapc #'disable-theme custom-enabled-themes) + (load-theme 'tango-dark t) + (when (featurep 'smart-mode-line) + (sml/apply-theme 'automatic)) + (font-lock-add-keywords + 'org-mode b/org-mode-font-lock-keywords t) + (when (featurep 'erc-hl-nicks) + (erc-hl-nicks-reset-face-table)) + (when (featurep 'exwm-systemtray) + (exwm-systemtray--refresh))) + +(bind-keys + ("C-c t d" . b/lights-off) + ("C-c t l" . b/lights-on)) + +(provide 'bandali-theme) +;;; bandali-theme.el ends here diff --git a/lisp/smart-mode-line-bandali-theme.el b/lisp/smart-mode-line-bandali-theme.el new file mode 100644 index 0000000..c3a2fb3 --- /dev/null +++ b/lisp/smart-mode-line-bandali-theme.el @@ -0,0 +1,51 @@ +;;; smart-mode-line-bandali-theme.el --- bandali's smart-mode-line theme -*- lexical-binding: t; -*- + +;; Copyright (C) 2019-2020 Amin Bandali + +;; Author: Amin Bandali +;; Version: 0.1.0 +;; Package-Requires: ((emacs "24.3") (smart-mode-line "2.10")) +;; Keywords: faces + +;; This file is NOT part of GNU Emacs. + +;; This program 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. + +;; This program 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 this program. If not, see . + +;;; Commentary: + +;; My custom theme for smart-mode-line. + +;;; Code: + +(deftheme smart-mode-line-bandali + "My custom theme for smart-mode-line.") + +(custom-theme-set-faces + 'smart-mode-line-bandali + '(mode-line-buffer-id ((t :inherit sml/filename :foreground nil :background nil))) + '(mode-line-inactive ((t :background "#e1e1e1"))) + '(mode-line ((t :background "#e7e7e7"))) + '(sml/global ((t :inherit font-lock-preprocessor-face))) + '(sml/filename ((t :inherit mode-line-buffer-id))) + '(sml/modes ((t :foreground nil :inherit sml/filename :weight normal))) + '(sml/prefix ((t :inherit (font-lock-variable-name-face sml/global)))) + '(sml/read-only ((t :inherit (font-lock-type-face sml/not-modified))))) + +;;;###autoload +(when load-file-name + (add-to-list 'custom-theme-load-path + (file-name-as-directory (file-name-directory load-file-name)))) + +(provide-theme 'smart-mode-line-bandali) +;;; smart-mode-line-bandali-theme.el ends here. diff --git a/lisp/smart-mode-line-tangomod-theme.el b/lisp/smart-mode-line-tangomod-theme.el deleted file mode 100644 index b69eb7d..0000000 --- a/lisp/smart-mode-line-tangomod-theme.el +++ /dev/null @@ -1,51 +0,0 @@ -;;; smart-mode-line-tangomod-theme.el --- tangomod theme for smart-mode-line - -;; Copyright (C) 2019 Amin Bandali - -;; Author: Amin Bandali -;; Version: 0.1.0 -;; Package-Requires: ((emacs "24.3") (smart-mode-line "2.10")) -;; Keywords: mode-line themes faces - -;;; Commentary: -;; -;; tangomod theme for smart-mode-line - -;;; License: -;; -;; This file is NOT part of GNU Emacs. -;; -;; This program 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. -;; -;; This program 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. -;; - -;;; Code: - -(deftheme smart-mode-line-tangomod - "tangomod theme for smart-mode-line.") - -(custom-theme-set-faces - 'smart-mode-line-tangomod - '(mode-line-buffer-id ((t :inherit sml/filename :foreground nil :background nil))) - '(mode-line-inactive ((t :background "#e1e1e1"))) - '(mode-line ((t :background "#e7e7e7"))) - '(sml/global ((t :inherit font-lock-preprocessor-face))) - '(sml/filename ((t :inherit mode-line-buffer-id))) - '(sml/modes ((t :foreground nil :inherit sml/filename :weight normal))) - '(sml/prefix ((t :inherit (font-lock-variable-name-face sml/global)))) - '(sml/read-only ((t :inherit (font-lock-type-face sml/not-modified))))) - -;;;###autoload -(when load-file-name - (add-to-list 'custom-theme-load-path - (file-name-as-directory (file-name-directory load-file-name)))) - -(provide-theme 'smart-mode-line-tangomod) -;;; smart-mode-line-tangomod-theme.el ends here. -- cgit v1.2.3-60-g2f50