由于某种原因,我必须在登录后禁用PrintScreen键(包括其他键,例如Alt,Ctrl,F1〜F12),因此我编写了一个启动脚本来执行此操作。它必须是:

  • 禁用它时,必须立即将其禁用,而不必重新启动或再次注销/登录。
  • 当我想在下一个登录 session 中使用这些键时,只需从启动中删除脚本即可。
  • 必须将其放入脚本或命令行中,我无法打开gui应用程序(例如 gnome-keybinding-properties gconf-editor ),然后单击或类似的命令。
  • 我无法安装dconf-editor之类的额外应用程序来做到这一点。

  • 我尝试了这些方法,但没有一个起作用:
  • xmodmap -e'keycode 107 ='
  • xmodmap -e'keycode 107 = NoSymbol'
  • xmodmap -e'keysym Print ='
  • xmodmap -e'keysym打印= NoSymbol'

  • (我已经使用 showkey xev 来获取PrintScreen的密钥代码,即107)

    重命名,删除或更改/usr/bin/gnome-screenshot的权限(通过在Gnome中按PrintScreen键触发)会在我按下不需要的键时 pop 一个窗口。

    这些 xmodmap 命令可以成功禁用其他键,例如Alt,Ctrl,F1〜F12,但它们不适用于PrintScreen,按PrintScreen仍将激活gnome屏幕截图并进行屏幕截图。

    我怎样才能做到这一点?

    我正在使用CentOS6.5,Gnome2.x

    最佳答案

    在尝试映射鼠标按钮时,我遇到了类似的问题,发现 xinput 能够映射我的鼠标操作-它基本上可以列出和修改输入设备的设置。

    我发现它偶尔会被重置(由于某种原因而导致USB设备重置?),因此要使其始终运行,我只是将其放置在.bashrc中的while循环中,例如;

    (while xinput --set-prop "Logitech USB-PS/2 Trackball"  "Evdev Middle Button Emulation" 1; do sleep 20; done&) >/dev/null 2>&1
    

    您的映射当然会有所不同,因为您试图完成键盘键而不是鼠标按钮的映射。 xinput是否可以帮助您是anyone's guess,因为我不知道您的输入设备具有什么确切功能。

    关于linux - 无法禁用Gnome中的PrintScreen键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37429891/

    10-13 07:57