learnman166 发表于 2004-7-6 14:28:22

在FVWM下一键关机的方法,就算是给FVWM填砖加瓦,别笑话

一般来说,现在大家用的键盘都带有POWER键(该键在XP下就可以直接关机),如何把POWER键实现相同的关机,本人终于摸索出以下的办法,在此感谢广大LINUX爱好者提供的各种帮助!
1. 先检查键盘类型 less /etc/sysconfig/keyboard ,看看里面的两项内容是否是"pc" "us"
2. 再以ROOT身份执行: /usr/bin/dumpkeys >/etc/sysconfig/console/default.kmap来生成键盘的键盘扫描码和加入了修饰键后的键盘扫描码
   注:生成的/etc/sysconfig/console/default.kmap文件刚开始并不一定存在,这一步可忽略,但如果结果不对,建议执行该步骤
3. 以ROOT身份执行:/usr/X11R6/bin/xmodmap/usr/share/xmodmap/xmodmap.gb-105
注:如果执行:xmodmap时发现 mod4 这一项后面是空的,建议执行第3步; 执行后再xmodmap会发现mod4 Super_L Super_R 的话,说明键盘上微软的徽标logo键就已经申明进去了,可以使用微软的徽标键来干你想干的事(我用它来弹出根菜单)。
又注: 所使用的xmodmap.gb-105这个文件对应下面使用的键名是不一样的,后面有说明,这是X的原因。
4. 在你家目录下 ~/.xmodmap文件里增加以下键名申明的语句,如:
   keycode222=XF86PowerOff
   keycode223=XF86Standby
   keycode227=XF86WakeUp
注:注意大小写。如果结果不对,可在某个终端里执行:
   xmodmap -e "keycode 222 = XF86PowerOff" 来单步确认键名申明是否被系统认可
5. 确认你家目录下~/.xinitrc里有调用 ~/.xmodmap的语句,例如:
   #!/sbin/bash
    ....
   usermodmap=$HOME/.xmodmap
   ....
   if [-f $HOME/.xmodmap ] ; then
   xmodmap $HOME/.xmodmap
fi
......

6.在你的 .fvwm2rc里加入使用power键的一句说明:
   Key XF86PowerOff A A rxvt -e halt -p
7. 重启fvwm就可以使用键盘上的power键来关机了,省得老是要敲
   su -c "/sbin/shutdown -h now"等关机的命令

[其他说明]
    找出键值可用xev然后按下你键盘上特殊的键来看里面的keycode
    类似的可以绑定键盘上有的特殊键,但要注意键名是系统能认可的,欢迎大家把自己的心得共享出来,同时请说明你的键盘是什么,使用了哪些xmodmap文件(如xmodmap.gb-105),我使用的键盘是深圳小太阳 SR-K7880

athlonxhy 发表于 2004-7-6 20:44:22

很好,谢谢,加精! :lol:
页: [1]
查看完整版本: 在FVWM下一键关机的方法,就算是给FVWM填砖加瓦,别笑话