haskell XMonad的注销声音

nzkunb0c  于 2022-11-14  发布在  其他
关注(0)|答案(1)|浏览(121)

我正在Arch Linux上使用XMonad,我在Haskell方面缺乏经验,这最终妨碍了我配置系统。
所以,我想有一个会话登录和注销声音。我使用.xinitrc启动xmonad,在那里我可以很容易地添加一个声音作为我的登录声音。对于注销,xmonad退出登录的会话,并直接回到一个被注销的tty。
为此,我的计划是有一个键绑定,当按下它时,将播放一个声音文件,并显示一个退出确认提示。
我的钥匙扣现在是这样的

("C-q", confirmPrompt def "exit" $ io (exitWith ExitSuccess))

这可以按预期执行exit命令,但我找不到在它之前执行spawn命令的方法。
我试过("C-q", spawn "mpv --no-video ~/my-sound-file.oga" && confirmPrompt def "exit" $ io (exitWith ExitSuccess)),但无济于事。它抛出了一个错误,这肯定不是根据Haskell语法。
如果有人可以在一个键绑定上执行多个这样的命令,或者在xorg关闭时执行一个脚本,请告诉我。

z8dt9xmd

z8dt9xmd1#

您需要:

spawn "mpv foo.oga" >> confirmPrompt def "exit" (io (exitWith ExitSuccess))

两个有趣的变化是&&-〉>>$-〉括号。

相关问题