From 3e78e4be20183ad690e85ba7052b9495dfa649f2 Mon Sep 17 00:00:00 2001 From: jao Date: Sun, 21 Sep 2025 21:27:00 +0100 Subject: jao-minibuffer: minor mode for info in mode line instead of minibuffer --- init.el | 6 +++++- lib/eos/jao-minibuffer.el | 13 +++++++++++-- lib/eos/jao-mode-line.el | 6 +++--- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/init.el b/init.el index 643ee89..3dbe91e 100644 --- a/init.el +++ b/init.el @@ -517,7 +517,9 @@ (setq minibuffer-default-prompt-format " (default %s)") (minibuffer-electric-default-mode 1) -(jao-minibuffer-mode (jao-d-l -1 1)) +(jao-d-l + (jao-minibuffer-mode-line-mode) + (jao-minibuffer-mode)) ;;; Mode line ;;;; config @@ -1712,8 +1714,10 @@ ("\\" "open note by tags" jao-org-notes-consult-tags) ("g" "ripgrep notes" jao-org-notes-consult-ripgrep)] ["Mode line" + ("mm" "send to minibuffer" jao-mode-line-add-to-minibuffer-left) ("ma" "toggle active" jao-mode-line-toggle) ("mi" "toggle inactive" jao-mode-line-toggle-inactive) + ("me" "echo modeline" jao-mode-line-echo) ("mf" "readjust faces" jao-mode-line-adjust-faces)] ["Network" ("s" "ssh" jao-ssh) diff --git a/lib/eos/jao-minibuffer.el b/lib/eos/jao-minibuffer.el index 6cd5b24..b12ed71 100644 --- a/lib/eos/jao-minibuffer.el +++ b/lib/eos/jao-minibuffer.el @@ -92,10 +92,11 @@ (or (and (string= jao-minibuffer--name (or (buffer-name) "")) msg) jao-minibuffer-inhibit (let* ((info (and jao-minibuffer-msg-info - (jao-minibuffer--format-info jao-minibuffer-msg-info))) + (jao-minibuffer--format-info + jao-minibuffer-msg-info))) (info (or (and info msg (propertize info 'face 'jao-themes-dimm)) info)) - (sep (if msg " - " "")) + (sep (if (string-empty-p info) "" " - ")) (pref (when info (let ((len (+ (string-width info) (string-width sep)))) (format (format "\n%%%ds" len) "")))) @@ -164,5 +165,13 @@ (not jao-minibuffer-adaptive-alignment)) (jao-minibuffer-refresh)) +(define-minor-mode jao-minibuffer-mode-line-mode + "Show info in mode line instead of minibuffer" + :global t :lighter "" :group 'jao + (let ((e '(" " (:eval jao-minibuffer-info)))) + (if jao-minibuffer-mode-line-mode + (add-to-list 'global-mode-string e) + (setq global-mode-string (delete e global-mode-string))))) + (provide 'jao-minibuffer) ;;; jao-minibuffer.el ends here diff --git a/lib/eos/jao-mode-line.el b/lib/eos/jao-mode-line.el index 659516b..e1fe51f 100644 --- a/lib/eos/jao-mode-line.el +++ b/lib/eos/jao-mode-line.el @@ -108,7 +108,7 @@ ;;;; mode line in minibuffer -(defvar jao-mode-line--old-format nil) +(defvar jao-mode-line--old-format mode-line-format) (defvar jao-mode-line--face nil) (defvar jao-mode-line--inactive-face nil) (defvar jao-mode-line--props @@ -135,10 +135,10 @@ jao-minibuffer-inactive-buffer-line-color))) (jao-mode-line--extract-face nil) (jao-mode-line--extract-face t) - (set-face-attribute 'mode-line nil :box nil :height 1 + (set-face-attribute 'mode-line nil :box nil :height 10 :background bg :foreground bg :overline ol :underline ul :extend t) - (set-face-attribute 'mode-line-inactive nil :box nil :height 1 + (set-face-attribute 'mode-line-inactive nil :box nil :height 10 :background bg :foreground bg ;; :overline bg :underline ul :extend t))) -- cgit v1.2.3