diff options
| -rw-r--r-- | custom/jao-custom-email.el | 3 | ||||
| -rw-r--r-- | init.el | 73 | 
2 files changed, 47 insertions, 29 deletions
diff --git a/custom/jao-custom-email.el b/custom/jao-custom-email.el index 8465790..f35925b 100644 --- a/custom/jao-custom-email.el +++ b/custom/jao-custom-email.el @@ -264,6 +264,9 @@    (if jao-notmuch-enabled        (bbdb-initialize 'message 'notmuch)      (bbdb-initialize 'message 'pgp 'gnus))) + +(load "bbdb-loaddefs") +  ;;; narrowing  (defvar jao-mail-consult-buffer-history nil) @@ -158,12 +158,12 @@  (jao-shell-def-exec jao-bright-set-up "brightnessctl" "-q" "s" "5%+")  (jao-shell-def-exec jao-bright-set-down "brightnessctl" "-q" "s" "5%-") +(defun jao-brightness () +  (string-trim (or (cadr (jao-shell-cmd-lines "brightnessctl")) "(Unknown)"))) +  (defun jao-bright-show ()    (interactive) -  (message "%s" (thread-first (jao-shell-string "brightnessctl") -                  (split-string "\n") -                  (cadr) -                  (string-trim)))) +  (message "%s" (jao-brightness)))  (defun jao-bright-up ()    (interactive) @@ -607,9 +607,14 @@  (use-package xmobar    :init (setq  xmobar-tab-bar t                 xmobar-tab-split "*" -               xmobar-tab-bar-format '(xmobar-left-string -                                       tab-bar-format-align-right -                                       xmobar-right-string) +               xmobar-tab-bar-format +               (if window-system +                   '(xmobar-left-string +                     tab-bar-format-align-right +                     xmobar-right-string) +                 '(xmobar-left-string +                   xmobar-elastic-space +                   xmobar-right-string))                 xmobar-command "xmobar-emacs"))  ;;; Minibuffer @@ -2966,14 +2971,14 @@    (jao-consult-add-buffer-source 'jao-chat-buffer-source))  ;;; Multimedia  ;;;; mixer -(defun jao-mixer-get-level (&optional dev) +(defun jao-mixer-get-level (&optional dev nomsg)    (interactive)    (let* ((dev (or dev "Master"))           (s (shell-command-to-string (format "amixer sget %s" dev)))           (s (car (last (split-string s "\n" t)))))      (when (string-match ".*Front .*\\[\\([0-9]+\\)%\\] .*" s)        (let ((level (match-string 1 s))) -        (message "%s level: %s%%" dev level) +        (unless nomsg (message "%s level: %s%%" dev level))          (string-to-number level)))))  (defun jao-mixer-set (dev v) @@ -3039,12 +3044,13 @@    :commands jao-mpc-setup)  (defvar jao-mopidy-port 6669) -(defvar jao-mpc-last-port nil) +(defvar jao-mpc-last-port jao-mpc-port)  (defun jao-mpc-toggle-port ()    (interactive) -  (setq jao-mpc-last-port (unless jao-mpc-last-port jao-mopidy-port) -        jao-mpc-port jao-mpc-last-port)) +  (setq jao-mpc-port +        (if (equal jao-mpc-port jao-mopidy-port) 6600 jao-mopidy-port) +        jao-mpc-last-port jao-mpc-port))  (defsubst jao-mpc-mopidy-p () (equal jao-mpc-last-port jao-mopidy-port)) @@ -3052,7 +3058,7 @@  (defun jao-mpc-pport (&optional mop)    (cond ((or mop (jao-mpc--playing-p jao-mopidy-port)) jao-mopidy-port) -        ((jao-mpc--playing-p) nil) +        ((jao-mpc--playing-p) 6600)          (t jao-mpc-last-port)))  (defmacro jao-defun-play (name &optional mpc-name) @@ -3144,12 +3150,7 @@      ("K" "dislike" jao-streaming-dislike)]])  (transient-define-prefix jao-transient-media () -  [:description -   (lambda () -     (format "[%s   %s]\n" -             (if (jao-mpc-mopidy-p) "mopidy" "mpd") -             (jao-mpc--current-timestr t))) -   ["Play" +  [["Play"      ("m" "toggle" jao-player-toggle)      ("n" "next" jao-player-next)      ("p" "previous" jao-player-previous) @@ -3164,15 +3165,23 @@      ("l" "show play list" jao-player-list)      ("L" "show lyrics" jao-show-lyrics)      ("w" "now playing" jao-player-echo)] -   ["Master volume" -    ("d" "master down" jao-mixer-master-down :transient t) -    ("u" "master up" jao-mixer-master-up :transient t) -    ("M" "master toggle" jao-mixer-master-toggle) -    ("v" "show" jao-mixer-get-level)] -   ["Capture volume" -    ("D" "capture down" jao-mixer-capture-down :transient t) -    ("U" "capture up" jao-mixer-capture-up :transient t) -    ("V" "show" jao-player-level-cap)] +   [:description +    (lambda () +      (message "%s %s" +               (if (jao-mpc-mopidy-p) "mopidy" "mpd") +               (jao-mpc--current-str nil t)) +      (format "Master %s%%" (jao-mixer-get-level nil t))) +    ("d" "down" jao-mixer-master-down :transient t) +    ("u" "up" jao-mixer-master-up :transient t) +    ("M" "toggle" jao-mixer-master-toggle) +    ;; ("v" "show" jao-mixer-get-level) +    ] +   [:description +    (lambda () (format "Capture %s%%" (jao-mixer-get-level "Capture" t))) +    ("D" "down" jao-mixer-capture-down :transient t) +    ("U" "up" jao-mixer-capture-up :transient t) +    ;; ("V" "show" jao-player-level-cap) +    ]     ["Utilities"      ("c" "reconnect to mpd" jao-player-connect)      ("N" "next random album" jao-random-album-next) @@ -3230,7 +3239,13 @@      ("W" "set radom wallpaper" jao-set-random-wallpaper)      ("X" "toggle xmobar" xmobar-mode :if jao-exwm-enabled-p)      ("x" "restart xmobar" xmobar-restart :if jao-exwm-enabled-p) -    ("x" "kill xmobar" jao-xmobar-kill :if jao-xmonad-enabled-p)] +    ("x" "kill xmobar" jao-xmobar-kill :if jao-xmonad-enabled-p) +    ("B u" (lambda () +             (let ((b (jao-brightness))) +               (format "bright up %s" (and (string-match ".*\\((.+)\\).*" b) +                                           (match-string 1 b))))) +     jao-bright-up :transient t) +    ("B d" "bright down" jao-bright-down :transient t)]     ["Helpers"      ("r" "reveal" jao-reveal)      ("k" (lambda () (concat "keyboard" (when (jao-kb-toggled-p) "*")))  | 
