diff options
author | bd <bdunahu@operationnull.com> | 2024-12-19 01:36:13 -0500 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2024-12-19 01:36:13 -0500 |
commit | 6ace355721c76ca3dc91819079809178a5b75822 (patch) | |
tree | 036054eca1a170f1adeab4f978bebeaa2f60e1bb /.config | |
parent | ef5051ce34fd2639a85dd1532651109adcd00476 (diff) |
Color active modeline more, add more modeline utilities
Diffstat (limited to '.config')
-rw-r--r-- | .config/emacs/init.el | 2 | ||||
-rw-r--r-- | .config/emacs/modules/bd--browse.el | 3 | ||||
-rw-r--r-- | .config/emacs/modules/bd--devel.el | 29 | ||||
-rw-r--r-- | .config/emacs/modules/bd--modeline.el | 70 | ||||
-rw-r--r-- | .config/emacs/modules/bd--themes.el | 12 | ||||
-rw-r--r-- | .config/guix/modules/emacs.scm | 2 |
6 files changed, 77 insertions, 41 deletions
diff --git a/.config/emacs/init.el b/.config/emacs/init.el index d42ed9d..9da13d3 100644 --- a/.config/emacs/init.el +++ b/.config/emacs/init.el @@ -23,7 +23,7 @@ (keymap-global-set "C-x C-b" #'ibuffer) (keymap-global-set "C-z =" #'text-scale-increase) (keymap-global-set "C-z -" #'text-scale-decrease) -(keymap-global-set "H-p" #'pop-to-mark-command) +(keymap-global-set "H-SPC" #'pop-to-mark-command) (setopt warning-minimum-level :error diff --git a/.config/emacs/modules/bd--browse.el b/.config/emacs/modules/bd--browse.el index cd255cc..5e9cb13 100644 --- a/.config/emacs/modules/bd--browse.el +++ b/.config/emacs/modules/bd--browse.el @@ -14,8 +14,7 @@ icecat, or eww." (pcase pref (0 (eww url)) (1 (start-process "torbrowser" nil "torbrowser" "--new-window" url)) - (2 (start-process "icecat" nil "icecat" "--new-window" url)) - (_ (start-process "librewolf" nil "librewolf" "--new-window" url)))) + (_ (start-process "icecat" nil "icecat" "--new-window" url)))) (setopt browse-url-browser-function 'bd/browse) (defun bd/selector-bookmarks () diff --git a/.config/emacs/modules/bd--devel.el b/.config/emacs/modules/bd--devel.el index bf81f65..916d6e2 100644 --- a/.config/emacs/modules/bd--devel.el +++ b/.config/emacs/modules/bd--devel.el @@ -6,8 +6,7 @@ (setopt display-line-numbers-type 'relative) (defvar bd/enable-line-numbers-in-hooks '(prog-mode-hook) - "List of hook symbols to add `display-line-numbers-mode' -to.") + "List of hook symbols to add `display-line-numbers-mode' to.") (mapc (lambda (hook) (add-hook hook #'display-line-numbers-mode)) @@ -71,11 +70,26 @@ to.") :custom (Man-notify-method 'pushy)) -(use-package eglot - :hook ((c-mode . eglot-ensure)) - :config - (add-to-list 'eglot-server-programs - '(c-mode . ("ccls" "--init={\"clang\": {\"extraArgs\": [\"-std=c++20\"]}}")))) +(use-package eldoc + :init + (global-eldoc-mode)) + +(use-package flymake + :bind (("C-c f f" . #'flymake-mode) + :map flymake-mode-map + ("C-c f s" . #'flymake-start) + ("C-c f n" . #'flymake-goto-next-error) + ("C-c f p" . #'flymake-goto-prev-error) + ("C-c f b" . #'flymake-show-buffer-diagnostics) + ("C-c f p" . #'flymake-show-project-diagnostics)) + :custom + ;; (flymake-suppress-zero-counters t) + (flymake-no-changes-timeout nil) + (flymake-start-on-flymake-mode t) + (flymake-start-on-save-buffer t) + (flymake-proc-compilation-prevents-syntax-check t) + (flymake-wrap-around nil) + (flymake-show-diagnostics-at-end-of-line nil)) (use-package yasnippet :hook ((text-mode @@ -103,7 +117,6 @@ to.") scheme-mode lisp-interaction-mode) :config - (require 'eldoc) (eldoc-add-command 'paredit-backward-delete 'paredit-close-round)) diff --git a/.config/emacs/modules/bd--modeline.el b/.config/emacs/modules/bd--modeline.el index 35c486e..4101feb 100644 --- a/.config/emacs/modules/bd--modeline.el +++ b/.config/emacs/modules/bd--modeline.el @@ -19,46 +19,72 @@ mode-line-modes)) (global-set-key (kbd "C-c ,") 'minor-mode-blackout-mode) -(defface bd/bold-shadow - `((t :inherit shadow - :bold t)) - "Shadow with bold.") - (defvar-local bd/buffer-identification-mode-line - '(:eval (format "%s" (propertize (buffer-name) 'face 'bd/bold-shadow))) + '(:eval (format "%s" (propertize (buffer-name) 'face + (if (mode-line-window-selected-p) + 'font-lock-keyword-face + 'mode-line-inactive)))) "Formats the modeline-buffer-name.") -;;;; pos -(column-number-mode) -(setopt mode-line-position-column-line-format '(" %l:%c ")) +(defvar-local bd/project-mode-line + '(:eval + (when-let ((project (project-current)) + ;; TODO remove; see what happens + (exwm? (not (equal major-mode 'exwm-mode)))) + (let ((last-coding-system-used last-coding-system-used)) + (format "%s " + (propertize + (project-name project) + 'face 'shadow + 'mouse-face 'mode-line-highlight + 'help-echo "mouse-1: Project menu" + 'local-map project-mode-line-map)))))) + +(column-number-mode 1) +(setopt mode-line-position-column-line-format '("%l:%c") + mode-line-percent-position nil) (defvar-local bd/line-position '(:eval (when (mode-line-window-selected-p) - ;; remove the percentage - (cdr mode-line-position)))) + mode-line-position))) -;;;; git (defvar-local bd/vc-mode-line '(:eval (when vc-mode - (format "-- %s" + (format "%s " (propertize (cadr (split-string vc-mode "[:-]")) 'face 'shadow)))) "Formats the checked out git repository.") +(defvar-local bd/modeline-window-dedicated + '(:eval + (when (window-dedicated-p) + (format "%s -- " + (propertize "LK" 'face 'font-lock-comment-face)))) + "Indicator for dedicated window.") (dolist (construct '(bd/buffer-identification-mode-line - bd/vc-mode-line)) + bd/project-mode-line + bd/vc-mode-line + bd/line-position + bd/modeline-window-dedicated)) (put construct 'risky-local-variable t)) +(setopt mode-line-right-align-edge 'right-margin) (setq-default mode-line-format - (list - mode-line-front-space - bd/buffer-identification-mode-line - " -- " - mode-line-modes - bd/vc-mode-line - " -- " - bd/line-position)) + '("%e" + mode-line-front-space + bd/project-mode-line + bd/buffer-identification-mode-line + " -- " + mode-line-modes + "-- " + bd/line-position + mode-line-format-right-align + bd/modeline-window-dedicated + bd/vc-mode-line + mode-line-mule-info + mode-line-modified + )) (provide 'bd--modeline) diff --git a/.config/emacs/modules/bd--themes.el b/.config/emacs/modules/bd--themes.el index 443352c..edecaa5 100644 --- a/.config/emacs/modules/bd--themes.el +++ b/.config/emacs/modules/bd--themes.el @@ -20,13 +20,13 @@ to.") (set-face-attribute 'variable-pitch nil :family "Dejavu Math TeX Gyre" - :height 130) + :height 110) (set-face-attribute 'fixed-pitch nil - :family "DejaVu Sans Mono" - :height 120) + :family "Terminus" + :height 110) (set-face-attribute 'default nil - :family "DejaVu Sans Mono" - :height 130) + :family "Terminus" + :height 140) (use-package modus-themes @@ -40,7 +40,7 @@ to.") and some other minor face changes." (modus-themes-with-colors (custom-set-faces - `(mode-line ((,c :overline ,bg-button-active))) + `(mode-line ((,c :overline ,keyword))) `(mode-line-inactive ((,c :overline ,bg-button-inactive))) `(eshell-prompt ((,c :foreground ,fg-main :background ,bg-dim :height 1.1 :extend t)))))) (add-hook 'modus-themes-post-load-hook #'bd/modus-set-faces) diff --git a/.config/guix/modules/emacs.scm b/.config/guix/modules/emacs.scm index ed2d109..7a626b9 100644 --- a/.config/guix/modules/emacs.scm +++ b/.config/guix/modules/emacs.scm @@ -44,8 +44,6 @@ aspell aspell-dict-en - - ccls )) |