dwm使用Fn组合键实现关闭,增加或减少音量
1.编写脚本以实现关闭增加减少音量功能
具体编写脚本过程可参考B站UP主 袁帅_Linux的这期视频,DWM:系统音量调节及笔记本屏幕背光调节_哔哩哔哩_bilibili
编写三个脚本用于切换,增加和减少音量。
减少5%音量:voldown.sh
#!/bin/bash
amixer sset Master 5%- unmute
增加5%音量:volup.sh
#!/bin/bash
amixer sset Master 5%- unmute
切换音量开关:voltoggle.sh
#!/bin/bash
amixer sset Master 5%- unmute
得到三个文件后将他们保存到特定位置,这里我保存到了
/home/miss/Downloads/dwm/script/
目录下
2. 获取Fn+Fx快捷键名称
在config.h中进行快捷键修改时,我们需要知道各个按键对应的变量名,例如键盘上的o键在config.h中对应的是XK_o。与我们直观理解不同的是,Fn+Fx并不作为一个组合键(如win+o),而是作为一个单独的按键存在的,因此他也存在他的变量名,为了知道这个对应按键的变量名,我们可以使用
xev
命令来进行查看,按下的按键都会显示信息,例如我在这里按下Fn+F1,xev输出如下:
这里重要的是keysym后面的这一串数字。接着我们来到dwm的源文件dwm.c
中,根据这个[SOLVED] Fn + F keys with dwm / Applications & Desktop Environments / Arch Linux Forums讨论的内容,我们可以知道dwm默认是不能使用Fn+的按键,为了让它们变得可以使用,需要在dwm.c
中添加#include<X11/XF86keysym.h>
如下:
接着进入/usr/include/X11/XF86keysym.h
头文件,查看我们的Fn+F1对应变量名,进入之后搜索我们之前得到的keysym后面的一串数字(实际上一进去就能看见),于是我们得到Fn+F1对应的变量名为XF86XK_AudioMute
同理我们可以得到Fn+F2按键和Fn+F3按键对应的变量名为XF86XK_AudioLowerVolume
和XF86XK_AudioRaiseVolume
3. 修改config.h配置文件
到这里我们就可以开始修改快捷键了,同样根据B站UP主 袁帅_Linux的这期视频,DWM:系统音量调节及笔记本屏幕背光调节_哔哩哔哩_bilibili 的这期视频,我们先将我们第一步写好的脚本放入config.h中
static const char *voldown[] = { "/home/miss/Downloads/dwm/script/voldown.sh", NULL };
static const char *volup[] = { "/home/miss/Downloads/dwm/script/volup.sh", NULL };
static const char *voltoggle[] = { "/home/miss/Downloads/dwm/script/voltoggle.sh", NULL };
如图:
其中/home/miss/Downloads/dwm/script/xxx.sh
脚本路径为你自己保存的路径
之后在下面的快捷键设置位置增加如下内容
{ 0, XF86XK_AudioMute, spawn, {.v = voltoggle } },
{ 0, XF86XK_AudioLowerVolume, spawn, {.v = voldown } },
{ 0, XF86XK_AudioRaiseVolume, spawn, {.v = volup } },
如图:
其中key值为自己在第二步中得到的三个快捷键名字,argument为自己刚刚添加内容的变量名
结束
接下来保存,编译,安装,重启,不出意外的话现在按下Fn+F1 Fn+F2 Fn+F3等按键就可以正常的切换减少增加音量了。其它各种Fn+快捷键的修改也可以按照如上所示的步骤进行修改。
在这里再次感谢并强烈推荐B站UP主 袁帅_Linux的linux技术视频袁帅_Linux的个人空间_哔哩哔哩_bilibili
本人参照他的视频一步一步进行输入法,dwm的安装与配置,感觉收获颇多,强烈推荐!