热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

amixer快捷键绑定,i3窗口管理器下配置

为什么80%的码农都做不了架构师?窗口管理器安装的是i3,没有鼠标控制音量的地方,键盘上的功能键不管用,但调节屏幕亮度

为什么80%的码农都做不了架构师?>>>   hot3.png

    窗口管理器安装的是i3,没有鼠标控制音量的地方,键盘上的功能键不管用,但调节屏幕亮度的功能键是可以用的。一个笨方法是安装alsa-utils,然后在终端输入alsamixer,再用出来的字符界面的音量控制器调节音量,不方便。  

    好办法是绑定按键。折腾步骤如下 :

1.终端输入xev,再安音量控制键,一般笔记本是Fn + 左或右方向键,退出xev后,可以看到显示的按键事件,大概是这个样子:


KeyRelease event, serial 32, synthetic NO, window 0x1800001,root 0x7c, subw 0x0, time 8121754, (482,545), root:(486,565),state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,XLookupString gives 0 bytes: XFilterEvent returns: FalseKeyPress event, serial 32, synthetic NO, window 0x1800001,root 0x7c, subw 0x0, time 8122127, (482,545), root:(486,565),state 0x0, keycode 122 (keysym 0x1008ff11, XF86AudioLowerVolume), same_screen YES,XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False

其中XF86AudioRaiseVolume,XF86AudioLowerVolume就是按键名,一个增加音量,一个减小,可见返回了False. 也可用命令 xev | grep keysym 去掉那些多余的输出.

2. amixer是命令行的ALSA声卡驱动调节器工具.可以man一下看选项,这里举个栗子:

amixer set Master 3%+ 或amixer set Master 3dB+  (音量增大3%),

amixer set Master 3%-  或amixer set Master 3dB-  (音量降低3%)


增减幅度自己设置,可以加-c选项指定声卡,比如我的是amixer set -c 0 Master 3%+,具体声卡名可以在打开alsamixer后按F2查看.


3.我的系统是archlinux,用i3桌面管理器,配置文件是主目录下 .i3/config 文件,这个文件是根据 /etc/i3/config生成的.编辑器打开后,在最后加入:


bindsym XF86AudioRaiseVolume exec amixer -c 0 set Master 3%+
bindsym XF86AudioLowerVolume exec amixer -c 0 set Master 3%-



注意那个中间那个exec不要忘了,我一开始就是忘了加,产生了下面的错误:


ERROR: Expected one of these tokens: , '[', 'move', 'exec', 'exit', 'restart', 'reload', 'shmlog', 'debuglog', 'border', 'layout', 'append_layout', 'workspace', 'focus', 'kill', 'open', 'fullscreen', 'split', 'floating', 'mark', 'unmark', 'resize', 'rename', 'nop', 'scratchpad', 'mode', 'bar'
ERROR: Your command: amixer -c 0 set Master 3%+


4.重启X后应该就生效了,i3可以用默认的快捷键$mod + shift +r 重新加载配置,以后你就可以直接用键盘控制音量了.


又觅了一更简单的方法,此法用的是xbindkeys.

1. 安装xbindkeys

archlinux下,

#pacman -S xbindkeys 2.配置


在home下生成.xbindkeysrc


$ touch ~/.xbindkeysrc 可以用命令生成一个简单的内容:



$ xbindkeys -d > ~/.xbindkeysrc 打开这个文件,加入这些东西:

"amixer sset Master 4-"
XF86AudioLowerVolume"amixer sset Master 4+"
XF86AudioRaiseVolume

3.开机启动xbindkeys

我是在.xinitrc最后加入一句xbindkeys .下次开机就可以用了。现在你也可以终端输入xbindkeys,之后功能键就生效了.


  参考这些前人的经验  B   C   D



转:https://my.oschina.net/sukai/blog/180433



推荐阅读
  • protobuf 使用心得:解析与编码陷阱
    本文记录了一次在广告系统中使用protobuf进行数据交换时遇到的问题及其解决过程。通过这次经历,我们将探讨protobuf的特性和编码机制,帮助开发者避免类似的陷阱。 ... [详细]
  • Flutter 核心技术与混合开发模式深入解析
    本文深入探讨了 Flutter 的核心技术,特别是其混合开发模式,包括统一管理模式和三端分离模式,以及混合栈原理。通过对比不同模式的优缺点,帮助开发者选择最适合项目的混合开发策略。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 在现代Web开发中,HTML5 Canvas常用于图像处理和绘图任务。本文将详细介绍如何将Canvas中的图像导出并上传至服务器,适用于拼图、图片编辑等场景。 ... [详细]
  • IO流——字符流 BufferedReader / BufferedWriter 进行文件读写
    目录节点流、处理流读文件:BufferedReader的使用写文件:BufferedWriter的使用节点流处理流节点流和处理流的区别和联系字符流Buf ... [详细]
  • 本文将详细介绍如何使用PHP获取文件夹的大小,包括子文件夹的大小,并提供实用的代码示例。 ... [详细]
  • DirectShow Filter 开发指南
    本文总结了 DirectShow Filter 的开发经验,重点介绍了 Source Filter、In-Place Transform Filter 和 Render Filter 的实现方法。通过使用 DirectShow 提供的类,可以简化 Filter 的开发过程。 ... [详细]
  • Spring 中策略模式的应用:Resource 接口详解
    本文探讨了在 Spring 框架中如何利用 Resource 接口实现资源访问策略。Resource 接口作为资源访问策略的抽象,通过多种实现类支持不同类型的资源访问。 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • CSS Border 属性:solid 边框的使用详解
    本文详细介绍了如何在CSS中使用solid边框属性,包括其基本语法、应用场景及高级技巧,适合初学者和进阶用户参考。 ... [详细]
  • Spring Boot + RabbitMQ 消息确认机制详解
    本文详细介绍如何在 Spring Boot 项目中使用 RabbitMQ 的消息确认机制,包括消息发送确认和消息接收确认,帮助开发者解决在实际操作中可能遇到的问题。 ... [详细]
  • Redis 是一个高性能的开源键值存储系统,支持多种数据结构。本文将详细介绍 Redis 中的六种底层数据结构及其在对象系统中的应用,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象。通过12张图解,帮助读者全面理解 Redis 的数据结构和对象系统。 ... [详细]
  • 本文探讨了 Java 中 HttpClient 和 HtmlUnit 的区别,重点介绍了它们的功能和应用场景。 ... [详细]
  • 可参照github代码:https:github.comrabbitmqrabbitmq-tutorialsblobmasterjavaEmitLogTopic.ja ... [详细]
author-avatar
mobiledu2502858037
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有