Logitech VX Revolution unter openSuSE 10.3 (KDE)
===========================================
"tote" Tasten (evdev-Treiber laden)
Als erstes ist der richtige X-Treiber für die Maus zu laden.
Dafür muss in der Datei /etc/X11/xorg.conf folgender Eintrag
hinzugefügt werden (wobei das "x" durch eine freie Zahl ersetzt werden sollte):
|
Quellcode
|
1
2
3
4
5
6
7
|
Section “InputDevice”
Identifier “Mouse[x]”
Driver “evdev”
Option “Protocol” “Auto”
Option “Name” “Logitech USB Receiver”
Option “Phys” “usb-*/input0"
EndSection
|
und im Abschnitt "Serverlayout" der Eintrag entsprechend ergänzt werden:
|
Quellcode
|
1
2
3
4
5
|
Section "ServerLayout"
...
InputDevice "Mouse[x]" "SendCoreEvents"
...
EndSection
|
Xserver neustarten (1x abmelden), und in der Konsole "xev" aufrufen. Maus in das erscheinende Fenster führen und dann die "toten" Tasten ausprobieren
(Zoom-Wippe, Kippen des Rades) - ohne die maus dabei zu bewegen (evtl. in dieLuft heben) - dies sollte im Konsolenfenster zu events führen.
Das horizontale Scrollen durch Kippen des Rades funktioniert nun, allerdings
(bei mir) seitenverkehrt...
======================================
Zoom- und Daumen-Tasten nutzbar machen
Hierfür benötigt ihr die Software "xvkbd", welche bei mir schon installiert
war, sowie "xbindkeys", welches mit Hilfe einer Suche (nach xbindkeys) unter
http://software.opensuse.org/search?base…t=openSUSE:10.3 zu finden ist.
Der 1-click-install hat bei mir leider nicht funktioniert, also das passende
Paket für mein System "von Hand" installiert (runtergeladen, angeklickt, "mit
yast installieren")...
Nun muss im Home-Verzeichnis die Datei ".xbindkeysrc" angelegt werden und mit
folgendem Inhalt "befüllt" werden:
|
Quellcode
|
1
2
3
4
5
6
7
8
|
"/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
m:0x0 + b:8
"/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
m:0x0 + b:9
"/usr/bin/xvkbd -xsendevent -text "\[Control]\[+]""
m:0x0 + b:13
"/usr/bin/xvkbd -xsendevent -text "\[Control]\[-]""
m:0x0 + b:14
|
Zum Testen in der Konsole einmal "xbindkeys" ausführen, dann sollten die Tasten im Firefox richtig funktionieren, in den KDE-Progammen sind nur die Daumentasten richtig eingestellt.
Über das Menü "Einstellungen"
"Kurzbefehle festlegen" kann man aber in
(fast?) jedem KDE-Programm "vergrößern" (strg++) und "verkleinern" (strg+-) selbst festlegen.
Nun muss noch dafür gesorgt werden, dass xbindkeys auch bei jedem Start von KDE wieder geladen wird. Dies erledigen wir mit dem Zweizeiler:
|
Quellcode
|
1
2
|
echo "#!/bin/sh xbindkeys" > ~/.kde/Autostart/startXbindkeys.sh
chmod u+x ~/.kde/Autostart/startXbindkeys.sh
|
================================
Suchtaste einrichten
Erstelle (falls nicht vorhanden), die Datei .Xmodmap in deinem Home-Verzeichnis
und füge folgende Zeile hinzu:
|
Quellcode
|
1
|
keycode 122 = XF86Search
|
Nach einer Neauanmeldung bringt die Suchen-Taste den "Datei suchen"-Dialog von
KDE auf den Schirm. Um dies zu ändern, rufe man das "Kontrollzentrum" auf.
Unter "Regionaleinstellungen & Zugangshilfen"
"Tastenkürzel" findet man
die entsprechende Einstellung unter "Preset Actions"
"Search", auf dem
letzten Karteireiter kann man das aufzurufende Programm ändern.
Mit Hilfe des KDE-Werkzeuges "Klipper" kann man sich recht einfach eine gute
Suchfunktion "zusammenbasteln". Als kleines Beispiel:
|
Quellcode
|
1
2
3
4
5
|
#!/bin/bash
# Letzten markierten Text von Klipper abfragen
searchString=$(dcop klipper klipper getClipboardHistoryItem 0)
# Mit Firefox bei Google nachschlagen
firefox -new-tab "http://www.google.de/search?hl=de&q=$searchString"
|
Diese 5 Zeilen in eine Datei kopiert, z.B. "~/bin/search.sh", selbige
ausführbar machen "chmod u+x ~/bin/search.sh" und in oben genanntem KDE-Dialog
eingetragen, und es genügt, einen Text zu markieren und die "Suchen"-Taste zu
drücken, um in Google danach zu suchen.
===========================================================================
Hier noch eine etwas erweiterte Version des Skriptes, mit Auswahlmenü für den
Suchdienst:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
#!/bin/bash
#Browser, der zum suchen benutzt werden soll (firefox / konqueror / opera)
sBrowser="firefox"
#Ergebnis in neuem tab öffnen (y / n)
sNewTab="y"
#Search Engine (google / wikipedia / cc (CreativeCommons) / lastfm / kfind)
#Für ein Auswhalmenü bei jeder Suche "menu"
sEngine="menu"
#Sprache (de/en/fr/es...)
sLang="de"
#-----------------------------------------------------------------------------
searchString=$(dcop klipper klipper getClipboardHistoryItem 0)
toOpen=1
if [ $sEngine == "menu" ]; then
case $sLang in
de)
sEngine=`kdialog --title "Suche" -menu \
"Wo soll nach "$searchString" gesucht werden?" \
google Google wikipedia Wikipedia cc "Creative Commons" \
lastfm lastfm.de kfind Festplatte`;;
*)
sEngine=`kdialog --title "Search" -menu \
"Where do you want to search for "$searchString"?" \
google Google wikipedia Wikipedia cc "Creative Commons" \
lastfm lastfm.de kfind "local HDD"`;;
esac
fi
case $sEngine in
google)
searchString="http://www.google.com/search?hl=$sLang&q=$searchString";;
wikipedia)
searchString="http://$sLang.wikipedia.org/wiki/$searchString";;
cc)
searchString="http://search.creativecommons.org/?q=$searchString";;
lastfm)
searchString="http://www.lastfm.de/music/$searchString";;
kfind)
kfind; exit 0;;
*)
echo "Abbruch durch Benutzer..."
exit 1;;
esac
case $sBrowser in
firefox)
if [ $sNewTab == "y" ]; then
firefox -new-tab "$searchString" &
else
firefox "$searchString" &
fi;;
konqueror)
if [ $sNewTab == "y" ]; then
dcop `dcop | grep 'konqueror-' | head -n 1` konqueror-mainwindow#1 \
newTab "$searchString"
toOpen=$?
else
konqueror "$searchString" &
toOpen=0
fi
if [ $toOpen != 0 ]; then
konqueror "$searchString" &
fi
#TODO:
#Konqueror in den Vordergrund holen
#"dreckiger" Workaround:
dcop `dcop | grep 'konqueror-' | head -n 1` konqueror-mainwindow#1 \
setShown false
dcop `dcop | grep 'konqueror-' | head -n 1` konqueror-mainwindow#1 \
setShown true
;;
opera)
if [ $sNewTab == "y" ]; then
opera -newpage "$searchString" &
else
opera "$searchString" &
fi;;
*)
$sBrowser "$searchString" & ;;
esac
|