【发布时间】:2020-06-20 19:26:28
【问题描述】:
我是 awesomewm 的新用户(但之前使用过其他 WM:i3、bspwm、xmonad 等)。我喜欢在我的 wibar 中编写一些 shell 脚本(我认为这就是它的名称,屏幕顶部带有 taglist 的栏)来显示电池、音频等内容(据我所知很常见) .目前我正在使用“wibar.widget.watch”来执行此操作,如下所示。
-- Right widgets
layout = wibox.layout.fixed.horizontal,
awful.widget.watch('musicbar', 5),
wibox.widget.textbox(' | '),
awful.widget.watch('wifibar', 5),
wibox.widget.textbox(' | '),
awful.widget.watch('audiobar', 0.5),
wibox.widget.textbox(' | '),
awful.widget.watch('batbar', 5),
在上面的代码中,诸如“audiobar”之类的东西是作为标准输出返回信息的脚本。这一切都很完美,甚至可以很好地显示表情符号:)。我有一个问题(也许只是优化)。
目前我的音频条每秒运行两次,这是因为这是唯一一个根据我的输入(改变音量)直接改变的音频条,所以我希望它立即改变(显然这仍然有
所以,我想知道是否有办法在我更改音量时更新它,我已经绑定到 rc.lua 中的 XF86 音频键,而不是根据计时器进行更改。根据我对文档的阅读,手表小部件无法做到这一点,但正如我所说,我是新来的。
以下是我绑定键的方式(不应该有所作为,但我想这就是要进行更改的地方)。
awful.key(
{},
"XF86AudioLowerVolume",
function()
awful.spawn("amixer -q set Master 5%-")
end,
{description = "lower volume", group = "control"}
),
我知道我可以使用 github 上的一些预制小部件来显示音量和内容,但我喜欢 shell 脚本,因为它们让我可以轻松地在 WM 之间移动并且比那些小部件更简单(我喜欢它,因为这意味着我可以更轻松地解决他们的问题,让他们准确地展示我想要的东西,以及学习)。
edit:我愿意学习用lua做这个,我只是想先看看我是否可以用shell脚本轻松地做到这一点。
【问题讨论】:
标签: awesome-wm