Keyboard-problems

Janne Ojaniemi janne.ojaniemi at netsonic.fi
Fri Apr 19 22:29:36 BST 2002


Sorry for a longish post (actually a repost from a message I posted to 
Linuxnewbie.org), but I think I should provide as much information as 
possible. This might not be 100% KDE-related, but I decided to give it a shot 
regardless :)

I just got brand new Logitech Cordless Desktop Optical, and I must say, that 
it rules! But, I have two (apparently related) problems with it:

1. @-symbol doesn't work. It works in terminal but not in X. Also, none of 
the other extra symbols don't work (pound-sign etc)

2. I have been trying to get all the extra buttons on the keyboard to work. 
It has ALOT of 'em! I have received instructions on how to enable them, but 
it just won't work. The instructions said that I have to copy following files 
(slightly modified, modifications will follow) to their respective locations 
(the keyboard is called "logifreedom"):

/etc/X11/xkb/symbols.dir
/etc/X11/xkb/rules/xfree86
/etc/X11/xkb/rules/xfee86.lst
/etc/X11/xkb/symbols/inet
/usr/local/bin/logitechctl

symbols.dir has the following relevant info:

--p----- a------- inet(logifreedom)

xfree86 has following relevant info:

! model = keycodes geometry
logifreedom = xfree86 pc(pc104)

! model layout = symbols
pc104 fi = fi(pc104)
logifreedom fi = fi(pc104)+inet(logifreedom)
(these was originally set to "us" but I changed it to "fi" since I have a 
finnish keyboard)

The "inet" file has the mappings of the extra keys, and they seem to be 
correct. The "logitechctl" in /usr/local/bin is a shell-script that actually 
does something with the extra keys. It looks like this (I got this script 
from a guy who uses it with Sawfish):

#!/bin/bash

CMD=$1
if [ -z "$CMD" ]; then
 CMD=help
fi


browseTo()
{
 BROWSER="mozilla"
 if [ -n "`ps -au $USER | grep $BROWSER | grep -v grep`" ]; then
 $BROWSER -remote "openURL($1)"
 else
 $BROWSER "$1"
 fi
}

if [ "$CMD" == "Start" ]; then
 browseTo
elif [ "$CMD" == "Back" ]; then
 echo -n ""
elif [ "$CMD" == "Standby" ]; then
 apm -s
elif [ "$CMD" == "Finance" ]; then
 jpilot
elif [ "$CMD" == "HotLinks" ]; then
 nautilus
elif [ "$CMD" == "Community" ]; then
 xchat
elif [ "$CMD" == "Favorites" ]; then
 gnome-terminal --use-factory --start-factory-server
elif [ "$CMD" == "VendorHome" ]; then
 kdesu /sbin/yast2 menu
elif [ "$CMD" == "Mail" ]; then
 evolution
elif [ "$CMD" == "Shop" ]; then
 vnware
elif [ "$CMD" == "Search" ]; then
 openUrl "http://www.google.com"
elif [ "$CMD" == "HomePage" ]; then
 browseTo "http://$HOSTNAME/index.html"
elif [ "$CMD" == "AudioMedia" ]; then
 xmms --show-main-window
elif [ "$CMD" == "AudioLowerVolume" ]; then
 aumix -v-5
elif [ "$CMD" == "AudioRaiseVolume" ]; then
 aumix -v+5
elif [ "$CMD" == "AudioMute" ]; then
 if [ -f ${HOME}/.logitechctl ] ; then 
aumix -v`cat ${HOME}/.logitechctl`
 rm -f ${HOME}/.logitechctl
 else
 echo >${HOME}/.logitechctl `aumix -vq|awk '{print $2}'|awk --field-separator 
"," '{print $1}'`
 aumix -v0
 fi
elif [ "$CMD" == "AudioPrev" ]; then
 xmms --rew
elif [ "$CMD" == "AudioNext" ]; then
 xmms --fwd
elif [ "$CMD" == "AudioPlayPause" ]; then
 if esdctl allinfo| grep >/dev/null xmms; then
 xmms --pause
 else
 xmms --play
 fi
elif [ "$CMD" == "AudioStop" ]; then
 xmms --stop
else
 echo $0 "[keyname]"
fi

The relevant information in XF86Config:

Section "InputDevice"
 Identifier "Generic Keyboard"
 Driver "keyboard"
 Option "CoreKeyboard"
 Option "XkbRules" "xfree86"
 Option "XkbModel" "logifreedom"
 Option "XkbLayout" "fi"
EndSection

The problem is that the extra keys don't do anything. I'm not an expert on 
these kinds of things, so any help would be appreciated! Distribution is 
Debian Unstable, X is 4.1, desktop is KDE 2.2.2. How do I enable those extra 
keys in KDE?
___________________________________________________
This message is from the kde mailing list.
Account management:  http://mail.kde.org/mailman/listinfo/kde.
Archives: http://lists.kde.org/.
More info: http://www.kde.org/faq.html.




More information about the kde mailing list