** USAGE Make sure you have your media keys (or whatever) mapped to the appropriate keysyms (using =xmodmap=), then put: #+BEGIN_SRC lisp (load "/path/to/amixer.lisp") #+END_SRC ...in your =~/.stumpwmrc=, followed by some keybindings (according to your preference) Example keybindings: #+BEGIN_SRC lisp (define-key *top-map* (kbd "XF86AudioLowerVolume") "amixer-Front-1-") (define-key *top-map* (kbd "XF86AudioRaiseVolume") "amixer-Front-1+") (define-key *top-map* (kbd "XF86AudioMute") "amixer-Master-toggle pulse") #+END_SRC =amixer= commands take an optional parameter, the device parameter as passed to the =-D=. This can be useful if you are running pulseaudio. ** Tasks *** TODO Make the `defvolcontrol' macro create all the necessary commands at once. - Should it just create, say, amixer-pcm, which would be passed an argument? i.e., (define-key *this-map* (kbd "e") "amixer-pcm 1-") - Else, figure out how to make the macro not error when converting a string to a symbol for the name of the command