On Wed, 2008-12-03 at 09:32 -0600, Ted Zlatanov wrote:
> On Wed, 03 Dec 2008 06:13:56 -0200 TC-Rucho <[EMAIL PROTECTED]> wrote: 
> 
> T> On Tue, 2008-12-02 at 08:35 -0600, Ted Zlatanov wrote: 
> >> Have you seen contrib/g15-keysyms.lisp?  I submitted it with the M* and
> >> LCD* buttons as well.  I use the g15daemon program to feed the keysyms
> >> to Linux; are you doing it differently?
> 
> T> Yes, I checked it and was not enough to get this model working. I'm
> T> using g15daemon too, it what makes these keys available. Without using
> T> it they don't get a keycode at all (xev would not display anything,
> T> neither keycode, nor symbol, nor keysym, like if they didn't exist.)
> 
> Can you merge your config with the one I did, or do they overlap?  If
> they overlap, maybe we can have two functions in the file to DTRT.

They don't overlap, but still, it makes more sense to have 2 functions.
In my approach, I left the X86Audio* symbols for the media keys, should
I change them like I did with G keys?

PD: You should check this article
http://en.wikipedia.org/wiki/Logitech_G15

--
TC-Rucho
--- stumpwm.git/stumpwm/contrib/g15-keysyms.lisp	2008-12-03 04:45:34.000000000 -0200
+++ g15-keysyms-revised.lisp	2008-12-03 13:43:53.000000000 -0200
@@ -25,35 +25,61 @@
 ;;; Put:
 ;;;
 ;;;     (load "/path/to/g15-keysyms.lisp")
-;;;
+;;;     (g15-original) or (g15-revised) deppending of the model you have.
 ;;; In your ~/.stumpwmrc
 ;;;
 
 (in-package #:stumpwm)
 
-(define-keysym #x15000001 "G1")
-(define-keysym #x15000002 "G2")
-(define-keysym #x15000003 "G3")
-(define-keysym #x15000004 "G4")
-(define-keysym #x15000005 "G5")
-(define-keysym #x15000006 "G6")
-(define-keysym #x15000007 "G7")
-(define-keysym #x15000008 "G8")
-(define-keysym #x15000009 "G9")
-(define-keysym #x15000010 "G10")
-(define-keysym #x15000011 "G11")
-(define-keysym #x15000012 "G12")
-(define-keysym #x15000013 "G13")
-(define-keysym #x15000014 "G14")
-(define-keysym #x15000015 "G15")
-(define-keysym #x15000016 "G16")
-(define-keysym #x15000017 "G17")
-(define-keysym #x15000018 "G18")
-(define-keysym #x15000019 "M1")
-(define-keysym #x1500001a "M2")
-(define-keysym #x1500001b "M3")
-(define-keysym #x1500001d "LCD0")
-(define-keysym #x1500001e "LCD1")
-(define-keysym #x1500001f "LCD2")
-(define-keysym #x15000020 "LCD3")
-(define-keysym #x15000021 "LCD4")
+(defun g15-original ()
+  (define-keysym #x15000001 "G1")
+  (define-keysym #x15000002 "G2")
+  (define-keysym #x15000003 "G3")
+  (define-keysym #x15000004 "G4")
+  (define-keysym #x15000005 "G5")
+  (define-keysym #x15000006 "G6")
+  (define-keysym #x15000007 "G7")
+  (define-keysym #x15000008 "G8")
+  (define-keysym #x15000009 "G9")
+  (define-keysym #x15000010 "G10")
+  (define-keysym #x15000011 "G11")
+  (define-keysym #x15000012 "G12")
+  (define-keysym #x15000013 "G13")
+  (define-keysym #x15000014 "G14")
+  (define-keysym #x15000015 "G15")
+  (define-keysym #x15000016 "G16")
+  (define-keysym #x15000017 "G17")
+  (define-keysym #x15000018 "G18")
+  (define-keysym #x15000019 "M1")
+  (define-keysym #x1500001a "M2")
+  (define-keysym #x1500001b "M3")
+  (define-keysym #x1500001d "LCD0")
+  (define-keysym #x1500001e "LCD1")
+  (define-keysym #x1500001f "LCD2")
+  (define-keysym #x15000020 "LCD3")
+  (define-keysym #x15000021 "LCD4"))
+
+(defun g15-revised () ;; the orange version
+  (let ((gkeycodes '(177 152 190 208 129 178)) ;; These are the keycodes G keys in order
+	(mediakeycodes '((144 "Prev") (153 "Next") (160 "Mute") (162 "Play")
+			 (164 "Stop") (174 "LowerVolume") (176 "RaiseVolume"))))
+    (dotimes (i (length gkeycodes))
+      (run-shell-command
+       (concatenate 'string
+		    "xmodmap -e 'keycode "
+		    (write-to-string (nth i gkeycodes))
+		    " = XF86Launch"
+		    (write-to-string (1+ i))
+		    "'"))
+      (define-keysym (+ (keysym-name->keysym "XF86Launch1") i)
+	  (concatenate 'string
+		       "G"
+		       (write-to-string (1+ i)))))
+    (dotimes (i (length mediakeycodes))
+      (run-shell-command
+       (concatenate 'string
+		    "xmodmap -e 'keycode "
+		    (write-to-string (first (nth i mediakeycodes)))
+		    " = XF86Audio"
+		    (second (nth i mediakeycodes))
+		    "'")))))

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Stumpwm-devel mailing list
Stumpwm-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/stumpwm-devel

Reply via email to