如何自动启动 xbindkeys?

如何自动启动 xbindkeys?

我使用 xbindkeys 来管理 Gnome 3 中的热键,但它没有守护进程,所以我将它添加到 .xinitrc。

~$ cat .xinitrc 
ck-launch-session gnome-session
nohup xbindkeys &

奇怪的是,这根本不起作用。每次启动时我仍然必须手动启动 xbindkeys。我在这里做错了什么?

我的系统:

~$ uname -a
Linux [...] 3.0.28-1-lts #1 SMP PREEMPT Mon Apr 16 21:05:30 CEST 2012 x86_64 Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz GenuineIntel GNU/Linux

答案1

要在 Gnome 3 环境中运行 xbindkeys,你应该运行gnome-session-properties并添加xbindkeys。之后只需注销并再次登录即可。

(请注意,你的命令~/.xbindkeysrc至少应包含 1 个让 xbindkeys 妖魔化的命令)

无论如何,从 运行它不是一个好主意.xinitrc,你可能应该避免这样做。简单来说 -.xinitrc它是一个 shell 脚本 => 你将逐个运行的命令序列。因此,你的命令xbindkeys不会运行,直到你的前一个命令不退出(在你的例子中是ck-launch-session gnome-session

答案2

脚本(包括.xinitrc)的所有命令默认按顺序运行 –nohup xbindkeys直到退出时才考虑gnome-session。交换线路应该有效(尽管nohup在这里没用)。

但是,最好xbindkeys从 GNOME 会话运行,而不是.xinitrc;否则程序会使用键绑定启动将要当他们尝试执行某些特权操作(由 polkit 和 ConsoleKit 控制的操作)时中断。将 xbindkeys 添加到gnome-session-properties反而。

相关内容