Answers:
嗯,这是一个很棘手的解决方案,但是行得通!首先安装以下内容:
sudo apt-get install xmacro expect mpg321
xmacro
是将检测您的鼠标单击的程序。
expect
是一个程序,它将监听xmacro
您的鼠标单击的输出以便执行mpg321
,这是一个命令行播放器!
因此,从终端内部运行此脚本:
#!/usr/bin/expect -f
spawn xmacrorec2
while { 1 } {
expect "ButtonRelease 1"
system mpg321 /home/alex/Music/notification/notification.mp3&
}
当您执行上述脚本时(我通过终端重复),您将被要求输入一个输入键。输入一个不寻常的键(例如F7),它将成为该键,无论您何时按下它,都将阻止该过程的进行。
因此,只需在上面的脚本中,将mpg321设置为您自己的有效mp3文件,然后进行测试即可:)
在Ubuntu 12.04下它可以正常工作,但是我在Oneiric下使用了这三个工具,都没有问题!
xmacrorec2
可以将期望的键(-k参数)作为kei码作为参数。如果要将上面的脚本放到启动应用程序中,这将对您有很大帮助,因为它不会每次都要求输入键。为了找到您要使用的适当的密钥代码,您必须安装微型程序xbindkeys
:
sudo apt-get install xbindkeys
然后做:
touch ~/.xbindkeysrc
xbindkeys -k
最后一个命令后,将出现一个小窗口,不执行任何操作,请为其输入键盘输入,例如F7。您将看到如下内容:
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
m:0x0 + c:73
F7
注意这一行:
m:0x0 + c:73
该代码73
是xmacrorec2期望的代码。因此,您可以将-k参数添加到上述脚本中,如下所示:spawn xmacrorec2 -k 73
它将自动启动。完成脚本的编辑后,将其保存到一个稳定的目录(我的意思是您不会删除/移至不久的将来的目录),例如〜/ Documents并为其赋予可执行权限(右键单击它-> Properties->权限->允许将文件作为程序执行,或者通过终端执行chmod +x script_name.sh
)。然后,只需将脚本添加到“ 启动应用程序”。当然,每当您希望此声音停止播放时,都必须提供相应的键盘输入,例如F7
。
PS:如果您不想安装额外的命令行mp3播放器(如mpg321
),则可以使用预安装的播放器canberra-gtk-play
,该播放器用作
canberra-gtk-play -f music.wav
它的缺点是只能播放某些ogg和wav文件。
man expect
)指导我如何成为脚本的第一行。另一个预装的命令行播放器是canberra-gtk-play
并且可以称为canberra-gtk-play -f file.ogg
。该程序的缺点是只能播放某些ogg和wav文件。
-f
开头和spawn
命令的含义是什么?