当我重新启动计算机时,xbindkeys
会启动,但无法正常工作。如果我将其关闭,然后使用 手动启动它nohup xbindkeys
,它就可以正常工作。我认为如果我将其放入我的.xsessionrc
文件中,它会正常工作。但是当我启动时,其他程序已经在启动它,这会造成干扰。
我递归搜索/etc
但xbindkeys
没有成功。
答案1
我发现,如果您的主文件夹或系统文件夹(例如)中xbindkeys
有,则会自动启动。因此,安装后通常不需要将其添加为单独的启动项。.xbindkeysrc
/etc
文件中对此进行了很好的解释/etc/X11/Xsession.d/98xbindkeys
,该文件由 Ubuntu 软件包中的任何常规安装生成。以下是通过运行生成的文件中的片段cat /etc/X11/Xsession.d/98xbindkeys
:
This file is sourced by Xsession(5), not executed.
PROG="/usr/bin/xbindkeys"
NOAUTO="${HOME}/.xbindkeys.noauto"
This file autostarts xbindkeysrc if the user (or system) has a config
for it AND does NOT Have a .xbindkeys.noauto in his homedir.
[The rest of the file is a script]
因此,简单的解决方案是记下说明并.xbindkeys.noauto
在您的主目录中放置一个名为的文件,然后xbindkeys
不会使用您的 x 会话启动,并且您可以根据您的特定需求为其放置备用启动条目。
答案2
当我尝试让 HP G60-530US 笔记本电脑上的触摸板开/关按钮正常工作时,我也遇到了同样的问题。当我登录时,xbindkeys 正在运行,有时,终止 xbindkeys 并重新启动 xbindkeys 会起作用。终止 xbindkeys,运行 xbindkeys-config“应用、保存并退出”会起作用,但相当麻烦。
尝试 Mik 的建议似乎不起作用,因为我的 gnome-session-properties (gsp) 中已经有了“xbindkeys”。然后我想起在 gsp 中直接输入命令通常不起作用;相反,我单击“浏览”按钮并浏览到 /usr/bin/xbindkeys 来设置密钥。注销并登录备份,鼠标触摸板开/关按钮现在正常工作。
HP G60-530US 特定:
相关部分
~/.xbindkeysrc
(文件的其余部分是默认的):#TouchpadOff - works "synclient TouchpadOff=1" 0x1008ffb1 #TouchpadOn - works "synclient TouchpadOff=2" 0x1008ffb0
.xbindkeys.noauto
存在于用户主页配置文件中:~/.xbindkeys.noauto
使用 gnome-session-properties 启动应用程序首选项设置启用
/usr/bin/xbindkeys
。对我来说,重要的部分是使用 UI 中的“浏览”按钮设置命令。Name: xbindkeys Command: /usr/bin/xbindkeys Comments: Touchpad on/off
答案3
我遇到了同样的问题:xbindkeys 似乎已启动,但快捷方式不起作用。从 shell 手动重新启动 xbindkeys 后,它按预期工作。
我的问题是,与快捷方式绑定的命令依赖于我的 shell 配置(尝试启动 Ruby 命令,但 Ruby 已加载 asdf,它来源于我的 .zshrc)
解决方案是将 xbindkeys 启动命令从 替换xbindkeys
为/usr/bin/zsh -c "xbindkeys"
,并将 asdf 设置从 移至.zshrc
,.zshenv
因为即使没有 tty 也会加载后者。
启动命令可从我的 Ubuntu 16.04 中的“启动应用程序”中编辑。
答案4
我通过在启动时在终端中运行 xbindkeys 来处理这个问题!在您的 .desktop 文件中添加 Terminal=true。