diff options
author | William Carroll <wpcarro@gmail.com> | 2019-10-09T11·13+0100 |
---|---|---|
committer | William Carroll <wpcarro@gmail.com> | 2019-12-24T15·21+0000 |
commit | 6b456c1b7a4f6899f063a6e65355af51901d9c7a (patch) | |
tree | cfc70d74818ae9fabdbbfb0cf16cce092e4c1a09 /configs/shared/.emacs.d/wpc/pulse-audio.el | |
parent | a7c72adb2ebec1e497fc040eaf3551d564d61a5b (diff) |
Massive configuration overhaul
Currently paying the price of months of non-diligent git usage. Here's what has changed. - Theming support in Gvcci and wpgtk - Dropping support for i3 - Supporting EXWM - Many Elisp modules - Collapsed redundant directories in ./configs
Diffstat (limited to 'configs/shared/.emacs.d/wpc/pulse-audio.el')
-rw-r--r-- | configs/shared/.emacs.d/wpc/pulse-audio.el | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/configs/shared/.emacs.d/wpc/pulse-audio.el b/configs/shared/.emacs.d/wpc/pulse-audio.el new file mode 100644 index 000000000000..7dff888e98ea --- /dev/null +++ b/configs/shared/.emacs.d/wpc/pulse-audio.el @@ -0,0 +1,48 @@ +;;; pulse-audio.el --- Control audio with Elisp -*- lexical-binding: t -*- +;; Author: William Carroll <wpcarro@gmail.com> + +;;; Commentary: +;; Because everything in my configuration is turning into Elisp these days. + +;;; Code: + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Constants +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(defconst pulse-audio/install-kbds? t + "When t, install keybindings defined herein.") + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Library +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(defun pulse-audio/toggle-mute () + "Mute the default sink." + (interactive) + (shell-command "pactl set-sink-mute @DEFAULT_SINK@ toggle") + (message (string/format "[pulse-audio.el] Mute toggled."))) + +(defun pulse-audio/lower-volume () + "Low the volume output of the default sink." + (interactive) + (shell-command "pactl set-sink-volume @DEFAULT_SINK@ -10%") + (message (string/format "[pulse-audio.el] Volume lowered."))) + +(defun pulse-audio/raise-volume () + "Raise the volume output of the default sink." + (interactive) + (shell-command "pactl set-sink-volume @DEFAULT_SINK@ +10%") + (message (string/format "[pulse-audio.el] Volume raised."))) + + +(when pulse-audio/install-kbds? + (exwm-input-set-key + (kbd "<XF86AudioMute>") #'pulse-audio/toggle-mute) + (exwm-input-set-key + (kbd "<XF86AudioLowerVolume>") #'pulse-audio/lower-volume) + (exwm-input-set-key + (kbd "<XF86AudioRaiseVolume>") #'pulse-audio/raise-volume)) + +(provide 'pulse-audio) +;;; pulse-audio.el ends here |