summaryrefslogtreecommitdiff
path: root/emacs/inits/NO-07-tinymenu.el
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/inits/NO-07-tinymenu.el')
-rw-r--r--emacs/inits/NO-07-tinymenu.el48
1 files changed, 48 insertions, 0 deletions
diff --git a/emacs/inits/NO-07-tinymenu.el b/emacs/inits/NO-07-tinymenu.el
new file mode 100644
index 0000000..1e734ab
--- /dev/null
+++ b/emacs/inits/NO-07-tinymenu.el
@@ -0,0 +1,48 @@
+;; Time-stamp: <2020-08-12 22:15:01 (user@hobbies)>
+
+(use-package tiny-menu
+ :ensure t)
+
+;; (eval-after-load "tiny-menu"
+;; (progn
+;; (defun hexl-input-smart ()
+;; (hexl-insert-char (0xc-string-to-number (read-string "Input: ")) 1))
+
+;; (setq tiny-menu-forever t
+;; tiny-menu-items '(("hexl-menu"
+;; ("hexl"
+;; ((?i "Insert" hexl-input-smart)
+;; (?b "Byte" hexl-forward-char)
+;; (?e "bytE" hexl-backward-char)
+;; (?s "Short" hexl-forward-short)
+;; (?t "shorT" hexl-backward-short))))
+;; ))))
+
+;; (add-hook 'hexl-mode-hook
+;; (lambda ()
+;; (require '0xc)
+;; (require 'tiny-menu)
+;; (define-key hexl-mode-map (kbd "M-l")
+;; (lambda () (interactive) (tiny-menu "hexl-menu")))))
+
+
+(use-package pulseaudio-control
+ :ensure t
+ :bind ("C-x /" . (lambda () (interactive) (tiny-menu "pulseaudio-control-menu")))
+ :config
+ (defun pulseaudio-control-tinymenu-header ()
+ (let ((words (split-string (pulseaudio-control--get-current-volume)))
+ (mute (if (string-equal "yes" (cadr (split-string (pulseaudio-control--get-current-mute))))
+ "[mute]" "")))
+ (concat "PulseAudio " mute "(" (nth 4 words) " / " (nth 11 words) ")")))
+ (add-to-list 'tiny-menu-items
+ '("pulseaudio-control-menu"
+ (pulseaudio-control-tinymenu-header
+ ((?+ "Vol+" pulseaudio-control-increase-volume "pulseaudio-control-menu")
+ (?- "Vol-" pulseaudio-control-decrease-volume "pulseaudio-control-menu")
+ (?? "Vol?" pulseaudio-control-display-volume)
+ (?m "Mute" pulseaudio-control-toggle-current-sink-mute)
+ (?e "Mute sink" pulseaudio-control-toggle-sink-mute-by-name)
+ (?d "Use @DEF" pulseaudio-control-toggle-use-of-default-sink "pulseaudio-control-menu")
+ (?n "Sink" pulseaudio-control-select-sink-by-name "pulseaudio-control-menu")
+ (?p "Vol%" pulseaudio-control-set-volume))))))