]> git.earman.xyz Git - emacsinit.git/commitdiff
Switch to acme-theme, better modeline
authorrearman <rearman@r717.net>
Mon, 6 Apr 2026 16:04:04 +0000 (12:04 -0400)
committerrearman <rearman@r717.net>
Mon, 6 Apr 2026 16:04:04 +0000 (12:04 -0400)
Removed unused themes, set up a simplified mode-line with nice colors, etc.
Also set up auto-enable/disable of scroll bars.

init.el
re/8color-ansi-theme.el [deleted file]
re/acme-theme.el
re/b&w-theme.el [deleted file]

diff --git a/init.el b/init.el
index 4b178911156a227b43afc868c1057e0fcb131f19..42f4dc1c2c2211af025bf95022c5a997eac32954 100644 (file)
--- a/init.el
+++ b/init.el
               (window-height . 4)))
 
 (blink-cursor-mode -1)
-
-(setq-default mode-line-format
-             '("%e"
-               (:propertize "  " face (if (and (buffer-file-name) (buffer-modified-p))
-                                          mode-line-highlight
-                                        mode-line-active))
-               " "
-               mode-line-mule-info
-               mode-line-client
-               mode-line-modified
-               mode-line-remote
-               mode-line-window-dedicated
-               " [%l,%C]%n "
-               (:propertize (buffer-file-name "%f" "%b") face mode-line-buffer-id)
-               " (%Ib)"
-               " <%m>"
-               (project-mode-line project-mode-line-format)
-               (vc-mode vc-mode)
-               " "
-               mode-line-misc-info
-               mode-line-end-spaces))
-
 (delete-selection-mode t)
 
 (setq delete-by-moving-to-trash t
 (setq bookmark-save-flag 1)
 \f
 ;; GUI Settings
-;; (require '8color-ansi-theme)
-;; (require 'b&w-theme)
 (require 'acme-theme)
 (load-theme 'acme t)
 
-;; (defun swap-theme ()
-;;   (interactive)
-;;   (let* ((theme (car custom-enabled-themes))
-;;      (new (if (equal theme 'b&w) '8color-ansi 'b&w)))
-;;     (disable-theme theme)
-;;     (load-theme new t)))
-
 (menu-bar-mode -1)
 (tool-bar-mode -1)
-(set-scroll-bar-mode 'left)
 
-(setq frame-title-format "%b %*%+"
+(defun re/auto-scroll-bar ()
+  "Only show the scrollbar if needed."
+  (if (> (count-lines (point-min) (point-max)) (window-height))
+      (set-window-scroll-bars (selected-window) 18 'left)
+    (set-window-scroll-bars (selected-window) nil nil)))
+
+(add-hook 'post-command-hook #'re/auto-scroll-bar)
+
+(setq frame-title-format "%b"
       mouse-prefer-closest-glyph t
       mouse-1-click-follows-link nil
       focus-follows-mouse t
+      x-underline-at-descent-line t
       mouse-autoselect-window -0.25)
 
+(setq-default mode-line-format
+             '("%e"
+               (:eval (propertize "  "
+                                  'face
+                                  (if (buffer-modified-p)
+                                      'mode-line-highlight
+                                    'header-line)))
+               ;; removed the below to test if it makes a difference
+               ;; mode-line-window-dedicated
+               " "
+               (:propertize (buffer-file-name "%f" "%b")
+                            face
+                            mode-line-buffer-id)
+               " (%Ib) "
+               mode-line-remote
+               (vc-mode vc-mode)
+               mode-line-format-right-align
+               "%["
+               mode-name
+               "%]"
+               " %n %l,%C  "))
+
 (setq prettify-symbols-alist '(("lambda" . 955)
                               ("delta" . 120517)
                               ("epsilon" . 120518)
diff --git a/re/8color-ansi-theme.el b/re/8color-ansi-theme.el
deleted file mode 100644 (file)
index 3636956..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-;;; 8color-ansi-theme.el --- -*- lexical-binding: t; -*-
-
-;;; Code:
-
-(deftheme 8color-ansi
-  "Simple dark color theme")
-
-(let ((class '((class color) (min-colors 89))))
-  (custom-theme-set-faces
-   '8color-ansi
-;;;; Special faces.
-   `(default
-     ((,class (:foreground "#fff" :background "#000"))))
-   `(error
-     ((,class (:foreground "#f00" :underline t))))
-   `(warning
-     ((,class (:foreground "#ff0"))))
-   `(success
-     ((,class (:foreground "#0f0"))))
-   `(link
-     ((,class (:foreground "#00f" :underline t))))
-;;;; font-lock.
-   `(font-lock-comment-face
-     ((,class (:foreground "#f00" :slant italic :weight light))))
-   `(font-lock-string-face
-     ((,class (:foreground "#0ff"))))
-   `(font-lock-builtin-face
-     ((,class (:foreground "#08f"))))
-   `(font-lock-type-face
-     ((,class (:foreground "#08f"))))
-   `(font-lock-constant-face
-     ((,class (:foreground "#08f"))))
-   `(font-lock-function-name-face
-     ((,class (:foreground "#0f0"))))
-   `(font-lock-variable-name-face
-     ((,class (:foreground "#0f0"))))
-   `(font-lock-keyword-face
-     ((,class (:foreground "#ff0"))))
-   `(font-lock-number-face
-     ((,class (:foreground "#f0f"))))
-   `(font-lock-warning-face
-     ((,class (:foreground "f80" :underline nil))))
-;;;; Decorations.
-   `(vertical-border
-     ((,class (:foreground "#f00"))))
-   `(scroll-bar
-     ((,class (:foreground "#f00"))))
-   `(region
-     ((,class (:background "#08f" :foreground "fff"))))
-   `(shadow
-     ((,class (:foreground "#f00"))))
-   `(match
-     ((,class (:background "#f00"))))
-   `(highlight
-     ((,class (:background "#08f" :foreground "fff"))))
-   `(lazy-highlight
-     ((,class (:background "#08f" :foreground "fff"))))
-   `(isearch
-     ((,class (:foreground "#000" :background "#fff"))))
-   `(fringe
-     ((,class (:foreground "#f00" :background "#000"))))
-   `(line-number
-     ((,class (:foreground "#f00" :background "#000"))))
-   `(line-number-current-line
-     ((,class (:foreground "#000" :background "#f00" :weight bold))))
-   `(mode-line
-     ((,class (:foreground "#fff" :background "#000" :box t))))
-   `(mode-line-inactive
-     ((,class (:foreground "#888" :background "#000" :box t))))
-   `(mode-line-highlight
-     ((,class (:box (:line-width 1 :color "#0ff" :style released-button)))))
-;;; Org
-   `(org-document-title
-     ((,class (:foreground "#ff0" :weight bold))))
-   `(org-level-1
-     ((,class (:foreground "#0ff"))))
-   `(org-level-2
-     ((,class (:foreground "#0ff"))))
-   `(org-level-3
-     ((,class (:foreground "#0ff"))))
-   `(org-level-4
-     ((,class (:foreground "#0ff"))))
-   `(org-level-5
-     ((,class (:foreground "#0ff"))))
-   `(org-level-6
-     ((,class (:foreground "#0ff"))))
-   `(org-level-7
-     ((,class (:foreground "#0ff"))))
-   `(org-level-8
-     ((,class (:foreground "#0ff"))))
-   `(org-todo
-     ((,class (:foreground "#f00"))))
-   `(org-done
-     ((,class (:foreground "#0f0"))))
-   `(org-headline-done
-     ((,class (:foreground "#0ff"))))
-   `(org-ellipsis
-     ((,class (:foreground "#ff0" :underline nil))))
-   `(org-document-info-keyword
-     ((,class (:foreground "#0ff"))))
-   `(org-special-keyword
-     ((,class (:foreground "#0ff"))))
-   `(org-checkbox
-     ((,class (:foreground "#0ff" :background "#000" :box nil))))
-   `(org-tag
-     ((,class (:foreground "#ff0"))))
-   `(org-code
-     ((,class (:foreground "#00f"))))
-   `(org-verbatim
-     ((,class (:foreground "#00f" :box (:line-width 1 :color "#0ff" :style released-button)))))
-   `(org-table
-     ((,class (:foreground "#0ff"))))
-   `(org-formula
-     ((,class (:foreground "#0ff"))))
-   `(org-block
-     ((,class (:foreground "#fff"))))
-   `(org-block-begin-line
-     ((,class (:foreground "#00f"))))
-   `(org-block-end-line
-     ((,class (:foreground "#00f"))))
-   `(org-drawer
-     ((,class (:foreground "#00f"))))
-   `(org-priority
-     ((,class (:foreground "#00f"))))
-   `(org-footnote
-     ((,class (:foreground "#00f"))))
-   `(org-date
-     ((,class (:foreground "#00f"))))
-   `(org-link
-     ((,class (:foreground "#00f" :underline t))))
-;;; Org Agenda
-   `(header-line
-     ((,class (:foreground "#ff0" :background "#000" :weight bold :height 1.25))))
-   `(org-agenda-structure
-     ((,class (:foreground "#ff0" :background "#000" :box nil :weight bold :height 1.25))))
-   `(org-column
-     ((,class (:background "#000"))))
-   `(org-warning
-     ((,class (:foreground "#f0f"))))
-   `(org-agenda-done
-     ((,class (:foreground "#0f0" :slant normal))))
-   `(org-time-grid
-     ((,class (:foreground "#0ff"))))
-   `(calendar-weekday-header
-     ((,class (:foreground "#ff0"))))
-   `(org-agenda-calendar-event
-     ((,class (:foreground "#fff"))))
-   `(org-agenda-clocking
-     ((,class (:foreground "#0ff" :background "#f00"))))
-   `(org-agenda-date
-     ((,class (:foreground "#00f" :background "#000" :box nil :weight normal))))
-   `(org-agenda-date-weekend
-     ((,class (:foreground "#00f" :background "#000" :box nil :weight normal :underline nil))))
-   `(org-agenda-date-today
-     ((,class (:foreground "#ff0" :background "#000" :box nil :weight normal :slant normal :inverse-video nil))))
-   `(org-upcoming-distant-deadline
-     ((,class (:foreground "#f80"))))
-   `(org-upcoming-deadline
-     ((,class (:foreground "#f88"))))
-   `(org-imminent-deadline
-     ((,class (:foreground "#f00" :weight normal))))
-   `(org-scheduled
-     ((,class (:foreground "#0f0"))))
-   `(org-scheduled-today
-     ((,class (:foreground "#0f0"))))
-   `(org-scheduled-previously
-     ((,class (:foreground "#ff0"))))
-;;; Misc. other packages
-   `(corfu-default
-     ((,class (:foreground "#08f" :background "#000"))))
-   `(corfu-current
-     ((,class (:foreground "#000" :background "#08f"))))
-   `(dired-ignored
-     ((,class (:foreground "#0ff"))))))
-
-;;;###autoload
-(when load-file-name
-  (add-to-list 'custom-theme-load-path
-              (file-name-as-directory (file-name-directory load-file-name))))
-
-(provide-theme '8color-ansi)
-(provide '8color-ansi-theme)
-;;; 8color-ansi-theme.el ends here
index 320261d933319407a4fa8f81ee5e7e6341bb9dbd..8de64b3ce0ac01c202b6f6759b5a2e2c0d03e212 100644 (file)
@@ -46,7 +46,7 @@
      ((,class (:inherit default))))
 ;;;; Decorations.
    `(vertical-border
-     ((,class (:inherit default))))
+     ((,class (:background ,text))))
    `(scroll-bar
      ((,class (:background ,darkscroll))))
    `(region
    `(line-number-current-line
      ((,class (:foreground ,text :background ,darkscroll :weight bold))))
    `(mode-line
-     ((,class (:foreground ,text :background ,bar :box t))))
+     ((,class (:foreground ,text :background ,bar))))
    `(mode-line-inactive
-     ((,class (:foreground ,text :background ,bar :box t))))
+     ((,class (:inherit mode-line))))
    `(mode-line-highlight
-     ((,class (:background ,dirty :box (:line-width 1 :color ,text released-button)))))
+     ((,class (:foreground ,text :background ,dirty :box (:color ,dirty)))))
+   `(header-line
+     ((,class (:foreground ,text :background ,bar :box (:color ,dirty)))))
 ;;; Org
    `(org-document-title
      ((,class (:foreground ,text :weight bold))))
diff --git a/re/b&w-theme.el b/re/b&w-theme.el
deleted file mode 100644 (file)
index 579d1b2..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-;;; b&w-theme.el --- -*- lexical-binding: t; -*-
-
-;;; Code:
-
-(deftheme b&w
-  "Mostly monochrome dark color theme")
-
-(let ((class '((class color) (min-colors 89)))
-      (text "#fff")
-      (bg "#000")
-      (red "#f00")
-      (green "#0f0"))
-  (custom-theme-set-faces
-   'b&w
-;;;; Special faces.
-   `(default
-     ((,class (:foreground ,text :background ,bg))))
-   `(error
-     ((,class (:foreground ,text :underline t))))
-   `(warning
-     ((,class (:foreground ,text))))
-   `(success
-     ((,class (:foreground ,text))))
-   `(link
-     ((,class (:foreground ,text :underline t))))
-;;;; font-lock.
-   `(font-lock-comment-face
-     ((,class (:foreground ,text :slant italic :weight light))))
-   `(font-lock-string-face
-     ((,class (:foreground ,text))))
-   `(font-lock-builtin-face
-     ((,class (:foreground ,text))))
-   `(font-lock-type-face
-     ((,class (:foreground ,text))))
-   `(font-lock-constant-face
-     ((,class (:foreground ,text))))
-   `(font-lock-function-name-face
-     ((,class (:foreground ,text))))
-   `(font-lock-variable-name-face
-     ((,class (:foreground ,text))))
-   `(font-lock-keyword-face
-     ((,class (:foreground ,text))))
-   `(font-lock-number-face
-     ((,class (:foreground ,text))))
-   `(font-lock-warning-face
-     ((,class (:foreground "fff" :underline nil))))
-;;;; Decorations.
-   `(vertical-border
-     ((,class (:foreground ,text))))
-   `(scroll-bar
-     ((,class (:foreground ,text))))
-   `(region
-     ((,class (:background ,text :foreground ,bg))))
-   `(shadow
-     ((,class (:foreground ,text))))
-   `(match
-     ((,class (:background ,text))))
-   `(highlight
-     ((,class (:background ,text :foreground ,bg))))
-   `(lazy-highlight
-     ((,class (:background ,text :foreground ,bg))))
-   `(isearch
-     ((,class (:foreground ,text :background ,bg))))
-   `(fringe
-     ((,class (:foreground ,text :background ,bg))))
-   `(line-number
-     ((,class (:foreground ,text :background ,bg))))
-   `(line-number-current-line
-     ((,class (:foreground ,bg :background ,text :weight bold))))
-   `(mode-line
-     ((,class (:foreground ,text :background ,bg :box t))))
-   `(mode-line-inactive
-     ((,class (:foreground "#888" :background ,bg :box t))))
-   `(mode-line-highlight
-     ((,class (:box (:line-width 1 :color ,text :style released-button)))))
-;;; Org
-   `(org-document-title
-     ((,class (:foreground ,text :weight bold))))
-   `(org-level-1
-     ((,class (:foreground ,text))))
-   `(org-level-2
-     ((,class (:foreground ,text))))
-   `(org-level-3
-     ((,class (:foreground ,text))))
-   `(org-level-4
-     ((,class (:foreground ,text))))
-   `(org-level-5
-     ((,class (:foreground ,text))))
-   `(org-level-6
-     ((,class (:foreground ,text))))
-   `(org-level-7
-     ((,class (:foreground ,text))))
-   `(org-level-8
-     ((,class (:foreground ,text))))
-   `(org-todo
-     ((,class (:foreground ,red :bold t))))
-   `(org-done
-     ((,class (:foreground ,green :italic t))))
-   `(org-headline-done
-     ((,class (:foreground ,green))))
-   `(org-ellipsis
-     ((,class (:foreground ,text :underline nil))))
-   `(org-document-info-keyword
-     ((,class (:foreground ,text))))
-   `(org-special-keyword
-     ((,class (:foreground ,text))))
-   `(org-checkbox
-     ((,class (:foreground ,text :background ,bg :box nil))))
-   `(org-tag
-     ((,class (:foreground ,text :bold t))))
-   `(org-code
-     ((,class (:foreground ,text))))
-   `(org-verbatim
-     ((,class (:foreground ,text :box (:line-width 1 :color ,text :style released-button)))))
-   `(org-table
-     ((,class (:foreground ,text))))
-   `(org-formula
-     ((,class (:foreground ,text))))
-   `(org-block
-     ((,class (:foreground ,text))))
-   `(org-block-begin-line
-     ((,class (:foreground ,text))))
-   `(org-block-end-line
-     ((,class (:foreground ,text))))
-   `(org-drawer
-     ((,class (:foreground ,text))))
-   `(org-priority
-     ((,class (:foreground ,text))))
-   `(org-footnote
-     ((,class (:foreground ,text))))
-   `(org-date
-     ((,class (:foreground ,text))))
-   `(org-link
-     ((,class (:foreground ,text :underline t))))
-;;; Org Agenda
-   `(header-line
-     ((,class (:foreground ,text :background ,bg :weight bold))))
-   `(org-agenda-structure
-     ((,class (:foreground ,text :background ,bg :box nil :weight bold))))
-   `(org-column
-     ((,class (:background ,bg))))
-   `(org-warning
-     ((,class (:foreground ,text))))
-   `(org-agenda-done
-     ((,class (:foreground ,text :italic t))))
-   `(org-time-grid
-     ((,class (:foreground ,text :bold t))))
-   `(calendar-weekday-header
-     ((,class (:foreground ,text))))
-   `(org-agenda-calendar-event
-     ((,class (:foreground ,text))))
-   `(org-agenda-clocking
-     ((,class (:foreground ,bg :background ,text))))
-   `(org-agenda-date
-     ((,class (:foreground ,text :background ,bg :box nil :weight normal))))
-   `(org-agenda-date-weekend
-     ((,class (:foreground ,text :background ,bg :box nil :weight normal :underline nil))))
-   `(org-agenda-date-today
-     ((,class (:foreground ,text :background ,bg :box nil :weight normal :slant normal :inverse-video nil))))
-   `(org-upcoming-distant-deadline
-     ((,class (:foreground ,text :italic t))))
-   `(org-upcoming-deadline
-     ((,class (:foreground ,text :italic t))))
-   `(org-imminent-deadline
-     ((,class (:foreground ,text :weight bold))))
-   `(org-scheduled
-     ((,class (:foreground ,text))))
-   `(org-scheduled-today
-     ((,class (:foreground ,text))))
-   `(org-scheduled-previously
-     ((,class (:foreground ,text))))
-;;; Misc. other packages
-   `(corfu-default
-     ((,class (:foreground ,text :background ,bg))))
-   `(corfu-current
-     ((,class (:foreground ,bg :background ,text))))
-   `(dired-ignored
-     ((,class (:foreground ,text))))))
-
-;;;###autoload
-(when load-file-name
-  (add-to-list 'custom-theme-load-path
-              (file-name-as-directory (file-name-directory load-file-name))))
-
-(provide-theme 'b&w)
-(provide 'b&w-theme)
-;;; b&w-theme.el ends here