我的设置:Void Linux、xorg、dwm + dmenu + st、DAS 键盘。
我也许可以弄清楚如何绑定一些“正常”键来控制音量,但我真的很喜欢键盘上的这个大圆形旋钮:)。
那么,如何让键盘上的音量控制起作用呢?
答案1
在 my 中config.h
,靠近或顶部的某个位置,创建指向字符串数组的指针,这些字符串表示用于控制系统音量的 CLI 命令。其中 X11/XF86keysym.h
包含“在某些‘互联网’键盘上找到的”控件的按键符号。我正在使用 ALSA,所以对我来说实用程序是amixer
.
#include <X11/XF86keysym.h>
static const char *volumeup[] = {"amixer", "-c", "1", "-q", "set", "Master", "2%+", NULL};
static const char *volumedown[] = {"amixer", "-c", "1", "-q", "set", "Master", "2%-", NULL};
static const char *toggle[] = {"amixer", "-c", "1", "-q", "set", "Master", "toggle", NULL};
在同一文件中,添加指向keys[]
数组的指针,例如:
static const Key keys[] = {
/* modifier key function argument */
{ 0, XF86XK_AudioRaiseVolume, spawn, { .v = volumeup } },
{ 0, XF86XK_AudioLowerVolume, spawn, { .v = volumedown }},
{ 0, XF86XK_AudioMute, spawn, { .v = toggle }},
然后就是平常的
make
sudo make install
make clean
必须弄清楚渠道(-c
选项)。为此,/proc/asound/modules
将会有所帮助。在 Void 上,可能需要显式配置 ALSA,请参阅以下文档:https://docs.voidlinux.org/config/media/alsa.html
答案2
尝试一下xev
,它解释了键码。由于您没有描述问题是什么,我假设您不知道密钥代码。